数据仓库服务 GAUSSDB(DWS)-常见问题处理:连接性能问题
连接性能问题
- 数据库内核执行初始化语句较慢导致的性能问题。
此种情况定位较难,可以尝试使用Linux的跟踪命令:strace。
strace gsql -U MyUserName -W {password} -d postgres -h 127.0.0.1 -p 23508 -r -c '\q'
此时便会在屏幕上打印出数据库的连接过程。比如较长时间停留在下面的操作上:
sendto(3, "Q\0\0\0\25SELECT VERSION()\0", 22, MSG_NOSIGNAL, NULL, 0) = 22 poll([{fd=3, events=POLLIN|POLLERR}], 1, -1) = 1 ([{fd=3, revents=POLLIN}])
此时便可以确定是数据库执行"SELECT VERSION()"语句较慢。
在连接上数据库后,便可以通过执行“explain performance select version()”语句来确定初始化语句执行较慢的原因。更多信息请参考《开发指南》中的“SQL执行计划介绍”章节。
另外还有一种场景不太常见:由于数据库CN所在机器的磁盘满或故障,此时所查询等受影响,无法进行用户认证,导致连接过程挂起,表现为假死。解决此问题清理数据库CN的数据盘空间便可。
- TCP连接创建较慢问题。
此问题可以参考上面的初始化语句较慢排查的做法,通过strace跟踪,如果长时间停留在:
connect(3, {sa_family=AF_FILE, path="/home/test/tmp/gaussdb_llt1/.s.PGSQL.61052"}, 110) = 0
或者
connect(3, {sa_family=AF_INET, sin_port=htons(61052), sin_addr=inet_addr("127.0.0.1")}, 16) = -1 EINPROGRESS (Operation now in progress)
那么说明客户端与数据库端建立物理连接过慢,此时应当检查网络是否存在不稳定、网络吞吐量太大的问题。
- 数据仓库服务GaussDB(DWS)_SQL on Anywhere
- GAUSS(DWS)工具_gsql工具_DataStudio工具_DSC工具
- DWS安全_数据仓库服务安全_DWS数据安全管理_DWS安全保障_DWS安全策略
- 云连接快速入门_云连接CC用户指南_云连接常见问题
- 调用GaussDB(DWS) API接口_数据仓库服务调用API_如何调用API_在DWS中调用API
- 云速邮箱常见问题
- GaussDB(DWS)常用SQL_常用SQL命令_SQL语法
- 区块链常见问题
- 数据库监控DMS_数据库智能运维_了解Auto Pilot_DMS_DWS节点监控
- DWS产品介绍_DWS产品优势_DWS功能_DWS使用场景_DWS是什么