-
GaussDB数据库引擎版本号说明GaussDB采用点分式版本号。格式为:V2.0-A.BCD。其中:"V2.0":代表GaussDB数据库的第2代体系架构。 “A”:表示年度需求基线版本。 “BCD”:首位(B)代表半年度需求基线版本,第二位(C)和第三位(D)代表三方验证适配补丁。 GaussDB数据库和内核引擎版本对应关系 GaussDB版本的对应关系如表1所示。GaussDB数据库引擎版本和内核引擎版本查询方法请参考查看云数据库GaussDB数据库和内核引擎版本。查看云数据库GaussDB数据库和内核引擎版本登录管理控制台。 单击管理控制台左上角的,选择区域和项目。 在页面左上角单击,选择“数据库 > 云数据库 GaussDB”,进入云数据库 GaussDB信息页面。 在“实例管理”页面,选择指定的实例,单击实例名称,进入基本信息页面。 在实例“基本信息”页面,“配置信息”模块的“数据库引擎版本”和“内核引擎版本”处查看数据库实例和内核的版本号。
-
GaussDB创建和管理数据库 cid:link_11GaussDB提供了以下类型的系统表和系统视图 cid:link_0GaussDB的登陆退出审计功能开启和关闭需要重启集群 cid:link_12创建GaussDB数据库用户 cid:link_13创建GaussDB数据库 cid:link_1GaussDB 使用gs_loader工具导入数据 cid:link_14GaussDB智能运维实践:自动化监控与故障预警实践 cid:link_15使用DAS的导出和导入功能迁移GaussDB数据 cid:link_16GaussDB-对象权限管理 cid:link_17GaussDB的登陆退出审计功能开启和关闭需要重启集群 cid:link_2GaussDB用户/表空间/数据库管理 cid:link_18GaussDB普通表的管理 cid:link_19GaussDB范围分区表的管理 cid:link_20GaussDB索引的管理 cid:link_21GaussDB视图和雾化视图的管理 cid:link_22GaussDB序列的管理 cid:link_3GaussDB同义词管理 cid:link_23GaussDB x86环境下UGO的部署 cid:link_4GaussDB数据库状态,节点状态,实例状态说明 cid:link_24GaussDB主从切换 cid:link_25GaussDB数据库日常维护 cid:link_26GaussDB检查和收集日志 cid:link_5GaussDB检查各个节点时间一致性 cid:link_6GaussDB应用连接数查看 cid:link_7GaussDB表的维护 cid:link_27GaussDB重建索引 cid:link_8GaussDB数据库迁移方案介绍 cid:link_9GaussDB日志级别设置 cid:link_28【GaussDB】慢SQL诊断 cid:link_10【GaussDB】基于提交序列号CSN的闪回查询技术 cid:link_29备注:以上文章来自 Gauss松鼠会小助手2地址:cid:link_30
-
本次直播获奖名单公示如下(视频号抽奖及直播间未登录问卷用户无用户名):奖项名称奖品名称获奖用户开发者定制保温杯视频号抽奖/开发者定制鼠标垫(小号)视频号抽奖/开发者定制鼠标垫(小号)视频号抽奖/开发者定制鼠标垫(小号)视频号抽奖/华为云云宝手办-盲盒款视频号抽奖/华为FreeBuds SE 2无线耳机(白色)观看时长抽奖1735028****48540开发者定制连帽卫衣 优质提问har****pass开发者定制连帽卫衣 优质提问hw8****353开发者定制不锈钢水杯口令抽奖qiu****020开发者定制不锈钢水杯口令抽奖hid_o6zm****46ywqdo开发者定制不锈钢水杯口令抽奖yi****gl 感谢各位小伙伴参与本次活动,欢迎关注华为云DTSE Tech Talk 技术直播更多活动~
-
单机加载环境变量 source /opt/huawei/Bigdata/mppdb/.mppdbgs_profile一、 数据库常用命令(一) 集群类常用操作1. 查看集群状态cm_ctl query -Cv2. 查看集群状态(包括实例目录)cm_ctl query -Cvd3. 查看集群不均衡的实例cm_ctl query -Cvs4. 启动集群cm_ctl start5. 停止集群cm_ctl stopcm_ctl stop -mi6. 主备切换cm_ctl switchover -n 1 -D /srv/BigData/mppdb/data1/slave27. 均衡整个集群cm_ctl switchover -a8. 全量buildcm_ctl build -n 1 -D /srv/BigData/mppdb/data2/slave1 -b full -t 108009. 查看build进度gs_ctl querybuild -D /srv/BigData/mppdb/data2/slave110. 查看DN端口cat /srv/BigData/mppdb/data1/slave1/postgresql.conf | grep port11. 登录数据库gsql -d postgres -p 8000 -r12. gsql命令执行单个sql语句gsql -d postgres -p 8000 -r –c “”13. gsql命令执行单个sql文件gsql -d postgres -p 8000 -r -f sql文件(二) 常用系统表、视图、函数1. 查集群CN、DN信息,包括实例编号、IP、port。pgxc_node2. 查询活跃SQL语句:pg_stat_activitypgxc_stat_activityselect count(*) from pg_stat_activity where state = ‘active’ and usename != ‘Ruby’;select usename,state,count(*) from pgxc_stat_activity group by 1,2;3. 查看最大并发配置show max_active_statements;4. 查执行慢的语句和语句等待情况pg_stat_activitypgxc_stat_activitypg_thread_wait_statuspgxc_thread_wait_statuspg_locks5. 查关键系统表pg_classpg_partitionpg_namespacepg_tablespacepg_database6. 查表倾斜信息table_skewness()pg_table_size :指定的表使用的磁盘空间,不计索引(但是包含TOAST,自由空间映射和可见性映射)。pg_relation_size:接受一个表、索引、压缩表的OID或者名字,然后返回它们的字节大小pg_total_relation_size:指定名字的表所使用的全部磁盘空间,包括索引和压缩数据。表名字可以用模式名修饰pg_total_relation_size:指定的表使用的总磁盘空间,包括所有的索引和TOAST数据。pg_relation_filepath(schema.table)pg_classpg_partitionpg_namespace查各个dn上表的记录数SELECT a.count,b.node_name FROM (SELECT count(*) AS count,xc_node_id FROM table_name GROUP BY xc_node_id) a, pgxc_node b WHERE a.xc_node_id=b.node_id ORDER BY a.count desc;7. 查SQL内存使用情况pv_total_memory_detailpgxc_total_memory_detailpv_session_memory_detailpg_shared_memory_detail查占内存最大的100个contextSELECT * FROM pv_session_memory_detail ORDER BY totalsize desc LIMIT 100;查占内存最大的10个sessionSELECT sessid, sum_total, sum_free,sum_used, query_id, query_start, state, waiting, enqueue,query FROM (select sessid, sum(totalsize) as sum_total, sum(freesize) as sum_free, sum(usedsize) as sum_used from pv_session_memory_detail group by sessid ) a , pg_stat_activity b WHERE split_part(a.sessid,'.',2) = b.pid order by sum_total desc limit 10;8. 查DN主备追赶catchup状态pgxc_get_senders_catchup_time()9. 取消&终止语句pg_terminate_backend()pg_cancel_backend()10. 查资源视图pgxc_wlm_session_infogs_wlm_session_infoSELECT * FROM gs_wlm_session_info order by max_peak_memory desc limit 10;SELECT * FROM gs_wlm_session_info order by total_cpu_time desc limit 10;SELECT * FROM pgxc_wlm_session_info order by duration desc limit 10;二、 OS常用命令(一) 网络1. 查看网络丢包ifconfig命令,过滤 dropped相关信息。2. 查看端口占用netstat -anp|grep 25308(二) 磁盘1. 查看IO使用情况(沙箱外执行)iostat -xdmt 22. 查看磁盘使用情况df -h(三) 内存查看系统内存使用情况free -g(四) CPU查看各个进程的CPU和内存使用情况top(五) 其他1. 查看操作系统版本lsb_release -a2. 查看进程ps -ef|grep master13. 查看目录大小du -sh *
-
【问题版本】830.100【问题现象】执行sql报错ERROR: could not find type OID for relation xxx【原因分析】1. 用户where条件后的列名写错了。2. 用户使用了LakeFormation,存算分离,目标表是一个external的schema,元数据在构造的过程中没有完全mock出来,未找到对应的数据类型,出现报错。【排查方法】1.分析差异点:可执行语句不带最后一个and条件时可执行成功,加上and条件就报错。2.执行如下sql获取表定义:select pg_get_external_schema_table_options('ex_schema','table_name');select pg_get_external_schema_table_col('ex_schema','table_name');3.确认表结构后,对比sql发现,最后一个and条件中:b.pack_qty_desc = h1.pack_qty_desch1表有pack_qty_desc列,而b表中没有pack_qty_desc列,和用户确认,列名写错了。4.根据表定义结果修正列名后执行结果符合预期。
-
设置GaussDB实例安全组规则操作场景安全组是一个逻辑上的分组,为同一个虚拟私有云内具有相同安全保护需求,并相互信任的弹性云服务器和GaussDB实例提供访问策略。如果账号已经申请创建时支持不指定安全组的白名单,则不需要执行本章节,而且在实例详情页也不会有内网安全组信息。为了保障数据库的安全性和稳定性,在使用GaussDB实例之前,您需要设置安全组,开通需访问数据库的IP地址和端口。内网连接GaussDB实例时,设置安全组分为以下两种情况: ECS与GaussDB实例在相同安全组时,默认ECS与GaussDB实例互通,无需设置安全组规则。 ECS与GaussDB实例在不同安全组时,需要为GaussDB和ECS分别设置安全组规则。 设置GaussDB安全组规则:为GaussDB所在安全组配置相应的入方向规则。 设置ECS安全组规则:安全组默认规则为出方向上数据报文全部放行,此时,无需对ECS配置安全组规则。当在ECS所在安全组为非默认安全组且出方向规则非全放通时,需要为ECS所在安全组配置相应的出方向规则。 通过弹性公网IP连接实例时,需要为GaussDB所在安全组配置相应的入方向规则。 本节主要介绍如何为GaussDB实例设置相应的入方向规则。关于添加安全组规则的详细要求,可参考《虚拟私有云用户指南》的“添加安全组规则”章节。注意事项因为安全组的默认规则是在出方向上的数据报文全部放行,同一个安全组内的弹性云服务器和GaussDB实例可互相访问。安全组创建后,您可以在安全组中定义各种访问规则,当GaussDB实例加入该安全组后,即受到这些访问规则的保护。默认情况下,一个租户可以创建500条安全组规则。 建议一个安全组内的安全组规则不超过50条。 当需要从安全组外访问安全组内的GaussDB实例时,需要为安全组添加相应的入方向规则。 所有鲲鹏云服务器规格不支持配置不连续端口。 如果您在鲲鹏云服务器中添加安全组规则时,使用了不连续端口号,那么除了该条规则不会生效,该规则后的其他规则也不会生效。比如:您先配置了安全组规则A(不连续端口号22,24),再配置了下一条安全规则B(独立端口号9096),则安全组规则A和B均不会生效。出方向规则通常不适用于数据库实例。仅在数据库实例充当客户端时,出方向规则才适用。数据库实例位于VPC(虚拟私有云 Virtual Private Cloud)中但不可公开访问,则您还可以使用VPN连接。创建分布式版实例时,如果需要修改内网安全组,请确保入方向规则TCP协议端口包含:40000-60480,20050,5000-5001,2379-2380,6000,6500, - ( + 100)。(例如设置的数据库端口为8000,则安全组中需要包含8000-8100)。 创建集中式版实例时,如果需要修改内网安全组,请确保入方向规则TCP协议端口包含:20050,5000-5001,2379-2380,6000,6500, - ( + 100)。(例如设置的数据库端口为8000,则安全组中需要包含8000-8100)。操作步骤登录管理控制台。 单击管理控制台左上角的,选择区域和项目。 在页面左上角单击,选择“数据库 > 云数据库 GaussDB”,进入云数据库 GaussDB信息页面。 在“实例管理”页面,选择目标实例,单击实例名称,进入实例的“基本信息”页面。 设置安全组规则。 在“网络信息”模块,单击安全组名称,进入安全组页面。 点击放大 在“入方向规则”子页签下单击“添加规则”,在“添加入方向规则”弹出框中填写安全组信息,单击“确定”。 单击“+”可以依次增加多条入方向规则。
-
GaussDB- 慢SQL发现可获得性本特性自GaussDB版本开始引入。特性简介本功能是一个SQL语句执行时间预测工具,通过模板化方法,实现在不获取SQL语句执行计划的前提下,依据语句逻辑相似度与历史执行记录,预测SQL语句的执行时间。客户价值工具不需要用户提供SQL执行计划,对数据库性能不会有任何影响。不同于业内其他算法只局限于OLAP或者OLTP,本工具场景更加广泛。特性描述SQLdiag着眼于数据库的历史SQL语句,通过对历史SQL语句的执行表现进行总结归纳,将之再用于推断新的未知业务上。由于短时间内数据库SQL语句执行时长不会有太大的差距,SQLdiag可以从历史数据中检测出与已执行SQL语句相似的语句结果集,并基于SQL向量化技术和模板化方法预测SQL语句执行时长。特性增强无特性约束需要保证用户提供的历史日志及待预测负载的格式符合要求,可以使用数据库GUC参数开启收集,也可以通过监控工具采集。为保证预测准确率,用户提供的历史语句日志应尽可能全面并具有代表性。按照要求配置python环境。依赖关系无
-
GaussDB数据库解析数据库用于管理各类数据对象,与其他数据库隔离数据库 数据库用于管理各类数据对象,与其他数据库隔离。创建数据对象时可以指定对应的表空间,如果不指定相应的表空间,相关的对象会默认保存在PG_DEFAULT空间中。数据库管理的对象可分布在多个表空间上。表空间 在GaussDB中,表空间是一个目录,集群中可以存在多个表空间,里面存储的是它所包含的数据库的各种物理文件。由于表空间是一个目录,仅起到了物理隔离的作用,其管理功能依赖于文件系统。模式 GaussDB的模式是对数据库做一个逻辑分割。所有的数据库对象都建立在模式下面。GaussDB的模式和用户是弱绑定,弱绑定是指虽然创建用户的同时会自动创建一个同名模式,但用户也可以单独创建模式,并且为用户指定其他的模式。用户和角色 GaussDB使用用户和角色控制对数据库的访问。根据角色自身的设置不同,一个角色可以看做是一个数据库用户,或者一组数据库用户,一个用户唯一对应一个角色。在GaussDB中角色和用户之间的区别只在于角色默认是没有LOGIN权限的。在GaussDB中可以使用角色叠加来更灵活地进行管理。事务管理 在事务管理上,GaussDB采取了MVCC(多版本并发控制)结合两阶段锁的方式,其特点是读写之间不阻塞。GaussDB的astore存储引擎没有将历史版本数据统一存放,而是和当前元组的版本放在了一起。GaussDB的astore存储引擎没有回滚段的概念,但是为了定期清除历史版本数据,GaussDB的astore存储引擎引入了VACUUM线程。一般情况下,除非用户要做性能调优,否则不用特别关注VACUUM线程。GaussDB的ustore存储引擎是将历史版本数据统一存放到undo回滚段里,由undo回收线程统一清理历史版本数据。此外,GaussDB对于单语句查询(没有使用BEGIN等语句显示启动事务块)是自动提交事务的。
-
GaussDB创建和管理数据库GaussDB创建和管理数据库前提条件 用户必须拥有数据库创建的权限或者是数据库的系统管理员权限才能创建数据库,授予创建数据库的权限请参见用户及权限。背景信息 初始时,GaussDB包含两个模板数据库template0、template1,以及一个默认的用户数据库postgres。CREATE DATABASE实际上通过拷贝模板数据库来创建新数据库。只支持拷贝template0。请避免使用客户端或其他方式连接及操作两个模板数据库。说明: 模板数据库中没有用户表,可通过系统表PG_DATABASE查看模板数据库属性。 模板template0不允许用户连接,模板template1只允许数据库初始用户和系统管理员连接,普通用户无法连接。数据库系统中会有多个数据库,但是同一时刻客户端程序只能连接一个数据库。当前,不支持在不同的数据库之间进行相互查询(跨库查询或跨库事务)。当数据库集群中存在多个数据库时,可以通过客户端工具的-d参数指定目标数据库进行登录,也可以在客户端程序登录数据库以后通过\c命令进行数据库切换。注意事项如果数据库的编码为SQL_ASCII(可以通过“show server_encoding”命令查看当前数据库存储编码),则在创建数据库对象时,如果对象名中含有多字节字符(例如中文),超过数据库对象名长度限制(63字节)的时候,数据库会将最后一个字节(而不是字符)截断,可能造成出现半个字符的情况。针对这种情况,请遵循以下条件:保证数据对象的名称不超过限定长度。使用例如utf-8编码集作为数据库的默认存储编码集(server_encoding)。不要使用多字节字符作为对象名。因为误操作导致在多字节字符的中间截断,从而导致无法删除数据库对象,如果出现这种现象,请使用截断前的数据库对象名进行删除操作,或将该对象从各个数据库节点的相应系统表中依次删除。操作步骤使用如下命令创建一个新的数据库db_tpcds。gaussdb=# CREATE DATABASE db_tpcds; CREATE DATABASE查看数据库。 使用\l元命令查看数据库系统的数据库列表。gaussdb=# \l使用如下命令通过系统表pg_database查询数据库列表。gaussdb=# SELECT datname FROM pg_database;修改数据库。 用户可以使用如下命令修改数据库属性(比如:owner、名称和默认的配置属性)。使用如下命令为数据库重新命名。gaussdb=# ALTER DATABASE db_tpcds RENAME TO human_tpcds; ALTER DATABASE
-
GaussDB技术解析之删除表中数据在使用表的过程中,可能会需要删除已过期的数据,删除数据必须从表中整行的删除。SQL不能直接访问独立的行,只能通过声明被删除行匹配的条件进行。如果表中有一个主键,用户可以指定准确的行。用户可以删除匹配条件的一组行或者一次删除表中的所有行。使用DELETE命令删除行,如果删除表customer_t1中所有c_customer_sk为3869的记录。gaussdb=# DELETE FROM customer_t1 WHERE c_customer_sk = 3869;如果执行如下命令之一,会删除表中所有的行。gaussdb=# DELETE FROM customer_t1;或:gaussdb=# TRUNCATE TABLE customer_t1;说明: 全表删除的场景下,建议使用truncate,不建议使用delete。删除创建的表。gaussdb=# DROP TABLE customer_t1;
-
在使用表的过程中,可能会需要删除已过期的数据,删除数据必须从表中整行的删除。SQL不能直接访问独立的行,只能通过声明被删除行匹配的条件进行。如果表中有一个主键,用户可以指定准确的行。用户可以删除匹配条件的一组行或者一次删除表中的所有行。使用DELETE命令删除行,如果删除表customer_t1中所有c_customer_sk为3869的记录。gaussdb=# DELETE FROM customer_t1 WHERE c_customer_sk = 3869;如果执行如下命令之一,会删除表中所有的行。gaussdb=# DELETE FROM customer_t1;或:gaussdb=# TRUNCATE TABLE customer_t1;说明: 全表删除的场景下,建议使用truncate,不建议使用delete。删除创建的表。gaussdb=# DROP TABLE customer_t1;
-
GaussDB创建和管理数据库前提条件 用户必须拥有数据库创建的权限或者是数据库的系统管理员权限才能创建数据库,授予创建数据库的权限请参见用户及权限。背景信息 初始时,GaussDB包含两个模板数据库template0、template1,以及一个默认的用户数据库postgres。CREATE DATABASE实际上通过拷贝模板数据库来创建新数据库。只支持拷贝template0。请避免使用客户端或其他方式连接及操作两个模板数据库。说明: 模板数据库中没有用户表,可通过系统表PG_DATABASE查看模板数据库属性。 模板template0不允许用户连接,模板template1只允许数据库初始用户和系统管理员连接,普通用户无法连接。数据库系统中会有多个数据库,但是同一时刻客户端程序只能连接一个数据库。当前,不支持在不同的数据库之间进行相互查询(跨库查询或跨库事务)。当数据库集群中存在多个数据库时,可以通过客户端工具的-d参数指定目标数据库进行登录,也可以在客户端程序登录数据库以后通过\c命令进行数据库切换。注意事项如果数据库的编码为SQL_ASCII(可以通过“show server_encoding”命令查看当前数据库存储编码),则在创建数据库对象时,如果对象名中含有多字节字符(例如中文),超过数据库对象名长度限制(63字节)的时候,数据库会将最后一个字节(而不是字符)截断,可能造成出现半个字符的情况。针对这种情况,请遵循以下条件:保证数据对象的名称不超过限定长度。使用例如utf-8编码集作为数据库的默认存储编码集(server_encoding)。不要使用多字节字符作为对象名。因为误操作导致在多字节字符的中间截断,从而导致无法删除数据库对象,如果出现这种现象,请使用截断前的数据库对象名进行删除操作,或将该对象从各个数据库节点的相应系统表中依次删除。操作步骤使用如下命令创建一个新的数据库db_tpcds。gaussdb=# CREATE DATABASE db_tpcds; CREATE DATABASE查看数据库。 使用\l元命令查看数据库系统的数据库列表。gaussdb=# \l使用如下命令通过系统表pg_database查询数据库列表。gaussdb=# SELECT datname FROM pg_database;修改数据库。 用户可以使用如下命令修改数据库属性(比如:owner、名称和默认的配置属性)。使用如下命令为数据库重新命名。gaussdb=# ALTER DATABASE db_tpcds RENAME TO human_tpcds; ALTER DATABASE
-
GaussDB提供了以下类型的系统表和系统视图查看系统表除了创建的表以外,数据库还包含很多系统表。这些系统表包含集群安装信息以及GaussDB上运行的各种查询和进程的信息。可以通过查询系统表来获取有关数据库的信息。“系统表和系统视图”中每个表的说明指出了表是对所有用户可见还是只对初始化用户可见。以初始化用户身份登录才能查询只对初始化用户可见的表。GaussDB提供了以下类型的系统表和系统视图:兼容PostgreSQL的系统表和系统视图 这类系统表和系统视图具有PG前缀。GaussDB内核新增的系统表和系统视图 这类系统表和系统视图具有GS前缀。实现Oracle兼容的系统表和系统视图 这类系统表和视图具有ALL、DBA、USER或PV前缀。查看数据库中包含的表在public Schema下新建以下表格。gaussdb=# CREATE TABLE public.search_table_t1(a int) distribute by hash(a); CREATE TABLE gaussdb=# CREATE TABLE public.search_table_t2(b int) distribute by hash(b); CREATE TABLE gaussdb=# CREATE TABLE public.search_table_t3(c int) distribute by hash(c); CREATE TABLE gaussdb=# CREATE TABLE public.search_table_t4(d int) distribute by hash(d); CREATE TABLE gaussdb=# CREATE TABLE public.search_table_t5(e int) distribute by hash(e); CREATE TABLE在PG_TABLES系统表中查看public Schema中包含的前缀为search_table的表。 gaussdb=# SELECT distinct(tablename) FROM pg_tables WHERE SCHEMANAME = 'public' AND TABLENAME LIKE 'search_table%';结果如下: tablename ----------------- search_table_t1 search_table_t2 search_table_t3 search_table_t4 search_table_t5 (5 rows)查看数据库用户通过PG_USER可以查看数据库中所有用户的列表,还可以查看用户ID(USESYSID)和用户权限。SELECT * FROM pg_user; usename | usesysid | usecreatedb | usesuper | usecatupd | userepl | passwd | valbegin | valuntil | respool | parent | spacelimit | useconfig | nodegroup | tempspacelimit | spillspacelimit ---------+----------+-------------+----------+-----------+---------+----------+----------+----------+--------------+------ -------+------------+-----------+-----------+----------------+----------------- roach | 10 | t | t | t | t | ******** | | | default_pool | 0 | | | | | (1 row)查看和停止正在运行的查询语句 通过视图PG_STAT_ACTIVITY可以查看正在运行的查询语句。方法如下:设置参数track_activities为on。SET track_activities = on;当此参数为on时,数据库系统才会获取当前活动查询的运行信息。查看正在运行的查询语句。以查看正在运行的查询语句所连接的数据库名、执行查询的用户、查询状态及查询对应的PID为例。SELECT datname, usename, state,pid FROM pg_stat_activity; datname | usename | state | pid ----------+---------+--------+----------------- testdb | Ruby | active | 140298793514752 testdb | Ruby | active | 140298718004992 testdb | Ruby | idle | 140298650908416 testdb | Ruby | idle | 140298625742592 testdb | omm | active | 140298575406848 (5 rows)如果state字段显示为idle,则表明此连接处于空闲,等待用户输入命令。如果仅需要查看非空闲的查询语句,则使用如下命令查看:SELECT datname, usename, state, pid FROM pg_stat_activity WHERE state != 'idle';若需要取消运行时间过长的查询,通过PG_TERMINATE_BACKEND函数,根据线程ID(即2中查询结果的pid字段)结束会话,请执行如下命令。SELECT PG_TERMINATE_BACKEND(140298793514752);显示如下信息,表示结束会话成功。PG_TERMINATE_BACKEND ---------------------- t (1 row)显示如下信息,表示用户执行了结束当前会话的操作。FATAL: terminating connection due to administrator command FATAL: terminating connection due to administrator command说明:gsql客户端使用PG_TERMINATE_BACKEND函数结束当前正在执行会话的后台线程时,如果当前的用户是初始用户,客户端不会退出而是自动重连,即返回“The connection to the server was lost. Attempting reset: Succeeded.”。否则客户端会重连失败,即返回“The connection to the server was lost. Attempting reset: Failed.”。这是因为只有初始用户可以免密登录,普通用户不能免密登录,从而重连失败。 对于使用PG_TERMINATE_BACKEND函数结束非活跃的后台线程时。如果打开了线程池,此时空闲的会话没有线程ID,无法结束会话。非线程池模式下,结束的会话不会自动重连。
-
GaussDB技术锦集重启GaussDB节点操作场景GaussDB实例节点状态为非正常状态时,可通过执行重启节点操作尝试将节点状态恢复正常。当实例节点状态为正常状态时,也可执行重启节点操作。重启过程中,节点不可用。注意事项当数据库在以下操作过程中,可以执行重启节点操作: 备份恢复失败 按需转包周期中 流容灾主实例容灾中 流容灾主实例日志保持中 流容灾灾备实例演练中 流容灾灾备实例容灾中 流灾备实例升主完成 重启后节点会自动释放内存中的缓存,请在业务低谷期进行重启,避免对高峰期业务造成影响。 重启节点操作目前只支持集中式版实例。 重启主节点后,会发生主备节点倒换。操作步骤登录管理控制台。 单击管理控制台左上角的,选择区域和项目。 在页面左上角单击,选择“数据库 > 云数据库 GaussDB”,进入云数据库 GaussDB信息页面。 单击目标实例名称,进入实例的“基本信息”页面。 在“节点列表”模块,单击“重启节点”,确认重启节点信息后,输入“reboot ”,单击“确定”。“重启节点”操作下发成功后,节点“运行状态”为“节点重启中”。稍后刷新实例基本信息,查看节点重启结果。如果节点运行状态为“正常”,说明节点重启成功。
-
GaussDB锦集启动GaussDB节点操作场景GaussDB支持在停止节点后,手动重新启动节点。注意事项仅支持启动节点状态是“已停止”的实例。 启动节点操作与磁盘扩容、规格变更、备份、重置密码、重启实例、删除实例等互斥,即执行启动节点时无法执行备份恢复等操作,备份恢复时也无法执行启动节点操作。 启动节点后,实例可能处理主备分布不均衡状态,需要联系运维评估是否需要执行主备均衡操作。 当DN分片内停止状态的节点数量超过分片副本数的一半时,可能导致单个节点启动失败。操作步骤登录管理控制台。 单击管理控制台左上角的,选择区域和项目。 在页面左上角单击,选择“数据库 > 云数据库 GaussDB”,进入云数据库 GaussDB信息页面。 在“实例管理”页面,选择指定的实例,单击实例的名称,进入“基本信息”页面。 在“节点列表”模块,单击“操作”列的“启动节点”。在“启动节点”弹框,输入“start”,单击“确定”,启动节点。 稍后刷新实例,查看启动结果。如果节点状态为“正常”,说明节点启动成功。
上滑加载中
推荐直播
-
华为云码道 × 仓颉编程:工程化AI编码探索2026/05/27 周三 19:00-21:00
刘俊杰-华为云仓颉语言专家/李炎-华为云码道技术专家/王智鹏-OpenCangjie开源社区发起人
本场直播围绕华为云仓颉语言与华为云码道的深度结合,展示华为云智能编程从零基础到高效落地的完整生态能力。以华为云码道为引擎,仓颉语言为载体,带给大家日常提效、趣味创新到极速量产的开发体验。
回顾中
热门标签