CentOS MySQL數據目錄修改

操作環境:

IP:192.168.1.60

操作系統版本:Centos 5.6 64bit

修改MySQL數據目錄原因:使用yum方式安裝MySQL,正常啓動。數據目錄默認安裝在/var/lib/mysql 目錄下,隨着數據量寫入增加,/ 目錄空間不足,需要添加磁盤後將MySQL數據目錄修改到新加磁盤下。

新加磁盤: /data

源MySQL數據目錄:/var/lib/mysql

遷移後目的MySQL數據目錄:/data/mysql


操作步驟:

1.停止MySQL服務

service mysqld stop

2.拷貝MySQL數據目錄到新加磁盤指定目錄下

cp -arp /var/lib/mysql  /data/

注意:在此必須使用 cp -arp 命令參數,以保證整個數據目錄的完整性以及權限正確分配。同時也能拷貝之前數據庫中所有寫入數據。

或者直接使用mv 命令(mv /var/lib/mysql /data/mysql)移動整個數據目錄也可,風險較大,建議拷貝。

3.修改mysql配置文件內的數據目錄參數

vi /etc/my.cnf

[mysqld]

#datadir=/var/lib/mysql

datadir=/data/mysql

#socket=/var/lib/mysql/mysql.sock

socket=/data/mysql/mysql.sock

user=mysql

# Disabling symbolic-links is recommended to prevent assorted security risks

symbolic-links=0

[mysqld_safe]

log-error=/var/log/mysqld.log

pid-file=/var/run/mysqld/mysqld.pid

配置文件修改時候,提前備份: cp /etc/my.cnf  /etc/my.cnf_20160121_bak

修改加粗行,先複製行,註釋後修改數據存儲路徑,以方便恢復配置文件。

4.修改MySQL配置文件完成後,再修改MySQL啓動文件

vi /etc/init.d/mysqld

#get_mysql_option mysqld datadir "/var/lib/mysql"

get_mysql_option mysqld datadir "/data/mysql"

datadir="$result"

get_mysql_option mysqld socket "$datadir/mysql.sock"

socketfile="$result"

get_mysql_option mysqld_safe log-error "/var/log/mysqld.log"

errlogfile="$result"

get_mysql_option mysqld_safe pid-file "/var/run/mysqld/mysqld.pid"

mypidfile="$result"

修改配置文件前備份: cp /etc/init.d/mysqld /root/software/backup_mysql/mysqld

修改配置文件時,先複製行,然後註釋,再對複製後的行進行路徑參數修改。

5.修改完成後啓動MySQL服務。

啓動成功,MySQL數據目錄修改完畢。

登錄MySQL,查看之前寫入數據正常訪問,數據完整。


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章