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,查看之前写入数据正常访问,数据完整。


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