MySQL 主从同步配置
2017-01-01 11:18
543 查看
环境
两台虚拟机,一主一从,防火墙要放开(可以直接关闭防火墙)
关闭防火墙
安装 MySQL Linux下yum安装MySQL yum安装MySQL指定版本.note ,Blog:Linux下yum安装MySQL yum安装MySQL指定版本
master 配置
1. 拷贝并修改配置文件
2. 修改master上的配置文件 my.cnf
在[mysqld]下添加如下字段:
3. 在master上为slave添加一个同步账号
grant replication slave on *.* to 'jerome'@'*' identified by 'jeromepassword';
4. 重启master的mysql服务
service mysqld restart; 查看master日志情况:show master status\G;
slave 配置
1. 拷贝并修改配置文件
2. 修改slave上的配置文件my.cnf。
在[mysqld]下添加如下字段:记得把原先的server-id注释掉。
3. 重启mysql服务
service mysqld restart;
4. 启动slave并查看slave情况
如果Slave_IO_Running、Slave_SQL_Running状态为Yes则表明设置成功
问题
问题1:Slave_IO_Running: No或者Slave_SQL_Running: No
1. 停掉slave服务
2. 解决办法解决办法1a.在master上查看。mysql> show master status\G;*************************** 1. row ***************************File: mysql-bin.000002Position: 106Binlog_Do_DB: testBinlog_Ignore_DB:1 row in set (0.00 sec)b.到slave上手动同步。mysql>change master to master_log_file='mysql-bin.000002',master_log_pos=106;Query OK, 0 rows affected (0.00 sec)mysql> slave start;#查看是否都是YES
mysql> show slave status\G;
解决方法2mysql> slave stop;mysql> SET GLOBAL SQL_SLAVE_SKIP_COUNTER=1;mysql> slave start;#查看是否都是YESmysql> show slave status\G;
以上如果还是显示Slave_IO_Running:NO,可以多次查看show slave status\G;发现有报错信息,大概意思是server_id不能和主库一样1. 停止slave并查看当前server_id 停止:slave stop; 查看server_id:show variables like 'server_id';2. 修改server_id并启动salve 修改:set global server_id=2; 启动:slave start; 查看是否为YES了:show slave status\G;
其他
Slave_IO_Running:连接到主库,并读取主库的日志到本地,生成本地日志文件 Slave_SQL_Running:读取本地日志文件,并执行日志里的SQL命令。
常用命令:
两台虚拟机,一主一从,防火墙要放开(可以直接关闭防火墙)
关闭防火墙
123456 | su root service iptables stop #关闭防火墙 service iptables status #验证是否关闭 chkconfig iptables off #关闭防火墙的开机自动运行 chkconfig –list | grep iptables #验证防火墙的开机自动运行 vim /etc/sysconfig/selinux # 禁用selinux,将SELINUX=disabled |
master 配置
1. 拷贝并修改配置文件
1 | cp /user/share/mysql/my-medium .cnf /etc/my .cnf |
在[mysqld]下添加如下字段:
1234567 | server- id =1 log-bin=log #需要同步的数据库 binlog- do -db= test # binlog-do-db=test2 #被忽略的数据库 binlog-ignore-db=mysql |
grant replication slave on *.* to 'jerome'@'*' identified by 'jeromepassword';
4. 重启master的mysql服务
service mysqld restart; 查看master日志情况:show master status\G;
slave 配置
1. 拷贝并修改配置文件
1 | cp /user/share/mysql/my-medium .cnf /etc/my .cnf |
在[mysqld]下添加如下字段:记得把原先的server-id注释掉。
1234567891011 | server- id =2 master-host=192.168.17.128 master-user= jerome master-password= jeromepassword master-port=3306 master-connect-retry=60 #需要同步的数据库 binlog- do -db= test # binlog-do-db=test2 #被忽略的数据库 binlog-ignore-db=mysql |
service mysqld restart;
4. 启动slave并查看slave情况
123 | mysql -uroot -proot; mysql>start slave; mysql>show slave status\G; |
问题
问题1:Slave_IO_Running: No或者Slave_SQL_Running: No
1. 停掉slave服务
12 | mysql> slave stop; Query OK, 0 rows affected (2.01 sec) |
mysql> show slave status\G;
解决方法2mysql> slave stop;mysql> SET GLOBAL SQL_SLAVE_SKIP_COUNTER=1;mysql> slave start;#查看是否都是YESmysql> show slave status\G;
以上如果还是显示Slave_IO_Running:NO,可以多次查看show slave status\G;发现有报错信息,大概意思是server_id不能和主库一样1. 停止slave并查看当前server_id 停止:slave stop; 查看server_id:show variables like 'server_id';2. 修改server_id并启动salve 修改:set global server_id=2; 启动:slave start; 查看是否为YES了:show slave status\G;
其他
Slave_IO_Running:连接到主库,并读取主库的日志到本地,生成本地日志文件 Slave_SQL_Running:读取本地日志文件,并执行日志里的SQL命令。
常用命令:
1234 | slave stop; reset slave; slave start; show slave status\G; |
相关文章推荐
- mysql数据库备份设置延时备份方法(mysql主从配置)
- 乌班图系统mysql主从备份 知识点
- ubuntu 14.04 mysql 主从配置
- MYSQL 主从服务器配置
- Linux学习笔记12——配置ftp、squid、Tomcat、Samba、MySQL主从
- windows 下面 配置 mysql 主从数据库
- MySQL 主从配置和基于Spring 的读写分离
- linux下mysql主从配置
- mysql主从配置实例
- mysql主从配置
- mysql的主从配置
- MySQL主从配置实例
- mysql主从配置
- day 60 MySQL主从配置
- MySQL5.7主从配置
- mysql主从配置指定端口
- Linux下mysql主从配置
- mysql主从配置
- mysql主从配置
- linux下mysql的主从配置