1. 程式人生 > >Ubuntu16.04下修改MySQL資料的預設儲存位置

Ubuntu16.04下修改MySQL資料的預設儲存位置

原文摘自: https://blog.csdn.net/prliebtsy/article/details/79995620

1.首先第一步當然是down掉MySQL了:

# /etc/init.d/mysql stop

2.接著建立新的資料庫路徑:

# mkdir -p /ssd1/mysql

其中,/ssd1是我在雲伺服器上加的一個數據盤,已經掛載到 /ssd1 上去了。我想把所有的MySQL的資料都存到這個資料盤,而不是存到雲伺服器自帶的系統盤。

3.複製MySQL原有的資料,注意,MySQL的原始資料存在/var/lib/mysql/下。

# cp -R /var/lib/mysql/* /ssd1/mysql

4.注意一定要修改許可權,因為/var/lib/mysql 資料夾的屬性就是如下的:

# chown -R mysql:mysql /ssd1/mysql

5.修改配置資料夾

這一步網上都說是修改 /etc/mysql/my.cnf 檔案,可是我vim進去發現根本沒有 datadir 變數,查了很多資料都沒找到,然後自己搗鼓發現 /etc/mysql 下有個 mysql.conf.d 資料夾,下面有 mysqld.cnf 檔案,進去一看,果然 datadir變數在裡面!所以正確的操作應該是:

# vim /etc/mysql/mysql.conf.d/mysqld.cnf

將 [mysqld] 組下的 datadir改為:
datadir = /ssd1/mysql

但是我也不知道會不會是在阿里雲的源下載MySQL配置方式不同。。。。

6.修改啟動檔案

# vim /etc/apparmor.d/usr.sbin.mysqld 

把  
/var/lib/mysql r  
/var/lib/mysql/** rwk  
修改成  
/ssd1/mysql r  
/ssd1/mysql/** rwk,   

6.重啟服務

# /etc/init.d/apparmor restart  
# /etc/init.d/mysql restart