解決MySQL中死程序(一個聯合查詢耗時32s)
很奇怪的現象,一個聯合查詢(in)直接執行sql指令碼的時候,Navicat Premium直接假死;
檢查是否有死程序:
SELECT * FROM INFORMATION_SCHEMA.INNODB_TRX;
可以看到一個時間持續了比較久的事務,現在時間是13點了,而這個事務的開始時間(trx_wait_started )是2012-11-09 12:15:14,
顯然是不正常的,我們看這個事務對應的mysql的執行緒ID(trx_mysql_thread_id)是82230715,就是這個事務導致的 。
殺掉這個程序:
kill 82230715
再次查詢,恢復正常。
能夠用join的時候儘量不要用in,害死人不償命~
檢視正在鎖的事務
SELECT * FROM INFORMATION_SCHEMA.INNODB_LOCKS;
檢視等待鎖的事務
SELECT * FROM INFORMATION_SCHEMA.INNODB_LOCK_WAITS;
相關推薦
解決MySQL中死程序(一個聯合查詢耗時32s)
很奇怪的現象,一個聯合查詢(in)直接執行sql指令碼的時候,Navicat Premium直接假死; 檢查是否有死程序: SELECT * FROM INFORMATION_SCHEMA.INN
MySQL中的鎖(表鎖、行鎖) MySQL中的鎖(表鎖、行鎖)
MySQL中的鎖(表鎖、行鎖) 鎖是計算機協調多個程序或純執行緒併發訪問某一資源的機制。在資料庫中,除傳統的計算資源(CPU、RAM、I/O)的爭用以外,資料也是一種供許多使用者共享的資源。如何保證資料併發訪問的一致性、有效性是所在有
MySQL中的鎖(表鎖、行鎖)
鎖是計算機協調多個程序或純執行緒併發訪問某一資源的機制。在資料庫中,除傳統的計算資源(CPU、RAM、I/O)的爭用以外,資料也是一種供許多使用者共享的資源。如何保證資料併發訪問的一致性、有效性是所在有資料庫必須解決的一個問題,鎖衝突也是影響資料庫併發訪問效能的一個重要因素
List集合中刪除屬性(一個或者多個屬性)相同的物件返回List且根據物件屬性進行排序輸出
在資料庫中某些資料是重複的,通過mybatis對映成不同的物件。導致不同的物件包含相同的屬性。這也是資料重複的一種。下面是我在處理一個屬性或者多個屬性相同時採用的方法。當然你可以採用其他的方法。比較蠢的方法是兩個for迴圈。但是對於資料的刪除是很容易出現異常的。因此我
qt4.7解決mysql無法連線問題(這個方法是錯誤的)
0起因 做題我開始做我們學校的資料庫實習報告。報告上要求用sqlserver。不過我是一個開源的支持者,所以我選擇了用mysql+qt開發我的程式。 我在書《c++ gui qt4 程式設計(第二版)》中找到了有關資料庫開發的資料。首先這篇文章的解決方法並不重要,重要的是我
初遇C#:一個簡單的小程序(圓形周長,面積計算器)
編碼 雙精度 崩潰 輸入 面向對象 窗口 語句 readline 面向對象的語言 作為一個面向對象的語言,與用戶的交互很關鍵! 在此,我們可以先分析一下我們這個小程序要與用戶交互的內容:1.命名很重要,讓用戶看見這個程序就知道這個程序的作用。 2.當用戶打開這個程序時,提示
【MySQL】如何解決MySQL中查詢不區分大小寫的問題
bsp title 標識 article ble 問題 col bold table mysql查詢默認是不區分大小寫的 如: select * from some_table where str=‘abc‘; select * from some_ta
gcc和MinGW的異同(在cygwin/gcc做的東西可以無縫的用在linux下,沒有任何問題,是在windows下開發linux程序的一個很好的選擇)
實現 o-c tool 交叉 lin 分析 模擬 gcc編譯器 還要 cygwin/gcc和MinGW都是gcc在windows下的編譯環境,但是它們有什麽區別,在實際工作中如何選擇這兩種編譯器。 cygwin/gcc完全可以和在linux下的gcc化做等號,這個可以從bo
mysql中的count()函數使用
gre arch str pan 表達式 ble 執行 int mar 有時候總認為count(*)會比count(1)或者count(column name)慢,事實上是分情況處理。 比如: ---初始化語句 建立一張表並插入數據: create table test
mysql中一張(居民)表按年齡段查詢數據
log clas rom count 年齡段 group by 中一 span OS 知識點: 用mysql,按年齡段查詢一張居民的數據(各年齡段居民的個數) 1.如:查詢resident(居民表),按照各年齡段,統計人數 2.mysql語句如下: sele
解決VMware中虛擬機(centos7)無法上網的一種方法
sta img 判斷 應該 模式 網關 mage 重啟 虛擬網絡 本文記錄使用VMware搭openstack環境中遇到的問題和解決方法。作為一個熟練拼寫openstack和只知道怎麽創建虛擬機的新手,原本搭openstack就是一個不斷爬坑的過程,結果VMware上又出問
【轉】【MySQL】MySQL中的鎖(表鎖、行鎖,共享鎖,排它鎖,間隙鎖)
https://blog.csdn.net/soonfly/article/details/70238902 本文參考: http://mysqlpub.com/thread-5383-1-1.html http://blog.csdn.net/c466254931/ar
解決mysql中limit和in不能同時使用的問題
但是 col ima 聚集 class mys mit table span 先給出數據表 CREATE TABLE `test_tb_grade` ( `ID` int(10) NOT NULL AUTO_INCREMENT, `USER_NAME` v
MySQL中函式field()的用法
MySQL中的field()函式,可以用來對SQL中查詢結果集進行指定順序排序。 str與str1,str2,str3,str4比較,其中str指的是欄位名字 意為:欄位str按照字串str1,str2,str3,str4的順序返回查詢到的結果集。如果表中str欄位值不存在於str
如何解決MySQL中輸入中文報錯的情況1366 (HY000): Incorrect string value
如何在MySQL中輸入中文 經過我的不斷摸索,在MySQL建表後,往表中的varchar(255)中輸入中文時報錯,大概是因為資料庫的預設編碼模式是latin1而不是utf8。所以其它部落格就會叫你去修改my.ini配置檔案裡的資訊,或者說在MySQL介面裡設定,如下: MySQL查
upsert在mysql中的實現(附spark應用
upsert概述以及在mysql中的實現 upsert是update和insert的合體,這裡暫時不對其具體的語義進行探討,簡單對其做一個定義,基本功能為:存在時更新,不存在時插入,簡單的解釋就是,當某種條件成立時使用update,條件不成立時使用ins
pythonmysql執行報錯解決過程中遇到的其中一個報錯解決文章來源
本文章僅記錄下面報錯的解決文章來源: error: command 'C:\Users\Administrator\AppData\Local\Programs\Common\Micr osoft\Visual C++ f
解決mysql中只能通過localhost訪問不能通過ip訪問的問題
搭伺服器的時候碰到的問題,怎麼都不能navicat遠端訪問資料庫,還覺得奇了怪了 結果伺服器本機上用內網ip試了一下也不行,查了之後才知道是許可權沒開 特此記一筆省的以後又被折騰 1. 命令列進入mysql(假設root使用者的密碼也為root) mysql –uroot
python中多程序(multiprocessing)
python中多程序(multiprocessing) 一、multiprocessing中使用子程序概念 from multiprocessing import Process 可以通過Process來構造一個子程序 p = Process(target=fun,args=(arg
mysql的一個聯合查詢列子
一個mysql的聯合查詢列子,很基本的,不過很實用。先看資料表。資料表class:------------------------------- id cname-------------------------------1 男裝2 女皮褲3 女彩棉-