mysql 主从复制
mysql 默认有主从集群
复制的基本原理:
slave 会从master读取binlog 来进行数据同步
Mysql复制过程分为三步:
1.master将改变记录到二进制日志(binary log)。这些记录过程叫做二进制日志事件,binary log events;
2.slave将master的binary log events拷贝到它的中继日志(relay log);
3.slave重做中继日志的事件,将改变应用到自己的数据库中。Mysql复制是异步的且串行化的
复制的基本原则:
每个slave只有一个master
每个slave只能有一个唯一的服务器id
每个master可以有多个slave
必须要在主数据库中有一个用户具有被从数据库操作的权限
一主一从配置:
mysql版本最好一致,服务器双向ping通
主机:
修改my.cnf配置文件:
[mysqld]
主服务器唯一ID:server-id=1
启用二进制日志:log-bin=mysql-bin
重启数据库 service mysqld restart
进入数据库 mysql -u root -p123
将从机的IP配置给主机
grant all privileges on *.* to 'root'@'10.1.2.150' identified by '123' with grant option;
查看执行结果:
通过命令可以观察主数据库在主从关系中的状态
show master status;
从机:
修改my.cnf配置文件:
server-id=2
重启mysql
进入mysql 操作slave
关闭slave stop slave
配置master信息:
master_log_file 和上面的File一致
change master to master_host='10.1.2.149',master_user='root',master_password='123',master_log_file='master_log.000001';
开启slave
start slave
显示slave状态
show slave status \G
没有报错,说明成功
接下来可以测试主从了
下一篇: Web服务器