`
i_am_birdman
  • 浏览: 286170 次
  • 性别: Icon_minigender_1
  • 来自: 厦门
社区版块
存档分类
最新评论

PostgreSql中如何kill掉正在执行的sql语句

阅读更多

虽然可以使用 kill -9 来强制删除用户进程,但是不建议这么去做。

因为:对于执行update的语句来说,kill掉进程,可能会导致Postgres进入到recovery mode

recovery mode下,会锁表,不允许链接数据库


通常情况下:使用如下语句

=# select datname,procpid,query_start,current_query,waiting,client_addr from pg_stat_activity where waiting='t';


来查看有哪些SQL正在执行。


通过命令:

=# select pg_cancel_backend(线程id);

来kill掉指定的SQL语句。

这个函数只能 kill  Select  查询,而updae,delete DML不生效


使用

=# select  pg_terminate_backend(pid int)

可以kill 各种DML(SELECT,UPDATE,DELETE,DROP)操作

 

分享到:
评论

相关推荐

    SQL语言教程&简单案例

    建议在本地环境中搭建一个小型的数据库系统,尝试上述案例中的SQL语句,亲身体验SQL的强大功能。 #### 五、进阶学习方向 - **复杂查询**:学习如何构建更复杂的SQL查询,包括联接(JOIN)、子查询(Subquery)、...

    PostgreSQL典型故障案例及处理方法.pptx

    数据库常见的问题通常包括单一SQL语句运行缓慢、底层故障导致数据丢失、磁盘空间满、数据损坏、执行报错等。这些问题可能由多种原因引起,比如CPU、内存、磁盘或I/O资源不足,配置文件错误,以及WAL(Write-Ahead ...

    杀死正在使用数据库的线程

    每个线程会显示其ID、用户、状态、执行的SQL语句等信息。若需要终止特定线程,可以使用`KILL`命令,格式为`KILL [CONNECTION | QUERY] thread_id`。例如,`KILL 12345`将终止ID为12345的线程。如果想终止当前执行的...

    linux,sql,docker命令合集_LinuxCommandCollection.zip

    在SQL数据库查询语言方面,该集合提供了基础的SQL语句和函数使用方法,如数据查询命令SELECT、数据插入命令INSERT、数据更新命令UPDATE以及数据删除命令DELETE。此外,还包括了创建和操作数据库、表、索引和视图的...

    数据查询停止操作

    1. **SQL语句的控制**:在SQL中,有一些特定的命令可以用于管理查询的生命周期。例如,在MySQL中,你可以使用`KILL QUERY`或`KILL TIDB`语句来终止一个正在运行的查询,通过其查询ID(query_id)。在PostgreSQL中,...

    navicat使用说明

    在查询方面,Navicat提供了SQL编辑器,我们可以在其中编写和执行SQL语句,并查看查询结果。此外,Navicat还提供了查询参数功能,可以用于参数化查询。 模型是NavicatPremium和企业版提供的高级功能,用于数据库的...

    171491304-王明阳-Linux实验报告1

    3. **Shell脚本编程**:为了自动化任务,实验可能包含了编写简单的Shell脚本,例如使用`for`循环处理文件,或者通过条件语句实现特定逻辑。 4. **进程管理**:启动、终止、查看和控制进程是Linux管理员的基本技能。...

    Linux网站建设和维护全攻略

    理解SQL语句,能进行数据备份、恢复和性能调优是必要的。 5. **FTP/SFTP服务**:FileZilla、vsftpd等工具用于文件上传和下载,SFTP则提供更安全的文件传输方式。学会配置和管理这些服务对网站内容更新和备份至关...

    完全手册Linux系统管理与网络服务器电子教程

    5. **数据库服务器**:安装和管理MySQL或PostgreSQL数据库,学习SQL语言,进行数据备份和恢复。 6. **防火墙与安全**:利用iptables或firewalld设置防火墙规则,保护服务器免受攻击,配置SSH安全策略。 7. **监控...

    linux常用命令手册.pdf

    - `# kill -9 PID`:终止指定PID的进程。 - `# killall processname`:终止所有名为processname的进程。 - `# nice command`:设置进程的优先级。 - `# renice value -p PID`:调整进程的优先级。 - **后台任务...

Global site tag (gtag.js) - Google Analytics