更新时间:2024-03-06 GMT+08:00

服务器信号函数

服务器信号函数向其他服务器进程发送控制信号。只有系统管理员才能使用这些函数。

  • pg_cancel_backend(pid int)

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

    返回值类型:boolean

    备注:pg_cancel_backend向由pid标识的后端进程发送一个查询取消(SIGINT)信号。一个活动的后端进程的PID可以从pg_stat_activity视图的pid字段找到,或者在服务器上用ps列出数据库进程。

  • pg_reload_conf()

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

    返回值类型:boolean

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

  • pg_rotate_logfile()

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

    返回值类型:boolean

    备注:pg_rotate_logfile通知日志文件管理器立即切换到一个新的输出文件。该函数仅在内置日志收集器运行时有效。

  • pg_terminate_backend(pid int)

    描述:终止一个后台线程。

    返回值类型:boolean

    备注:如果成功,函数返回true,否则返回false。

    示例:

     1
     2
     3
     4
     5
     6
     7
     8
     9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    SELECT pid from pg_stat_activity;
           pid       
    -----------------
     140657876268816
     140433774061312
     140433587902208
     140433656592128
     140433723717376
     140433637189376
     140433552770816
     140433481983744
     140433349310208
    (1 rows)
    
    SELECT pg_terminate_backend(140657876268816);
     pg_terminate_backend 
    ----------------------
     t
    (1 row)