背景
虛擬機磁盤快被mysql數據文件占滿了,所以要將數據文件放到新掛載的磁盤
準備
新磁盤掛載在/data下
開始
MySQL數據文件默認在/var/lib下(/etc/my.cnf里配置了),本文要將其修改到自定義目錄/data下,以下操作的用戶是root
1.停止mysql
systemctl stop mysqld.service
2. 修改配置文件
vi /etc/my.cnf
#datadir=/var/lib/mysql
#socket=/var/lib/mysql/mysql.sock
datadir=/data/mysql/
socket=/data/mysql/mysql.sock
3.遷移數據文件[生產慎行]
# 將原來的數據文件移動到 /data/mysql下
mv /var/lib/mysql /data
4.創建socket軟鏈接
ln -s /data/mysql/mysql.sock /var/lib/mysql/mysql.sock
#驗證下
ls -la /var/lib/mysql
5. 授權路徑
chown mysql:mysql -R /data/mysql
6.啟動mysql
systemctl start mysqld.service
6.1 若你沒啟動成功
- 先別慌
- 請檢查 /data目錄下的數據文件是否與/etc/my.cnf里配置的一樣
- 請打開/var/mysqld.log 或者 命令[systemctl status mysqld.service && journalctl -xe] 看看具體原因
- 別慌,慢慢分析