主数据库配置
编写/etc/my.cnf文件
[mysqld]
bind-address=0.0.0.0
port=3306
user=mysql
basedir=/usr/local/mysql
datadir=/data/mysql
socket=/tmp/mysql.sock
log-error=/data/mysql/mysql.err
log-bin=/var/log/mysql/mysql-bin
#配置不需要同步的数据库
binlog-ignore-db=mysql,infomation_schema
#配置本机的id
server-id=1
pid-file=/data/mysql/mysql.pid
character_set_server=utf8mb4
symbolic-links=0
explicit_defaults_for_timestamp=true
创建文件夹
mkdir /var/log/mysql
分配给用户组
其中mysql用户以及mysql组之前已经创建完成
chown mysql.mysql /var/log/mysql/
重启服务
service mysql restart
mysql登录后查看日志是否启动
mysql -uroot -p
show master status
创建用户给从服务器使用,让从服务器通过用户查看日志
create user r
把文件权限给r用户
GRANT FILE ON . TO ‘r’@’%’ identified by ‘123456’;
GRANT REPLICATION SLAVE ON . TO ‘r’@’%’ identified by ‘123456’;
刷新权限
FLUSH PRIVILEGES;
从数据库配置
编写/etc/my.cnf文件
[mysqld]
bind-address=0.0.0.0
port=3306
user=mysql
basedir=/usr/local/mysql
datadir=/data/mysql
socket=/tmp/mysql.sock
log-error=/data/mysql/mysql.err
log-bin=/var/log/mysql/mysql-bin
replicate-ignore-db=mysql,information_schema
slave-skip-errors=all
server-id=2
pid-file=/data/mysql/mysql.pid
character_set_server=utf8mb4
symbolic-links=0
explicit_defaults_for_timestamp=true
创建var/log/mysql目录
mkdir /var/log/mysql
设置权限
chown mysql.mysql /var/log/mysql/
重启Mysql服务
service mysql restart
切换到mysql的bin目录
cd /usr/local/mysql/bin/
进入mysql 输入密码
mysql -uroot -p
暂停服务
stop slave;
设置主从 主机IP
注意:
此处的master_host的ip地址是主数据库的ip地址。
此处的master_log_pos的值是主数据库使用show master status查询的position中查询的结果。
change master to master_host='192.168.202.132',master_user='r',master_password='123456',master_log_file='mysql-bin.000001',master_log_pos=3646;
启动服务
start slave;
使用Navicat测试主从复制是否成功
在主数据库Test_6中创建数据库b,刷新从数据库Test_7发现新建了数据库b,说明主从复制成功。