202012-30 基于postgresql数据库锁表问题的解决 查询是否锁表了selectoidfrompg_classwhererelname='可能锁表了的表'selectpidfrompg_lockswhererelation='上面查出的oid'如果查询到了结果,表示该表被锁则需要释放锁定selectpg_cancel_backend(上面查到的pid)补充:PostgreSQL解决锁表、死锁问题1.--查询ACTIVITY的状态等信息SELECTT.PID,T.STATE,T.QUERY,T.WAIT_EVENT_TYPE,T.WAIT_EVENT,T.QUERY_STARTFROMPG_STAT_ACTIVITYTWHERET.DATNAME='数据... 继续阅读 >
202012-30 pgsql锁表后kill进程的操作 如下:select*frompg_stat_activity查询系统中的进程如果怀疑哪张表被锁了,可以执行如下sql:selectoidfrompg_classwhererelname='table_name'然后将拿到的oid放入如下sql执行:selectpg_cancel_backend('oid');;搞定!此sql是kill作用补充:PostgreSQL-如何杀死被锁死的进程前言在一次系统迭代后用户投诉说无法成功登陆系统,经过测试重现和日志定位,最后发现是由于用户在ui上进行了某些操作后,触发了堆栈溢出... 继续阅读 >
202010-10 通过实例判断mysql update是否会锁表 两种情况:1.带索引2.不带索引前提介绍:方式:采用命令行的方式来模拟1.mysq由于默认是开启自动提交事务,所以首先得查看自己当前的数据库是否开启了自动提交事务。命令:select@@autocommit;结果如下:+————?+|@@autocommit|+————?+|0|+————?+如果是1,那么运行命令:setautocommit=0;设置为不开启自动提交2.当前的数据库表格式如下tb_user|CREATETABLEtb_user(idbigint(20)NOTNULLAUTO_INCREMENT... 继续阅读 >