磁碟已滿,如何移動mysql資料庫檔案?

磁碟已滿,如何移動mysql資料庫檔案?

我的資料庫檔案位於/var/lib/mysql哪個分割區/dev/sda5

該分區已滿(詳情請參閱此處

所以我要將資料庫檔案的位置從/var/lib/mysql移到/home/lib/mysql

移動此資料庫檔案的正確方法是什麼?

我將執行以下步驟:

  1. 停止http伺服器和PHP
  2. 改變成為 datadir=/var/lib/mysqldatadir=/home/lib/mysql/etc/my.cnf
  3. 將所有資料庫檔案移至新位置
  4. 運行killall -9 mysql,然後 /etc/init.d/mysqld start
  5. 啟動http伺服器和PHP

這是正確的嗎?如我錯了請糾正我

添加:

目前,mysql不會停止。參考這裡:mysql不會停止,mysqld_safe出現在頂部

答案1

1-您應該在移動檔案(步驟 3)之前停止 mysql 伺服器(步驟 4)。

2-你應該優雅地停止它,kill -9除非需要,否則不要使用。

3-我認為你的意思是從第5步開始。

4-您還需要檢查檔案權限和所有權。

答案2

  1. 停止http伺服器和PHP
  2. 以 root 身分登入 mysql 並「刷新表」(如果刷新失敗,您將需要修復一些表)
  3. 運行killall -9 mysql
  4. 將 /etc/my.cnf 中的 datadir=/var/lib/mysql 改為 datadir=/home/lib/mysql
  5. 將所有資料庫檔案移至新位置
  6. 啟動mysql伺服器
  7. 檢查表狀態(從 phpmyadmin 或其他 GUI)
  8. 啟動http伺服器和PHP

相關內容