db01服务器
1.修改mysql配置文件
#vim /etc/my.cnf
在[mysqld]部分插入如下两行:
[mysqld]
log-bin=mysql-bin #开启二进制日志
server-id=1 #设置server-id
2.重启mariadb,创建同步的用户账号
重启数据库
systemctl restart mariadb.service
打开mariadb
mysql -u root -p123456
创建有复制权限的用户账号
GRANT REPLICATION SLAVE ON *.* TO 'db02'@'172.16.1.52' IDENTIFIED BY '123456';
刷新
flush privileges;
3..查看master状态
重启服务
systemctl restart mariadb.service
查看状态
mysql -u root -p123456
SHOW MASTER STATUS;
4.操作完成将主数据库的所有数据移出库,传输到db02服务器
导出数据库
mysqldump -uroot -p123456-A > /tmp/backup.sql
远程传输
scp -rp /tmp/backup.sql 172.16.1.52:/tmp
db02服务器
1.下载数据库
yum install mariadb-server mariadb -y
systemctl start mariadb.service
systemctl enable mariadb.service
2.编辑mysql的配置文件,重启服务
# vim /etc/my.cnf
[mysqld]
log-bin=relay-bin
server-id=2 #server-id是要指定的,不然会报错,每一台指定一个唯一标识符
systemctl restart mariadb.service
3.进入数据库将主数据库数据导入从数据库中
设置mysql密码
mysqladmin -uroot password "123456"
不用进数据库修改
mysql -uroot -p123456 </tmp/backup.sql
进数据库
mysql -u root -p123456
将主数据库数据导入从数据库中
source /tmp/backup.sql;
查看是否成功
show databases;
刷新
flush privileges;
重启服务
systemctl restart mariadb.service
4.打开mysql会话,执行同步SQL语句,要看db01的MASTER_LOG_FILE和MASTER_LOG_POS是多少
CHANGE MASTER TO
MASTER_HOST='172.16.1.51',
MASTER_USER='db02',
MASTER_PASSWORD='123456',
MASTER_LOG_FILE='mysql-bin.000001',
MASTER_LOG_POS= 553;
5 .验证是否成功
要看到有2个yes才可以
查看状态
show slave status\G;
启动slave同步进程
start slave;
验证是否成功
show slave status\G;
未经博主允许,不得转载
网友评论