首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 數據庫知識 >  >> MySQL 資料庫 >> MySQL 綜合教學

如何驗證 MySQL datadir 遷移成效:du/df/ls -l 陷阱與符號連結揭秘

     編輯:MySQL 綜合教學

前言

遷移 datadir 後,如何確認空間真正釋放?本文演示 du/df/ls -l 組合拳揭露「符號連結」導致的空間統計假象,教您避開統計陷阱。

情境:想把 /usr/local/var 移到 /var/mysql (df 顯示 /var 空間大)

# 檢查兩檔案系統空間
df /usr /var
Filesystem  1k-blocks   Used  Avail Capacity Mounted on
/dev/wd0s3e  396895   292126  73018     80%   /usr
/dev/wd0s3f 1189359  1111924 162287     15%   /var

陷阱:du -s 顯示 130MB,但 df /usr/local/var 卻報告 /var 空間?

cd /usr/local/var
du -s .          # 133426 (約 130MB)
df /usr/local/var
Filesystem  1k-blocks   Used  Avail Capacity Mounted on
/dev/wd0s3f 1189359  1111924 162287     15%   /var  <-- 竟然是 /var!

真相:ls -l 揭露符號連結

ls -l /usr/local
...
lrwxrwxrwx 1 root wheel 10 Dec 11 23:33 var -> /var/mysql
...

/usr/local/var 早已是指向 /var/mysql 的**符號連結**,資料實際早就在 /var 分區。移動操作其實早已完成,空間早已釋放。

驗證遷移成效的正確姿勢

  1. ls -l DATADIR 確認是實體目錄而非連結。
  2. df DATADIR 確認掛載點為目標分區。
  3. du -s DATADIR 確認佔用大小符合預期。
  4. mysqladmin variables | grep datadir 確認 MySQL 讀取路徑正確。

延伸閱讀

  • MySQL 資料目錄對應關係
  • MySQL 修改表結構語法完整解析
  • 10 大常用 MySQL 命令列指令
  • 通過 MySQL 命令列增加新用戶
  • MySQL 資料檔三種修復方法
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved