mysql5.5和mysql5.6能进行主从同步吗

mysql5.5和mysql5.6能进行主从同步吗,第1张

Mysql5.5和Mysql5.6主从同步设置

主服务器(MySQL5.5)

从服务器(MySQL5.6)

1、在主库创建从库用户

insert into mysql.user(Host,User,Password) values('localhost','slaveuser',password('123456'))

flush privileges

grant replication slave on *.* to 'slaveuser' ' identified by '123456' with grant option

2、修改主库配置文件my.cnf

#编辑配置文件,在[mysqld]部分添加下面内容

vi /etc/my.cnf

#设置服务器id

server-id=80

#启动MySQ二进制日志系统

log_bin=mysql-bin

#需要同步的数据库名,如果有多个数据库,可重复此参数,每个数据库一行

binlog-do-db=api

#不同步mysql系统数据库

binlog-ignore-db=mysql

#重启MySQL

service mysqld restart

#进入mysql控制台

mysql -u root -p

#查看主库同步状态

show master status\G

3、修改从库配置文件my.cnf(保证主从server-id不一样,一般用ip最后的字段)

vi /etc/my.cnf

#设置服务器id

server-id=90

3、从库增加配置

#进入mysql控制台

mysql -u root -p

#停止slave同步进程

stop slave

#执行同步语句

change master to master_host=' ',master_user='slaveuser',master_password='123456',master_log_file='mysql-bin.000001' ,master_log_pos=

#开启slave同步进程

start slave

#查看从库同步状态

show slave status\G

Slave_SQL_Running: No mysql同步故障解决

如果数据不同步可以尝试该资料

mysql>show slave status\G

Slave_IO_Running: Yes

Slave_SQL_Running: No

Last_Errno: 1062

....

Seconds_Behind_Master:NULL

原因:

1.程序可能在slave上进行了写 *** 作

2.也可能是slave机器重起后,事务回滚造成的.

解决办法I:

1.首先停掉Slave服务:slave stop

2.到主服务器上查看主机状态:

记录File和Position对应的值。

mysql>show master status

+------------------+-----------+--------------+------------------+

| File | Position | Binlog_Do_DB | Binlog_Ignore_DB |

+------------------+-----------+--------------+------------------+

| mysql-bin.000020 | 135617781 | | |

+------------------+-----------+--------------+------------------+

1 row in set (0.00 sec)

3.到slave服务器上执行手动同步:

mysql>change master to

>master_host='master_ip',

>master_user='user',

>master_password='pwd',

>master_port=3307,

>master_log_file='mysql-bin.000020',

>master_log_pos=135617781

1 row in set (0.00 sec)

mysql>slave start

1 row in set (0.00 sec)

再次查看slave状态发现:

Slave_IO_Running: Yes

Slave_SQL_Running: Yes

...

Seconds_Behind_Master: 0

解决办法II:

mysql>slave stop

mysql>set GLOBAL SQL_SLAVE_SKIP_COUNTER=1

mysql>slave start

版本一致,是官方推荐的方式;slave至少要和master的版本前两个号相同,可高于master; 版本不一致,可能出现的问题就是同步的不稳定(兼容性的老问题),因为会在某些函数处理、日志读娶日志的解析重演等上发生异常,导致同步报错而需手工处理。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/7192008.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-02
下一篇 2023-04-02

发表评论

登录后才能评论

评论列表(0条)

保存