Centos7下 更换 mysql5.6 默认物理存储位置记录

再上一篇 Centos 7 下基于 docker 的Mysql 主从配置记录之后,有个小需求没有完成,就是没有修改 默认物理存储位置。

修改的配置文件:

# 1 my.cnf master 和 slave 基本一样 ,修改 datadir 的 位置,socket 的位置
[client]
socket  = /database/mysqld/mysqld.sock

[mysqld]
datadir=/database

# 2 mysqld.cnf
[mysqld]
pid-file        = /var/run/mysqld/mysqld.pid
socket          = /database/mysqld/mysqld.sock
datadir         = /database
log-error      = /var/log/mysql/error.log

# 3 /etc/init.d/mysql 修改 mysql 启动项
MYSQLRUN=/database/mysqld
MYSQLDATA=$(get_mysql_option mysqld datadir "/database")
MYSQLFILES=/database/mysql-files
MYSQLKEYRING=/database/mysql-keyring
MYSQLLOG=/database/mysql

# 4 如果是已经运行的 mysql ,比如我这种情况,需要复制原来的文件到新的存储路径,并且修改存储目录的权限 给 mysql 用户

cp -R /var/lib/mysql/* /database/
chown mysql:mysql -R /database

查看修改是否成功:

#1 进入cli ,查看更目录是否更换
$ show variables like '%datadir%';
#2 创建一个测试数据库,查看新的存储路径下是否产生了文件
$ create database test;

如果本来是基于 docker 做主从的,可能需要更换 slave 用户, master_log_file, master_log_pos两个配置项

$change master to master_host='192.168.3.10', master_user='slave', master_password='123456', master_port=3306, master_log_file='edu-mysql-bin.000008', master_log_pos=211, master_connect_retry=30;

你可能感兴趣的:(linux,Mysql)