由於yum安裝mysql的時候,數據庫的data目錄默認是在/var/lib下,出於數據安全性的考慮需要把它挪到/data分區。步驟如下:
一、關閉apache和mysql.
復制代碼 代碼如下:
service httpd stop
service mysqld stop
二、將/var/lib下的mysql目錄mv(移動)到data目錄。
為什麼要用mv命令,而不用cp命令呢?應為linux文件系統特殊性,mv命令能保留文件的所有屬性和權限,尤其是selinux屬性。如果用cp命令,就需要回頭再去設置mysql文件夾的selinux屬性,本人因很頭疼selinux故能避則避。
復制代碼 代碼如下:
mv -R /var/lib/mysql /data/mysql
三、修改mysql配置文件/etc/my.cnf。將datadir和socket的路徑改為/data目錄下。
復制代碼 代碼如下:
[mysqld]
#datadir=/var/lib/mysql ------原系統默認路徑
datadir=/home/mysql ------現有路徑
#socket=/var/lib/mysql/mysql.sock ------原socket路徑現
socket=/home/mysql/mysql.sock ------現有路徑
[mysqld_safe]
socket=/home/mysql/mysql.sock -----現有路徑
[client]
socket=/home/mysql/mysql.sock -----現有路徑
[mysql.server]
socket=/home/mysql/mysql.sock -----現有路徑
四、修改php配置文件(/etc/php.ini)中的socket路徑。
沒錯,千萬不要忘記了php.ini裡也要指明socket的路徑,否則php網站會無法連接到數據庫的。php.ini裡默認socket路徑是空的,默認是指向/var/lib/mysql,所以也要改為/data/mysql.
復制代碼 代碼如下:
[mysql]
mysql.default_socket = /home/mysql/mysql.sock
[mysqli]
mysql.default_socket = /home/mysql/mysql.sock
五、啟動apache.mysql.
復制代碼 代碼如下:
service httpd start
service mysqld start