mysql中如何查看表空間
目錄
- mysql 查看表空間
- mysql 臨時(shí)表空間不足解決
- 查找思路以及解決方案
- 總結(jié)
mysql 查看表空間
主要是查看創(chuàng)建的庫(kù)和系統(tǒng)自帶的庫(kù)大小
?- SELECT table_schema,? ? ? ? ?concat(sum(round(data_length / (1024 * 1024), 2)), "MB") ?data_length,? ? ? ? ?concat(sum(round(index_length / (1024 * 1024), 2)), "MB") index_length,? ? ? ? ?concat(sum(round(round(data_length + index_length) / (1024 * 1024), 2)), "MB")total_size FROM information_schema.TABLES group by ?? ?table_schema;
mysql 臨時(shí)表空間不足解決
當(dāng)數(shù)據(jù)量過(guò)大時(shí),通過(guò)工具(sqlYog、Navicat)查詢表數(shù)據(jù)時(shí),
會(huì)報(bào)Got error 28 from storage engine錯(cuò)誤
詳情截圖如下
網(wǎng)上搜尋好解決方法,好多都是直接清空臨時(shí)表空間,感覺不可以行,如果是重要數(shù)據(jù),僅僅因?yàn)閮?nèi)存不足,清空表空間,造成數(shù)據(jù)丟失,就得不償失了,經(jīng)過(guò)多方搜尋,
查找思路以及解決方案
1.進(jìn)入mysql自帶的臨時(shí)表空間目錄,linux一般為:mysql/data下:cd usr/local/mysql
2.查看占用內(nèi)存情況:du -sh *
3.占用40g內(nèi)存的即為表數(shù)據(jù)存放處,如不是重要數(shù)據(jù),清空里面的數(shù)據(jù)即可(數(shù)據(jù)庫(kù)中的數(shù)據(jù)也同樣會(huì)消失)
4.如是重要數(shù)據(jù),修改my.cnf文件(一般再mysql安裝目錄下)在mysqld下面添加tmpdir=/home/mysql
(/home/mysql`為自己自定義的表空間)
5.重啟mysql,會(huì)發(fā)現(xiàn),可以正常使用
總結(jié)
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持。
