Mysql主从模式搭建

Mysql有很多模式,ndbcluster,主从,主主等等...

Mysql主从模式的好处,可以实现读写分离,提供更大的并发响应,与nginx结合还可以达到负载均衡的作用。

主从时间通过binlog进行数据的同步,以下是数据同步的主要步骤

首先,Master会将改变记录到二进制日志(binary log)中(改变的记录叫做二进制日志事件,binary log events)
然后,slave将master的binary log events拷贝到它自己的中继日志中(relay log)
最后,slave重做中继日志中的事件,将改变反映到自身的数据中。

环境:1个Master,1个slave

具体步骤:

1. Master上进行如下配置vi /etc/my.cnf

[mysqld]
server-id=1 
read-only=0 #0代表支持可读可写 
binlog-do-db=test #如果此句注释就是除了禁止同步的数据库,均进行同步 
binlog-ignore-db=mysql #禁止同步的数据库

扫描二维码关注公众号,回复: 1247496 查看本文章

2. Slave上进行如下配置vi /etc/my.cnf

server-id=2    
binlog-do-db=test  #更新的数据库
binlog-ignore-db=mysql  #不更新的数据库
read_only=1       #从数据库只读
slave-skip-errors=1064 1146   #该项可以忽略一些不想记录的错误

 3. Master上建立帐户并授权给Slave

GRANT REPLICATION SLAVE ON *.* to 'username'@'SlaveIP' identified by 'password';

    执行show master status;File下面的例如mysql-bin.000001(需要同步的log文件)  Position 112(偏移量)

4. Slave上进行同步

mysql>change master to master_host='MasterIP',master_user='username',master_password='password',master_log_file='mysql-bin.000001',master_log_pos=112;
#指定主节点以及同步的log-bin文件和偏移量

mysql>start slave;
#启动从节点

show slave status\G
#查看slave的状态
注意:Slave_IO及Slave_SQL进程必须正常运行,即YES状态,否则都是错误的状态

  

猜你喜欢

转载自zhao-rock.iteye.com/blog/1990846