云服务器内容精选
-
返回值 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 链接故障。
-
注意事项 状态可以是多个值之一。但是,在异步连接过程之外只能看到其中两个:CONNECTION_OK和CONNECTION_BAD。与数据库的良好连接状态为CONNECTION_OK。状态表示连接尝试失败CONNECTION_BAD。通常,“正常”状态将一直保持到PQfinish,但通信失败可能会导致状态过早变为CONNECTION_BAD。在这种情况下,应用程序可以尝试通过调用进行恢复PQreset。
-
原型 PGconn *PQsetdbLogin(const char *pghost, const char *pgport, const char *pgoptions, const char *pgtty, const char *dbName, const char *login, const char *pwd);
-
参数 表1 PQsetdbLogin参数 关键字 参数说明 pghost 要连接的主机名,详见连接参数说明章节描述的host字段。 pgport 主机服务器的端口号,详见连接参数说明描述的port字段。 pgoptions 添加命令行选项以在运行时发送到服务器,详见连接参数说明描述的options字段。 pgtty 忽略(以前,这个选项声明服务器日志的输出方向)。 dbName 要连接的数据库名,详见连接参数说明描述的dbname字段。 login 要连接的用户名,详见连接参数说明章节描述的user字段。 pwd 如果服务器要求口令认证,所用的口令,详见连接参数说明描述的password字段。
-
原型 PGconn *PQsetdbLogin(const char *pghost, const char *pgport, const char *pgoptions, const char *pgtty, const char *dbName, const char *login, const char *pwd);
-
参数 表1 PQsetdbLogin参数 关键字 参数说明 pghost 要连接的主机名,详见连接参数章节描述的host字段。 pgport 主机服务器的端口号,详见连接参数描述的port字段。 pgoptions 添加命令行选项以在运行时发送到服务器,详见连接参数描述的options字段。 pgtty 忽略(以前,这个选项声明服务器日志的输出方向) dbName 要连接的数据库名,详见连接参数描述的dbname字段。 login 要连接的用户名,详见连接参数章节描述的user字段。 pwd 如果服务器要求口令认证,所用的口令,详见连接参数描述的password字段。
-
补充解释 PQbackendPID函数返回值在 GaussDB 中表示后台线程的槽位ID (SlotID),而并非后台线程的BackendPid。由于存在上述差异,不建议按照PostgreSQL同名函数的语义执行。若希望获取该连接的后台PID,可以通过执行系统函数pg_backend_pid获取。同时,依赖libpq的其他驱动程序的同名接口(如Python连接驱动psycopg2的get_backend_pid函数)也遵循上述规则。
-
参数 表1 PQsetdbLogin参数 关键字 参数说明 pghost 要连接的主机名,详见连接参数描述的host字段。 pgport 主机服务器的端口号,详见连接参数描述的port字段。 pgoptions 添加命令行选项以在运行时发送到服务器,详见连接参数描述的options字段。 pgtty 忽略(以前该选项声明服务器日志的输出方向)。 dbName 要连接的数据库名,详见连接参数描述的dbname字段。 login 要连接的用户名,详见连接参数描述的user字段。 pwd 如果服务器要求口令认证,所用的口令,详见连接参数描述的password字段。
-
补充解释 PQbackendPID函数返回值在GaussDB中表示后台线程的槽位ID (SlotID),而并非后台线程的BackendPid。由于存在上述差异,不建议按照PostgreSQL同名函数的语义执行。若希望获取该连接的后台PID,可以通过执行系统函数pg_backend_pid获取。同时,依赖libpq的其他驱动程序的同名接口(如Python连接驱动psycopg2的get_backend_pid函数)也遵循上述规则。
-
参数 表1 PQsetdbLogin参数 关键字 参数说明 pghost 要连接的主机名,详见连接参数描述的host字段。 pgport 主机服务器的端口号,详见连接参数描述的port字段。 pgoptions 添加命令行选项以在运行时发送到服务器,详见连接参数描述的options字段。 pgtty 忽略(该选项声明服务器日志的输出方向)。 dbName 要连接的数据库名,详见连接参数描述的dbname字段。 login 要连接的用户名,详见连接参数描述的user字段。 pwd 如果服务器要求口令认证,所用的口令,详见连接参数描述的password字段。
-
解决办法 系统连接超过最大连接数量。 用户可在GaussDB(DWS) 控制台设置最大连接数max_connections。 max_connections设置方法如下: 登录GaussDB(DWS) 管理控制台。 在左侧导航栏中,单击“集群管理”。 在集群列表中找到所需要的集群,单击集群名称,进入集群“基本信息”页面。 单击“参数修改”页签,修改参数“max_connections”的值,然后单击“保存”。 在“修改预览”窗口,确认修改无误后,单击“保存”。 关于查看用户会话连接数的方法如表1。 表1 查看会话连接数 描述 命令 查看指定用户的会话连接数上限。 执行如下命令查看连接到指定用户user1的会话连接数上限。其中,-1表示没有对用户user1设置连接数的限制。 1 2 3 4 5 SELECT ROLNAME,ROLCONNLIMIT FROM PG_ROLES WHERE ROLNAME='user1'; rolname | rolconnlimit ---------+-------------- user1 | -1 (1 row) 查看指定用户已使用的会话连接数。 执行如下命令查看指定用户user1已使用的会话连接数。其中,1表示user1已使用的会话连接数。 1 2 3 4 5 6 SELECT COUNT(*) FROM V$SESSION WHERE USERNAME='user1'; count ------- 1 (1 row) 查看指定数据库的会话连接数上限。 执行如下命令查看连接到指定数据库db_demo的会话连接数上限。其中,-1表示没有对数据库db_demo设置连接数的限制。 1 2 3 4 5 6 SELECT DATNAME,DATCONNLIMIT FROM PG_DATABASE WHERE DATNAME='db_demo'; datname | datconnlimit ----------+-------------- db_demo | -1 (1 row) 查看指定数据库已使用的会话连接数。 执行如下命令查看指定数据库db_demo上已使用的会话连接数。其中,1表示数据库db_demo上已使用的会话连接数。 1 2 3 4 5 SELECT COUNT(*) FROM PG_STAT_ACTIVITY WHERE DATNAME='db_demo'; count ------- 1 (1 row) 查看所有用户已使用会话连接数。 执行如下命令查看所有用户已使用的会话连接数。 1 2 3 4 5 SELECT COUNT(*) FROM PG_STAT_ACTIVITY; count ------- 10 (1 row) 用户不具备访问该数据库的权限。 使用管理员用户dbadmin连接数据库。 1 gsql -d human_resource -h 10.168.0.74 -U dbadmin -p 8000 -W password -r 赋予user1用户访问数据库的权限。 1 GRANT CONNECT ON DATABASE human_resource TO user1; 实际上,常见的许多错误操作也可能产生用户无法连接上数据库的现象。例如,用户连接的数据库不存在,用户名或密码输入错误等。这些错误操作在客户端工具会有相应的提示信息。 1 2 3 4 5 gsql -d human_resource -p 8000 gsql: FATAL: database "human_resource" does not exist gsql -d human_resource -U user1 -W password -p 8000 gsql: FATAL: Invalid username/password,login denied. 网络连接故障。 请检查客户端与数据库服务器间的网络连接。如果发现从客户端无法PING到数据库服务器端,则说明网络连接出现故障。请联系技术支持工程师提供技术支持。 1 2 3 4 5 6 7 8 ping -c 4 10.10.10.1 PING 10.10.10.1 (10.10.10.1) 56(84) bytes of data. From 10.10.10.1: icmp_seq=2 Destination Host Unreachable From 10.10.10.1 icmp_seq=2 Destination Host Unreachable From 10.10.10.1 icmp_seq=3 Destination Host Unreachable From 10.10.10.1 icmp_seq=4 Destination Host Unreachable --- 10.10.10.1 ping statistics --- 4 packets transmitted, 0 received, +4 errors, 100% packet loss, time 2999ms
-
原因分析 系统连接数量超过了最大连接数量,会显示如下错误信息。 1 2 gsql -d human_resource -h 10.168.0.74 -U user1 -p 8000 -W password -r gsql: FATAL: sorry, too many clients already 用户不具备访问该数据库的权限,会显示如下错误信息。 1 2 3 gsql -d human_resource -h 10.168.0.74 -U user1 -p 8000 -W password -r gsql: FATAL: permission denied for database "human_resource" DETAIL: User does not have CONNECT privilege. 网络连接故障。
-
补充解释 PQbackendPID函数返回值在GaussDB中表示后台线程的槽位ID (SlotID),而并非后台线程的BackendPid。由于存在上述差异,不建议按照PostgreSQL同名函数的语义执行。若希望获取该连接的后台PID,可以通过执行系统函数pg_backend_pid获取。同时,依赖libpq的其他驱动程序的同名接口(如Python连接驱动psycopg2的get_backend_pid函数)也遵循上述规则。
-
GaussDB跨地域内网能访问吗 跨地域内网默认不能访问,不同区域的云服务之间内网互不相通。您可以通过公网访问,或者通过云连接/VPN打通网络实现内网访问。 弹性公网IP:不能通过内网IP地址访问GaussDB实例时,可以使用公网访问。具体请参见通过gsql连接实例。 云连接:对于不同区域的VPC,不区分是否同一账号,都可以互连,跨区域连接实现全球云上网络。具体请参见跨区域VPC互连。 虚拟专用网络 VPN:基于Internet使用加密隧道将不同区域的VPC连接起来。具备成本低、配置简单、即开即用等优点。但它的网络质量依赖Internet。具体请参见通过VPN连接VPC。 父主题: 数据库连接
-
设置了安全组,还需要设置负载均衡内网访问控制吗? 用户可以通过节点和负载均衡两种方式访问GeminiDB Redis实例, 因此需要同时设置安全组和负载均衡内网访问控制,以保证实例的安全性: 安全组仅对节点生效。安全组是一个逻辑上的分组,为同一个虚拟私有云内具有相同安全保护需求,并相互信任的弹性云服务器和GeminiDB Redis实例提供访问策略。具体操作步骤请参考配置节点安全组规则。 安全组无法对负载均衡生效。在默认未配置的状态下,所有与所在VPC互通的IP地址均可通过负载均衡地址访问实例。因此,同时需要合理配置,具体配置操作请参考设置负载均衡内网访问控制。 父主题: 数据库连接
更多精彩内容
CDN加速
GaussDB
文字转换成语音
免费的服务器
如何创建网站
域名网站购买
私有云桌面
云主机哪个好
域名怎么备案
手机云电脑
SSL证书申请
云点播服务器
免费OCR是什么
电脑云桌面
域名备案怎么弄
语音转文字
文字图片识别
云桌面是什么
网址安全检测
网站建设搭建
国外CDN加速
SSL免费证书申请
短信批量发送
图片OCR识别
云数据库MySQL
个人域名购买
录音转文字
扫描图片识别文字
OCR图片识别
行驶证识别
虚拟电话号码
电话呼叫中心软件
怎么制作一个网站
Email注册网站
华为VNC
图像文字识别
企业网站制作
个人网站搭建
华为云计算
免费租用云托管
云桌面云服务器
ocr文字识别免费版
HTTPS证书申请
图片文字识别转换
国外域名注册商
使用免费虚拟主机
云电脑主机多少钱
鲲鹏云手机
短信验证码平台
OCR图片文字识别
SSL证书是什么
申请企业邮箱步骤
免费的企业用邮箱
云免流搭建教程
域名价格