云服务器内容精选

  • 创建 MySQL 兼容模式数据库 当源数据库为 MySQL 或 GoldenDB,迁移到 GaussDB 时,请参照以下步骤创建 MySQL 兼容模式数据库: 以具有创建数据库权限的用户登录 GaussDB 数据库。 执行以下命令,创建兼容 MySQL 模式 GaussDB 数据库。 集中式版B兼容: create database databasename dbcompatibility = 'B'; 集中式版M兼容: create database databasename dbcompatibility = 'M'; 分布式版: create database databasename dbcompatibility = 'MySQL'; 执行以下命令,查看是否创建成功。 select * from pg_database where datname = 'databasename'; 集中式版B兼容:若datcompatibility兼容性一列为B,则MySQL兼容数据库创建成功。 集中式版M兼容:若datcompatibility兼容性一列为M,则M兼容数据库创建成功。 分布式版:若datcompatibility兼容性一列为MySQL,则MySQL兼容数据库创建成功。 源库为 GoldenDB 迁移 GaussDB 集中式版时,暂时仅支持迁移到 B 兼容模式。
  • 创建 Oracle 兼容模式数据库 UGO 对于 Oracle、PostgreSQL 和 SQL Server 迁移到 GaussDB 的自动转换方案均基于 GaussDB 的 Oracle兼容模式设计,在进行这些链路的迁移时,请参照以下步骤创建 Oracle 兼容模式数据库: 以具有创建数据库权限的用户登录 GaussDB 数据库。 执行以下命令,创建兼容 Oracle 模式 GaussDB 数据库。 集中式版: create database databasename dbcompatibility = 'A'; 分布式版: create database databasename dbcompatibility = 'ORA'; 执行以下命令,查看是否创建成功。 select * from pg_database where datname = 'databasename'; 集中式版:若datcompatibility兼容性一列为A,则Oracle兼容数据库创建成功。 分布式版:若datcompatibility兼容性一列为ORA,则Oracle兼容数据库创建成功。 UGO 不支持 PostgreSQL 迁移至 GaussDB PG兼容模式。
  • 如何使用GeminiDB Redis提供的多个节点IP地址 GeminiDB Redis提供多个IP地址供客户连接,连接任何一个IP地址都可以访问整个集群,其目的是为了提供负载均衡和容灾能力。 您可以通过以下三种方法使用多个IP。 业务侧实现连接池,实现负载均衡和故障检测处理。 联系客服,为您配置ELB(Elastic Load Balance,弹性负载均衡)服务,提供唯一IP供客户使用。 对多个proxy IP配置DNS 域名 ,详情请参见通过负载均衡地址连接实例(推荐)章节中“通过内网域名连接实例”的方法。 父主题: 数据库连接
  • GaussDB跨地域内网能访问吗 跨地域内网默认不能访问,不同区域的云服务之间内网互不相通。您可以通过公网访问,或者通过云连接/VPN打通网络实现内网访问。 弹性公网IP:不能通过内网IP地址访问GaussDB实例时,可以使用公网访问。具体请参见通过gsql连接实例。 云连接:对于不同区域的VPC,不区分是否同一账号,都可以互连,跨区域连接实现全球云上网络。具体请参见跨区域VPC互连。 虚拟专用网络 VPN:基于Internet使用加密隧道将不同区域的VPC连接起来。具备成本低、配置简单、即开即用等优点。但它的网络质量依赖Internet。具体请参见通过VPN连接VPC。 父主题: 数据库连接
  • 关于max_connections max_connections:允许同时连接的客户端总数。如果设定值为default,表示该参数和数据库实例的内存(单位:GB)相关,计算公式如下: max_connections上限估计数值 = 节点可用内存 / 单个连接预估占用内存。 节点可用内存=总内存 - Buffer Pool占用内存 - 1GB(mysqld进程、操作系统、监控程序等)。 单个连接预估占用内存(single_thread_memory) = thread_stack(256KB) + binlog_cache_size(32KB) + join_buffer_size(256KB) + sort_buffer_size(256KB) + read_buffer_size(128KB) + read_rnd_buffer_size(256KB)= 大约1MB。
  • 如何查看TaurusDB标准版数据库的连接情况 您可以通过以下任意一种方式查看TaurusDB标准版数据库的连接情况: 在TaurusDB标准版实例上以管理员账户root执行以下命令,查看当前实例上正在运行的线程。 show full processlist; Id:线程ID标识,可通过kill id终止语句。 User:当前连接用户。 Host:显示这个连接从哪个IP的哪个端口上发出。 db:数据库名。 Command:连接状态,一般是sleep(休眠),query(查询),connect(连接)。 Time:连接持续时间,单位是秒。 State:显示当前SQL语句的状态。 Info:显示这个SQL语句。 Memory_used:当前连接的内存使用量。 Memory_used_by_query:当前Query的内存使用量。 CPU_time:显示当前连接已经建立的时间(针对最新小版本,5.6版本此列信息有实际的取值,5.7和8.0版本此列信息未采集)。 Trx_executed_time:显示当前事务的执行时间。 在实例管理页面单击“查看监控指标”,进入指标信息页面。 查看“数据库总连接数”指标,一般情况下,主备节点会占用2个连接,除此之外的连接为当前实例有用户在连接使用。 父主题: 数据库连接
  • 问题分析 主要从八个方面考虑: 排除数据库实例异常 例如:数据库系统故障,实例状态异常,实例或表被锁定。 (常见)使用正确的客户端连接方式 内网连接需要TaurusDB标准版与E CS 实例必须在同一区域、VPC内。 公网连接需要购买或使用已有EIP,并对实例绑定该EIP 。 使用正确的SSL方式安全连接 界面SSL开关开启和关闭,分别对应不用的连接命令。例如: 开关开启:mysql -h 172.16.0.31 -P 3306 -u root -p --ssl-ca=/tmp/ca.pem 开关关闭:mysql -h 172.16.0.31 -P 3306 -u root -p 排除连接命令错误 例如:连接地址错误、端口参数配置错误、用户名和密码错误、SSL方式下命令错误。 (常见)排除网络不通 内网访问 确认ECS与TaurusDB标准版是否在同一个区域,VPC。 检查安全组规则。 安全组外访问安全组内的TaurusDB标准版实例时,需要为安全组添加相应的入方向规则。 在ECS上测试是否可以正常连接到TaurusDB标准版实例地址的端口。 公网访问 检查安全组规则。 安全组外访问安全组内的TaurusDB标准版实例时,需要为安全组添加相应的入方向规则。 检查网络ACL规则。 相同区域主机进行ping测试。 (常见)排除实例的连接数满的情况 实例连接数过多,可能会导致业务侧无法正常连接。 (常见)排除实例的磁盘满的情况 当实例处于“磁盘空间满”状态时,影响数据的正常读写操作。 连接失败的常见报错 包含连接失败的常见报错,以及相应的解决方法。
  • 问题分析 主要从八个方面考虑: 排除数据库实例异常 例如:关系型数据库系统故障,实例状态异常,实例或表被锁定。 (常见)使用正确的客户端连接方式 内网连接需要RDS与ECS实例必须在同一区域、VPC内。 公网连接需要购买或使用已有EIP,并对RDS实例绑定该EIP 。 使用正确的SSL方式安全连接 界面SSL开关开启和关闭,分别对应不用的连接命令。例如: 开关开启:mysql -h 172.16.0.31 -P 3306 -u root -p --ssl-ca=/tmp/ca.pem 开关关闭:mysql -h 172.16.0.31 -P 3306 -u root -p 排除连接命令错误 例如:连接地址错误、端口参数配置错误、用户名和密码错误、SSL方式下命令错误。 (常见)排除网络不通 内网访问 确认ECS与RDS是否在同一个区域,VPC。 检查安全组规则。 安全组外访问安全组内的RDS实例时,需要为安全组添加相应的入方向规则。 在ECS上测试是否可以正常连接到RDS实例地址的端口。 公网访问 检查安全组规则。 安全组外访问安全组内的RDS实例时,需要为安全组添加相应的入方向规则。 检查网络ACL规则。 相同区域主机进行ping测试。 (常见)排除实例的连接数满的情况 实例连接数过多,可能会导致业务侧无法正常连接。 (常见)排除实例的磁盘满的情况 当实例处于“磁盘空间满”状态时,影响数据的正常读写操作。 连接失败的常见报错 包含连接失败的常见报错,以及相应的解决方法。
  • 未开通公网访问的实例 在虚拟私有云中开通虚拟专用网络(Virtual Private Network,简称VPN),通过虚拟专用网络连接云数据库RDS。 将云数据库RDS与弹性云服务器创建在同一个虚拟专用网络下,通过弹性云服务器来访问云数据库RDS。 具体请参见: 通过内网连接RDS for MySQ L实例 通过内网连接RDS for MariaDB实例 通过内网连接RDS for PostgreSQL实例 通过内网连接RDS for SQL Server实例
  • 补充解释 PQbackendPID函数返回值在GaussDB中表示后台线程的槽位ID (SlotID),而并非后台线程的BackendPid。由于存在上述差异,不建议按照PostgreSQL同名函数的语义执行。若希望获取该连接的后台PID,可以通过执行系统函数pg_backend_pid获取。同时,依赖libpq的其他驱动程序的同名接口(如Python连接驱动psycopg2的get_backend_pid函数)也遵循上述规则。
  • 注意事项 状态可以是多个值之一。但是,在异步连接过程之外只能看到其中两个:CONNECTION_OK和CONNECTION_BAD。与数据库的良好连接状态为CONNECTION_OK,与数据库连接失败状态为CONNECTION_BAD。通常,“正常”状态将一直保持到PQfinish,但通信失败可能会导致状态过早变为CONNECTION_BAD。在这种情况下,应用程序可以尝试通过调用进行恢复PQreset。
  • 返回值 ConnStatusType:连接状态的枚举,包括: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 CONNECTION_STARTED 等待进行连接。 CONNECTION_MADE 连接成功;等待发送。 CONNECTION_AWAITING_RESPONSE 等待来自服务器的响应。 CONNECTION_AUTH_OK 已收到认证;等待后端启动结束。 CONNECTION_SSL_STARTUP 协商SSL加密。 CONNECTION_SETENV 协商环境驱动的参数设置。 CONNECTION_OK 连接正常。 CONNECTION_BAD 连接故障。
  • 参数 表1 PQsetdbLogin参数 关键字 参数说明 pghost 要连接的主机名,详见连接参数说明描述的host字段。 pgport 主机服务器的端口号,详见连接参数说明描述的port字段。 pgoptions 添加命令行选项以在运行时发送到服务器,详见连接参数说明描述的options字段。 pgtty 忽略(该选项声明服务器日志的输出方向)。 dbName 要连接的数据库名,详见连接参数说明描述的dbname字段。 login 要连接的用户名,详见连接参数说明描述的user字段。 pwd 如果服务器要求密码认证,所用的密码,详见连接参数说明描述的password字段。
  • 注意事项 状态可以是多个值之一。但是,在异步连接过程之外只能看到其中两个:CONNECTION_OK和CONNECTION_BAD。与数据库的良好连接状态为CONNECTION_OK,与数据库连接失败状态为CONNECTION_BAD。通常,“正常”状态将一直保持到PQfinish,但通信失败可能会导致状态过早变为CONNECTION_BAD。在这种情况下,应用程序可以尝试通过调用进行恢复PQreset。
  • 返回值 ConnStatusType:连接状态的枚举,包括: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 CONNECTION_STARTED 等待进行连接。 CONNECTION_MADE 连接成功;等待发送。 CONNECTION_AWAITING_RESPONSE 等待来自服务器的响应。 CONNECTION_AUTH_OK 已收到认证;等待后端启动结束。 CONNECTION_SSL_STARTUP 协商SSL加密。 CONNECTION_SETENV 协商环境驱动的参数设置。 CONNECTION_OK 连接正常。 CONNECTION_BAD 连接故障。