本文共 1170 字,大约阅读时间需要 3 分钟。
MySQL复制(Replication)工作原理:Slave端通过将Master端的binlog利用I/O线程通过网络复制到Slave端,然后再通过SQL线程解析Binlog中的日志并应用到数据库中来实现。
1)物理环境
master A 172.16.100.106 slave B 172.16.100.108
2)Maser端的配置
在主服务器上建mysql用户,使其从服务器能够远程登录主服务器 grant replication slave on *.* to'david'@'172.16.100.108'identified by 'mysql'
编辑主服务器的配置文件 /etc/my.cnf server-id = 1 log-bin = mysql-bin binlog-ignore = mysql //mysql数据库不同步 binlog-ignore-db = information_schema binlog-do-db = firstdb //同步l数据库,默认同步所有数据库
新建同步的数据库 create database firstdb;
查看主数据库的状态
3)Slave配置
新建同步的数据库 create database firstdb; /和主数据库的数据库名称必须一致
修改mysql主配置文件 server-id = 2 并重启mysql数据库 change master to master_host=’172.16.100.106’, master_port=3306 master_user='david', master_password='mysql’, master_log_file=’mysql-bin.000014’, / master_log_file的值在master用show master status 看到的值必须一致 master_log_pos=317; / master_log_pos的值在master用show master status 看到的值必须一致
4) 验证从服务器设置是否成功,登录从服务器 mysql〉show slave status\G; 能看到 Slave_IO_Running: Yes Slave_SQL_Running: Yes 即可
mysql主从同步常见故障问题:
1)给master授权slave主机登陆权限,在登陆的时候出错 编辑master的配置文件在[mysqld]下面添加 skip-name-resolve 2)在从服务器上面show slave status\G;出现1236错误排错办法: 重启主库 给从库重新授权 执行以下命令 slave stop; reset slave; slave start;
转载地址:http://snevl.baihongyu.com/