1. 程式人生 > >mysql中kill掉所有鎖表的程序

mysql中kill掉所有鎖表的程序

轉載請保留如下作者資訊

作者 : jesse

3點鐘剛睡下, 4點多, 同事打電話告訴我使用者資料庫掛掉了. 我起床看一下程序列表.

mysql>showprocesslist;

出來嘩啦啦好幾螢幕的, 沒有一千也有幾百條, 查詢語句把表鎖住了, 趕緊找出第一個Locked的thread_id, 在mysql的shell裡面執行.

mysql>killthread_id;

kill掉第一個鎖表的程序, 依然沒有改善. 既然不改善, 咱們就想辦法將所有鎖表的程序kill掉吧, 簡單的指令碼如下.

#!/bin/bashmysql -uroot -e"show processlist
" | grep -i"Locked" >> locked_log.txtforlinein`cat locked_log.txt | awk '{print $1}'`doecho"kill $line;" >> kill_thread_id.sqldone

現在kill_thread_id.sql的內容像這個樣子

kill66402982;
kill66402983;
kill66402986;
kill66402991;
.....

好了, 我們在mysql的shell中執行, 就可以把所有鎖表的程序殺死了.

mysql>sourcekill_thread_id
.sql

當然了, 也可以一行搞定
foridin`mysqladmin processlist | grep -i locked | awk '{print $1}'`domysqladminkill${id}done

相關推薦

mysqlkill所有程序

轉載請保留如下作者資訊 作者 : jesse 3點鐘剛睡下, 4點多, 同事打電話告訴我使用者資料庫掛掉了. 我起床看一下程序列表. mysql>showprocesslist; 出來嘩啦啦好幾螢幕的, 沒有一千也有幾百條, 查詢語句把表鎖住了, 趕緊找出第一個Locked的thread_id,

【數據庫系列】MySql的select的範圍

nbsp 範圍 nod 指定 lock 無數據 才會 rdb sele 由於InnoDB預設的是Row-Level Lock,只有明確指定主鍵的時候MySql才會執行Row lock,否則MySql將會執行Table Lock. 1、明確指定主鍵則是行鎖 2、明確指定主鍵,

MySQL的行級,,頁級

In 回退 常用 info 部分 title 一個 相關 鍵值 轉載:https://blog.csdn.net/zp522123428/article/details/75413745##s4 在計算機科學中,鎖是在執行多線程時用於強行限制資源訪問的同步機制,即用於在並發

MySql資料庫MySQLselect * for update的問題

       由於InnoDB預設是Row-Level Lock,所以只有「明確」的指定主鍵,MySQL才會執行Row lock (只鎖住被選取的資料例) ,否則MySQL將會執行Table Lock (將整個資料表單給鎖住)。 舉個例子: 假設有個表單p

MySQLselect * for update的範圍

MySQL中select * for update鎖表的問題 由於InnoDB預設是Row-Level Lock,所以只有「明確」的指定主鍵,MySQL才會執行Row lock (只鎖住被選取的資料例) ,否則MySQL將會執行Table Lock (將整個資料表單給鎖住)。 舉個例子: 假設有個表單p

MySQL的行級、頁級

常用 一點 存儲引擎 rac 鎖定 方法 線程 加鎖 計算機      在計算機科學中,鎖是在執行多線程時用於強行限制資源訪問的同步機制,即用於在並發控制中保證對互斥要求的滿足。   在DBMS中,可以按照鎖的粒度把數據庫鎖分為行級鎖(INNODB引擎)、表級鎖(MYISA

MySQL的行級,頁級

在電腦科學中,鎖是在執行多執行緒時用於強行限制資源訪問的同步機制,即用於在併發控制中保證對互斥要求的滿足。 在DBMS中,可以按照鎖的粒度把資料庫鎖分為行級鎖(INNODB引擎)、表級鎖(MYISAM引擎)和頁級鎖(BDB引擎 )。 行級鎖 行級鎖是Mysql中鎖定粒度最細的一種

MySQL 的行級和頁級(不看後悔,看了必懂)

行級鎖 行級鎖是 MySQL 中鎖定粒度最細的一種鎖,表示只針對當前操作的行進行加鎖。行級鎖分為共享鎖和排他鎖。 特點:加鎖開銷大,會出現死鎖,鎖定粒度最小,發生鎖衝突的概率最低,併發度最高 頁級鎖 頁級鎖是 MySQL 中鎖定粒度介於行級鎖和表級鎖中間的一種鎖。

詳述 MySQL 的行級和頁級

在電腦科學中,鎖是在執行多執行緒時用於強行限制資源訪問的同步機制,即用於在併發控制中保證對互斥要求的滿足。 在資料庫的鎖機制中,咱們介紹過在 DBMS 中,可以按照鎖的粒度把資料庫鎖分為行級鎖(InnoDB 引擎)、表級鎖(MyISAM 引擎)和頁級鎖(BDB

一句話就kill所有Java程序

近期參加* * * * 的校招面試,要樓主寫一條shell指令碼,一句話就kill掉所有java程序,樓主平常分散式專案可是寫過這個指令碼的,到現場太緊張一時忘了怎麼寫,好後悔,現特在此寫下相關shell程式碼,作為樓主的教訓跟大家分享一下: ps -ef

ORACLE 物件 | 程序 | 字符集 | 版本號 |預設空間

1. 查詢當前使用者鎖表物件 select sess.sid,     sess.serial#,     lo.oracle_username,     lo.os_user_name,     ao.object_n

如何在MySQL檢查和修復MyISAM

由於寫入不完整,空間不足,MySQL守護程式被殺或崩潰,電源故障等原因,MySQL表可能因各種原因而損壞。 如果MySQL檢測到崩潰或損壞的表,則需要先修復它才能再次使用。 本指南將引導您檢測崩潰的表以及如何修復MyISAM表。 在MySQL中查詢崩潰的MyISAM表 通常一個表在mysql日誌中顯示為

mysql利用遊標遍歷的資料時未正常獲取資料

問題描述: mysql中利用遊標遍歷表中的資料時未正常獲取資料 問題重現: 建立儲存過程(mysql) 遊標遍歷的表中對應的資料如下 執行儲存過程時卻並未正常獲取資料 問題分析: 儲存過程中變數的定義不要和我們表中的欄位名相同(不區分大小寫),比如上面問題中的表字段為START

Mysql 一對多的關係使用不了索引的問題

我所用到的表有兩張,分別是 A表和B表。 A表 guess_id user_id 1 DD 2 CC 3 SS B表 b_id guess_id b_name 1

MySQL 手動主從同步不

本文只能保證鎖表時間不會太久 可能會出現從庫需要跳過很多語句的情況 #備份主庫 mysqldump --skip-lock-tables --single-transaction --flush-logs --hex-blob -uroot -pXXXX --maste

MySQL的事務與

事務 資料庫事務(簡稱:事務)是資料庫管理系統執行過程中的一個邏輯單位,由一個有限的資料庫操作序列構成。一個數據庫事務通常包含了一個序列的對資料庫的讀/寫操作。它的存在包含有以下兩個目的: 1 2

mysqlinnodb引擎的問題

   一,概述     相對其他資料庫而言,mysql的鎖機制比較簡單,其最顯著的特點是不同的儲存引擎支援不同的鎖機制。比如:myisam和memory儲存引擎採用的是表級鎖,bdb採用的是頁面鎖,但也支援表級鎖,innodb儲存引擎即支援行級鎖也支援表級鎖,但預設情況下是

Mysql如何顯示所有使用者?

這是一個mysql初學者經常問到的一個問題,今天我們就帶大家看看是如何在Mysql中顯示所有使用者的。通常我們在mysql中使用SHOW DATABASES可以顯示所有的資料庫,SHOW TABLES將會顯示所有的資料表,那麼你是不是會猜測顯示所有使用者的命令是SHOW U

oracle檢視程序,殺掉程序

檢視鎖表程序SQL語句1:select sess.sid, sess.serial#, lo.oracle_username, lo.os_user_name, ao.object_name, lo.locked_mode f

oracle查詢程序及殺死程序

1.查詢當前鎖表程序數 select count(*) from v$locked_object lo, dba_objects ao, v$session sess where ao.object_id = lo.object_id   and lo.session_id