华为云云数据库GaussDB服务器信号函数_云淘科技

服务器信号函数向其他服务器进程发送控制信号。仅系统管理员有权执行以下函数。

pg_cancel_backend(pid int)

描述:取消一个后端的当前查询。

返回值类型:Boolean

备注:pg_cancel_backend向由pid标识的后端进程发送一个查询取消(SIGINT)信号。一个活动的后端进程的PID可以从pg_stat_activity视图的pid字段找到,或者在服务器上用ps列出数据库进程。具有SYSADMIN权限的用户,后端进程所连接的数据库的属主,后端进程的属主或者继承了内置角色gs_role_signal_backend权限的用户有权使用该函数。

pg_cancel_session(pid bigint, sessionid bigint)

描述:取消一个后台会话。

返回值类型:Boolean

备注:pg_cancel_session的入参可以通过pg_stat_activity中的pid字段和sessionid的字段查询,可以用于清理线程池模式下,非活跃状态的会话。

pg_cancel_invalid_query()

描述:取消一个后端的无效查询。

返回值类型:Boolean

备注:只有系统管理员才有权限取消连接到降级的GTM的后端中运行的查询。

pg_reload_conf()

描述:导致所有服务器进程重新装载它们的配置文件。

返回值类型:Boolean

备注:pg_reload_conf给服务器发送一个SIGHUP信号,导致所有服务器进程重新装载配置文件。

pg_rotate_logfile()

描述:滚动服务器的日志文件。

返回值类型:Boolean

备注:pg_rotate_logfile给日志文件管理器发送信号,告诉它立即切换到一个新的输出文件。这个函数只有在redirect_stderr用于日志输出的时候才有用,否则不会产生日志文件管理器子进程。

pg_terminate_session(pid bigint, sessionid bigint)

描述:终止一个后台会话。

返回值类型:Boolean

备注:本函数的入参可以通过pg_stat_activity中的pid字段和sessionid的字段查询。可以用于清理线程池模式下,非活跃状态的会话。具有SYSADMIN权限的用户、会话所连接的数据库的属主、会话的属主、或者继承了内置角色gs_role_signal_backend权限的用户有权使用该函数。

pg_terminate_active_session_socket(pid int64, sessionid int64)

描述:关闭一个活跃session和客户端的socket连接。

返回值类型:Boolean

备注:如果成功,函数返回true,否则返回false。仅限初始化用户才可使用该函数。

pg_terminate_backend(pid int)

描述:终止一个后台线程。仅系统管理员和线程所有者可执行该函数。

返回值类型:Boolean

备注:如果成功,函数返回true,否则返回false。具有SYSADMIN权限的用户,后端线程所连接的数据库的属主,后端线程的属主或者继承了内置角色gs_role_signal_backend权限的用户有权使用该函数。

示例:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
gaussdb=# SELECT pid from pg_stat_activity;
       pid       
-----------------
 140657876268816
(1 rows)

gaussdb=# SELECT pg_terminate_backend(140657876268816);
 pg_terminate_backend 
----------------------
 t
(1 row)

父主题: 系统管理函数

同意关联代理商云淘科技,购买华为云产品更优惠(QQ 78315851)

内容没看懂? 不太想学习?想快速解决? 有偿解决: 联系专家