mysql 主从同步

配置master库

  1. 编辑配置文件:vim /etc/my.cnf
    [mysqld]
    server-id=1 # 主库标识
    log-bin=mysql-bin # 同步日志名称
    binlog-do-db=test_db # 指定同步数据库

  2. 登录数据库并授权
    mysql> grant replication slave on . to ‘slave’@‘从库IP’ identified by ‘12345678’; # 常见用于主从同步的账号
    mysql> flush privileges; # 刷新用户权限

  3. 重启master的mysql服务:systemctl restart mysqld

  4. 登录数据库并查看同步日志的名称以及文件位置
    mysql> show master status;

配置slave库

  1. 编辑配置文件:vim /etc/my.cnf

    [mysqld]
    server-id=2
    log-bin=mysql-bin
    relay-log=relay-log-bin # 中继日志文件名
    relay-log-index=slave-relay-bin.index # 中继日志的索引文件名

  2. 重启slave的mysql服务:systemctl restart mysqld

  3. 登录数据库并配置
    mysql> change master to master_host=‘主库IP’, master_port=3306, master_user=‘slave’, master_password=‘12345678’, master_log_file=‘mysql-bin.000005’, master_log_pos=382678;
    mysql> start slave;
    mysql> show slave status\G;

若状态中出现:

Slave_IO_Running: Yes
Slave_SQL_Running: Yes 则表明主从同步成功

备注

为了保证master-slave数据一致,需在主库上加锁,使其只有只读权限,待复制库完成后再解锁

mysql> flush tables with read lock;	# 加锁,使其只有只读权限
mysql> unlock tables;	# 解锁库
mysqldump testdb -uroot -p123456 --add-drop-table | mysql -h 192.168.1.22 newdb -u root -p123456;	# 复制库
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值