這篇文章主要介紹在什么情況下會(huì)使用MySQL臨時(shí)表,文中介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們一定要看完!
創(chuàng)新互聯(lián)是一家專業(yè)提供故城企業(yè)網(wǎng)站建設(shè),專注與成都做網(wǎng)站、網(wǎng)站建設(shè)、外貿(mào)營(yíng)銷網(wǎng)站建設(shè)、H5高端網(wǎng)站建設(shè)、小程序制作等業(yè)務(wù)。10年已為故城眾多企業(yè)、政府機(jī)構(gòu)等服務(wù)。創(chuàng)新互聯(lián)專業(yè)網(wǎng)站建設(shè)公司優(yōu)惠進(jìn)行中。
MySQL在很多情況下都會(huì)用到臨時(shí)表,總結(jié)一下什么時(shí)候會(huì)用到臨時(shí)表:
什么是臨時(shí)表:MySQL用于存儲(chǔ)一些中間結(jié)果集的表,臨時(shí)表只在當(dāng)前連接可見(jiàn),當(dāng)關(guān)閉連接時(shí),Mysql會(huì)自動(dòng)刪除表并釋放所有空間。為什么會(huì)產(chǎn)生臨時(shí)表:一般是由于復(fù)雜的SQL導(dǎo)致臨時(shí)表被大量創(chuàng)建
臨時(shí)表分為兩種,一種是內(nèi)存臨時(shí)表,一種是磁盤臨時(shí)表。內(nèi)存臨時(shí)表采用的是memory存儲(chǔ)引擎,磁盤臨時(shí)表采用的是myisam存儲(chǔ)引擎(磁盤臨時(shí)表也可以使用innodb存儲(chǔ)引擎,通過(guò)internal_tmp_disk_storage_engine參數(shù)來(lái)控制使用哪種存儲(chǔ)引擎,從mysql5.7.6之后默認(rèn)為innodb存儲(chǔ)引擎,之前版本默認(rèn)為myisam存儲(chǔ)引擎)。分別通過(guò)Created_tmp_disk_tables 和 Created_tmp_tables 兩個(gè)參數(shù)來(lái)查看產(chǎn)生了多少磁盤臨時(shí)表和所有產(chǎn)生的臨時(shí)表(內(nèi)存和磁盤)。
內(nèi)存臨時(shí)表空間的大小由兩個(gè)參數(shù)控制:tmp_table_size 和 max_heap_table_size 。一般來(lái)說(shuō)是通過(guò)兩個(gè)參數(shù)中較小的數(shù)來(lái)控制內(nèi)存臨時(shí)表空間的最大值,而對(duì)于開(kāi)始在內(nèi)存中創(chuàng)建的臨時(shí)表,后來(lái)由于數(shù)據(jù)太大轉(zhuǎn)移到磁盤上的臨時(shí)表,只由max_heap_table_size參數(shù)控制。針對(duì)直接在磁盤上產(chǎn)生的臨時(shí)表,沒(méi)有大小控制。
下列操作會(huì)使用到臨時(shí)表:
1?? union查詢
2?? 對(duì)于視圖的操作,比如使用一些TEMPTABLE算法、union或aggregation
3?? 子查詢
4?? semi-join 包括not in、exist等
5?? 查詢產(chǎn)生的派生表
6?? 復(fù)雜的group by 和 order by
7?? Insert select 同一個(gè)表,mysql會(huì)產(chǎn)生一個(gè)臨時(shí)表緩存select的行
8?? 多個(gè)表更新
9?? GROUP_CONCAT() 或者 COUNT(DISTINCT) 語(yǔ)句
。。。
Mysql還會(huì)阻止內(nèi)存表空間的使用,直接使用磁盤臨時(shí)表:
1?? 表中含有BLOB或者TEXT列
2?? 使用union或者union all時(shí),select子句有大于512字節(jié)的列
3?? Show columns或者 desc 表的時(shí)候,有LOB或者TEXT
4?? GROUP BY 或者 DISTINCT 子句中包含長(zhǎng)度大于512字節(jié)的列
以上是“在什么情況下會(huì)使用mysql臨時(shí)表”這篇文章的所有內(nèi)容,感謝各位的閱讀!希望分享的內(nèi)容對(duì)大家有幫助,更多相關(guān)知識(shí),歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道!
網(wǎng)頁(yè)名稱:在什么情況下會(huì)使用mysql臨時(shí)表
地址分享:http://chinadenli.net/article26/ihcpjg.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供建站公司、商城網(wǎng)站、微信公眾號(hào)、網(wǎng)站策劃、網(wǎng)站建設(shè)、軟件開(kāi)發(fā)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)