mysql臨時表空間不足解決方案

當數據量過大時,通過工具(sqlYog、Navicat)查詢表數據時,會報Got error 28 from storage engine錯誤,詳情截圖如下在這裏插入圖片描述
網上搜尋好解決方法,好多都是直接清空臨時表空間,感覺不可以行,如果是重要數據,僅僅因爲內存不足,清空表空間,造成數據丟失,就得不償失了,經過多方搜尋,查找思路以及解決方案如下:

  1. 進入mysql自帶的臨時表空間目錄,linux一般爲:mysql/data下:cd usr/local/mysql
  2. 查看佔用內存情況:du -sh *
    在這裏插入圖片描述
  3. 佔用40g內存的即爲表數據存放處,如不是重要數據,清空裏面的數據即可(數據庫中的數據也同樣會消失)
  4. 如是重要數據,修改my.cnf文件(一般再mysql安裝目錄下)在mysqld下面添加tmpdir=/home/mysql (/home/mysql`爲自己自定義的表空間)
    在這裏插入圖片描述
    5,重啓mysql,會發現,可以正常使用
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章