x86架构下的数据库服务器,包括GBase8a集群服务器,需要关闭NUMA参数(vm.zone_reclaim_mode),避免CPU的SYS占用高。
作者: laozizhu
GBase 8a 数据库集群常用优化手段建议方法
GBase 8a数据库,提供了多种优化手段,来协助用户提供业务性能,包括规避数据库的劣势,选择合适的表分布策略,更高效的加载策略等手段。
GBase 8a数据库集群连接参数
GBase 8a数据库集群,通过几个管理节点gcluster的连接有关参数,限制外部用户的连接数量。
GBase 8a数据库集群SQL并行度参数
GBase 8a数据库,内部支持并行,可以充分利用CPU资源。在一个多用户,并发场景下,需要对并发和内部线程池做配置,当硬件资源固定时,在高性能和高并发之间取得平衡。
GBase 8a数据库集群业务SQL执行慢的可能原因
GBase 8a数据库集群,用户发现业务性能变慢,绝大部分都是环境和业务SQL原因,比如服务器硬件故障,或者业务并发太高,数据量太大,或者SQL编写的方式没有优化等。
GBase 8a数据库集群查询报错 ERROR 1055 (42000): 'testdb.t2.c' isn't in GROUP BY
GBase 8a数据库集群,在处理group的select 列时,要求其必须是group的列或者聚合运算的列,否则会报isn't in GROUP BY的错误。
GBase 8a数据库集群连接报错 too many connection
GBase 8a数据库集群,对外部连接数量做了限制,如果超过了则会报too many connection错误。外部连接,包括任何服务或节点发过来的,当然也就包括节点之间,gcluster和gnode之间的任何连接。
GBase 8a数据库集群查询报错 too many columns
GBase 8a数据库集群,单个表最多支持2000个列,包括临时表。在进行多表join时,如果select部分用到的列太多,也会造成中间表的列数超过了2000个。
GBase 8a数据库集群查询报错:gclustger DML error:kill query on XXX failed cause by create connection failed when kill query , please repeat it.
GBase 8a数据库集群,在内部处理客户kill时,如果此时无法连接某个节点,则会报这个错误kill query on XXX failed cause by create connection failed when kill query。
GBase 8a数据库集群同步报错 errno:97 errmsg:server gc lock error
GBase 8a数据库集群,在主备节点数据不一致时会启动同步进程,期间如果无法拿到锁,比如被其它进程占用,最终会报错server gc lock error。