MySQL主从同步

13年我做了一些系统管理员的工作,整理一下以前的文档。


主库:192.168.0.1

从库:192.168.0.2

主库 my.cnf

log-bin=mysql-bin
server-id       = 1
binlog-ignore-db=mysql

从库 my.cnf

log-bin=mysql-bin
server-id       = 2
#不同步的表
replicate_wild_ignore_table = db_name.tb_name

主库执行

GRANT REPLICATION SLAVE ON *.* TO 'username'@'192.168.0.2' IDENTIFIED BY 'password';

从库执行

change master to master_host='192.168.0.1', master_user='username', master_password='password', master_port=33306;

此语句生成或修改master.info,从库根据master.info文件进行同步,master.info被人为修改或删除后,需要重新备份主库。

主库的第一次备份到从库

--master-data也可用--delete-master-logs代替,此参数同时删除主库的bin log,会影响正在进行复制的从库。

/path/to/mysqldump --add-drop-database --add-drop-table --allow-keywords --routines --socket=/path/to/mysql.sock --master-data --quick --single-transaction --user=root --password --databases db_name > backup.sql

从库开始或停止同步

start/stop slave

查看主库状态(主库执行)

show master status

查看从库状态(从库执行)

show slave status


你可能感兴趣的:(MySQL主从同步)