MySQL主从同步

Posted hejian2836

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MySQL主从同步相关的知识,希望对你有一定的参考价值。

多实例mysql主从复制:

主库Master 3306
从库Slave 3307
IP : 10.0.0.120

一,创建复制账号

1,在主库和从库(为了集群纵向扩展用)上都添加用于主从复制的账号

grant replication slave on *.* to 'rep'@'10.0.0.%' identified by '123Qwe';

二,配置主库和从库

2,在主库上设置server-id,并开启binlog日志,
在/3306/my.cnf中

log-bin = /data/3306/mysql-bin
server-id=1

3,为了防止数据持续写入,对主库进行锁表。

flush table with read lock;

首先把主库中的数据备份导入到从库中,为了防止数据不一致的情况,给主库加锁,不让用户写入数据
4,查看当前主库的状态

mysql> show master status;
+------------------+----------+--------------+------------------+
| File             | Position | Binlog_Do_DB | Binlog_Ignore_DB |
+------------------+----------+--------------+------------------+
| mysql-bin.000005 |     3533 |              |                  |
+------------------+----------+--------------+------------------+

5,备份主库的数据,并把数据导入到从库中

mysqldump -uroot -p123456 -S /data/3306/mysql.sock -A -B --events --master-data=2 >/home/hejian/rep.sql
mysql -uroot -p123456 -S /data/3307/mysql.sock < /home/hejian/rep.sql

6,备份完之后给主库的表解锁

unlock tables;

7,登录从库服务器的mysql,查看从库服务状态

show slave status\G;

8,停止从库

stop slave;

9,在从库中写入到master.info里

CHANGE MASTER TO
MASTER_HOST='10.0.0.120',
MASTER_PORT=3306,
MASTER_USER='rep',
MASTER_PASSWORD='123qwe',
MASTER_LOG_FILE='mysql-bin.000005',
MASTER_LOG_POS=3533;

10,打开从库

slave start;

11,查看线程运行状态:

show processlist\G

以上是关于MySQL主从同步的主要内容,如果未能解决你的问题,请参考以下文章

MYSQL管理之主从同步管理

mysql1.6(主从同步,数据读写分离,mysql优化)

MySQL主从同步实验

MySQL的3节点主从同步复制方案

mysql主从同步

MySQL的3节点主从同步复制方案