MySQL主从又叫作Replication、AB复制。简单讲就是A和B两台机器作主从后,在A上写数据,另一台B也会跟着写数据,二者数据实时同步的mysql
MySQL主从是基于binlog的,主上须开启binlog才能进行主从。linux
主从过程大体有3个步骤sql
1)主将更改操做记录到binlog里测试
2)从将主的binlog事件(sql语句)同步到从本机上并记录在relaylog里spa
3)从根据relaylog里面的sql语句按顺序执行线程
主上有一个log dump线程,用来和从的I/O线程传递binlogserver
从上有两个线程,其中I/O线程用来同步主的binlog并生成relaylog,另一个SQL线程用来把relaylog里面的sql语句落地事件
安装mysql同步
修改my.cnf,增长server-id=116和log_bin=aminglinux1it
修改完配置文件后,启动或者重启mysqld服务
把mysql库备份并恢复成aming库,做为测试数据
mysqldump -uroot mysql > /tmp/mysql.sql
mysql -uroot -e “create database aming”
mysql -uroot aming < /tmp/mysql.sql
建立用做同步数据的用户
flush tables with read lock;
show master status;
安装mysql
查看my.cnf,配置server-id=132,要求和主不同
修改完配置文件后,启动或者重启mysqld服务
把主上aming库同步到从上
能够先建立aming库,而后把主上的/tmp/mysql.sql拷贝到从上,而后导入aming库
start slave;
还要到主上执行 unlock tables
主上 mysql -uroot aming
use aming; 进入aming库
show tables; 列出aming库里全部的表
select count(*) from db; 查看某个表的信息
truncate table db; 清空某个表
到从上 mysql -uroot aming
use aming; 进入aming库
show tables; 列出aming库里全部的表
select count(*) from db; 查看某个表的信息
主上继续drop table db; 删除某个表
从上查看db表