背景
開始建項目時,數據庫存儲放到了系統盤,如今磁盤空間快被佔滿了。。當雲服務器掛載了一塊新的數據盤時,這裏以一塊600G
硬盤爲例,使用fdisk分區工具將該數據盤設爲主分區,分區形式默認設置爲MBR
,文件系統設爲ext4
格式,掛載在/mnt/sdc
下,並設置開機啓動自動掛載。
系統環境
- 查看系統信息:
lsb_release -a
- 掛載前磁盤信息:
df -TH
劃分分區並掛載磁盤
-
查看新增數據盤:
fdisk -l
表示當前的雲服務器有兩塊磁盤,“/dev/vda”是系統盤,“/dev/vdb”是新增數據盤。 -
進入fdisk分區工具,開始對新增數據盤執行分區操作:
fdisk /dev/vdb
先鍵入m查看幫助
3. 依次輸入:n p 1 兩次回車 p w
n: 創建新分區
p: 主分區
1:主分區編號
兩次回車:選擇默認起始磁柱值與截止磁柱值
p: 查看新建分區的詳細信息
w: 將分區結果寫入分區表中
- 將新的分區表變更同步至操作系統:
partprobe
這裏的警告表示已通知操作系統,下次重啓生效。
- 將新建分區文件系統設爲系統所需格式:
mkfs -t ext4 /dev/vdb1
該過程需要一段時間,大概一兩分鐘,耐心等待。。
這是執行完畢後的效果:
-
新建掛載目錄:
mkdir /mnt/sdc
-
將新建分區掛載到上一步創建的目錄下:
mount /dev/vdb1 /mnt/sdc
-
查看掛載後磁盤信息:
df -TH
可以看到新增了一個635G的磁盤,掛載在/mnt/sdc。
設置開機自動掛載磁盤分區
雲服務器重啓後,掛載會失效。需要修改“/etc/fstab”文件,將新建磁盤分區設置爲開機自動掛載。
設置雲服務器系統啓動時自動掛載磁盤分區,不能採用在“/etc/fstab”直接指定設備名(比如/dev/vdb1)的方法,因爲雲中設備的順序編碼在關閉或者開啓雲服務器過程中可能發生改變,例如/dev/vdb1可能會變成/dev/vdb2。推薦使用UUID來配置自動掛載磁盤分區。
- 查詢磁盤分區的UUID:
blkid /dev/vdb1
- 使用VI編輯器打開“fstab”文件:
vi /etc/fstab
鍵入i
,進入插入模式,添加如下一行:
UUID=34cffb31-e89c-4150-9dd2-cfe9dfe5a0f7 /mnt/sdc ext4 defaults 0 2
參數說明如下:
- 第一列爲UUID,此處填寫1中查詢到的磁盤分區的UUID。
- 第二列爲磁盤分區的掛載目錄,可以通過df -TH命令查詢。
- 第三列爲磁盤分區的文件系統格式, 可以通過df -TH命令查詢。
- 第四列爲磁盤分區的掛載選項,此處通常設置爲defaults即可。
- 第五列爲Linux dump備份選項。
- 0表示不使用Linux dump備份。現在通常不使用dump備份,此處設置爲0即可。
- 1表示使用Linux dump備份。
- 第六列爲fsck選項,即開機時是否使用fsck檢查磁盤。
- 0表示不檢驗。
- 掛載點爲(/)根目錄的分區,此處必須填寫1。
- 根分區設置爲1,其他分區只能從2開始,系統會按照數字從小到大依次檢查下去。
數據遷移:系統盤—>數據盤
不用改配置,實現
MySQL
數據庫遷移
- 停止MySQL服務
service mysqld stop
- 移動mysql目錄至新掛載的數據盤目錄
mv /var/lib/mysql /mnt/sdc
- 建立軟連接,將新的
mysql
目錄鏈接至/var/lib
ln -s /mnt/sdc/mysql /var/lib
- 重啓MySQL服務
service mysqld start
If you have any questions or any bugs are found, please feel free to contact me.
Your comments and suggestions are welcome!