MySQL 5.6.x 配置数据库主从复制

[转]http://blog.csdn.net/lwprain/article/details/10966837

备注: 在配置之前如果之前配置过主从没成功的话, 最好把master数据库目录下的mysql-bin.000000x 和 mysql-bin.index等, 以及salve下的relay-bin.00000x, relay-bin.index, log-bin 等删除了, 重启服务再配置

同步状态关键语句,每次主库重启都要在slave执行:

show master status;
CHANGE MASTER TO MASTER_HOST=‘192.168.0.45‘,MASTER_USER=‘slave_user‘,MASTER_PASSWORD=‘root‘;

如下操作均在vmware 虚拟机中winows xp 测试成功

中间走了很多弯路,网上的很多资料都是针对5.1以前的版本,在新版中根本无法使用,所以根据自己的实践整理了这篇文章

主服务:192.168.131.21

从服务器:192.168.131.22

1、主机的配置

my.ini中配置:

server-id=1
binlog_format="ROW"
log-bin=mysql-bin

启动服务后进入mysql命令行执行如下操作

GRANT ALL ON *.* TO ‘slave1‘@‘192.168.131.22‘  IDENTIFIED BY ‘123456‘;

如果需要进行某个数据库的同步的话,最好只创建对应数据库的权限,如:

GRANT ALL ON test1.* TO ‘slave1‘@‘192.168.131.22‘  IDENTIFIED BY ‘123456‘;

这样只会同步该数据库的内容。

2、从服务器设置

my.ini:

server-id=2
relay-log-purge=1
skip-slave-start
#此处为不同步mysql数据库的内容此处如果为多数据库的话中间以逗号分开
replicate-ignore-db=mysql 

然后启动mysql 进入命令行 执行如下命令

CHANGE MASTER TO MASTER_HOST=‘192.168.131.21‘, MASTER_USER=‘slave1‘,  MASTER_PASSWORD=‘123456‘;

3、启动主从复制

首先启动主服务器的服务

其次启动从服务器的服务

然后在从服务器命令行执行

start slave;

然后执行如下命令 查看从服务器状态

SHOW SLAVE STATUS\G

显示:

Slave_IO_Running: Yes
Slave_SQL_Running: Yes必须为yes才行

还要注意的是:

我在做从服务器时,是停止服务,然后整体复制的data目录,如果不进行任何修改的话,会出现如下提示:

[ERROR] Slave I/O: Fatal error: The slave I/O thread stops because master and slave have equal MySQL server UUIDs; these UUIDs must be different for replication to work. Error_code: 1593
121122 17:40:58 [Note] Slave I/O thread exiting, read up to log ‘FIRST‘, position 4

这个时候,应该删除data目录下的auto.cnf,然后重启服务

执行 start slave;即可

之后在主服务器上创建数据库

再从服务器上就可看到同步过来的数据了

还有如果更改从服务器的机器名的话 可这样这样执行命令:

stop slave;

reset slave;

start slave;

试试

时间: 2024-10-11 13:53:23

MySQL 5.6.x 配置数据库主从复制的相关文章

怎样解决MySQL数据库主从复制延迟的问题?

1.网络超时 2.慢查询 3.流量 问题一:主库的从库太多,导致复制延迟从库数据以3-5个为宜,要复制的从节点数量过多,会导致复制延迟问题二:从库硬件比主库差,导致复制延迟查看Master和Slave的系统配置,可能会因为机器配置不当,包括磁盘I/O.CPU.内存等各方面因素造成复制的延迟.一般发生在高并发大数据量写入场景中问题三:慢SQL语句过多假如一条SQL语句执行时间是20秒,那么从执行完毕到从库上能查到数据至少需要20秒,这样就延迟20秒了.一般要把SQL语句的优化作为常规工作不断地进行

mysql数据库主从复制部署笔记

数据库主从复制原理:数据库的主从复制就是从master数据库复制到slave数据库,在master与slave之间实现整个复制需要三个线程来完成,其中两个在slave端一个在master端.在master端必须打开binlog功能,因为从数据库需要获得主数据的完整的操作日志然后再自身上顺序的执行日志中的各种操作. 主要步骤:1.将slave的io线程连上master,请求获得指定日志文件的指定位置之后的操作日志的内容:2.master获得slave的io线程请求后,将请求中读取到的指定日志的指定

数据库主从复制配置

主服务器:IP地址192.168.56.128,mysql已经安装,无用户数据. 从服务器:IP地址192.168.56.129,mysql已经安装. 主服务器的mysql服务已经正常启动. 主从复制配置 主服务器上进行操作 (1)创建用户并授权 1    mysql -uroot -p密码 2    mysql>grant replication slave on *.* to [email protected] identified by 'mysql'; 3    mysql>flush

web服务文件更新自动同步、数据库主从复制、shell脚本实现网站代码备份和mysql备份

基搭建LAMP环境,并实践基于DNS做基于域名的虚拟主机中的环境,重新搭建一个同样的环境 要求: a)实现web服务文件更新的自动同步到另一台机器上 b)数据库实现主从复制 c)通过shell脚本实现网站源代码备份和mysql备份,备份策略包括全量备份.增量备份.差异备份 a,实现web服务文件更新的自动同步到另一台机器上: 1,在httpd服务器上建立基于FQDN的两个虚拟web站点,并创建相关目录. 2,修改测试windows主机的hosts文件,并编辑两个虚拟web站点对应的目录下的ind

Mysql实现数据库主从复制、主主复制、半同步复制

--------------Mysql实现数据库主从复制架构---------------- 一.环境准备: centos系统服务器2台.一台用户做Mysql主服务器,一台用于做Mysql从服务器,配置好yum源.防火墙关闭.各节点时钟服务同步.各节点之间可以通过主机名互相通信 192.168.41.145   master 192.168.41.137  slave 二.准备步骤: 1.iptables -F && setenforce 清空防火墙策略,关闭selinux 2.①vim

项目实战7—Mysql实现企业级数据库主从复制架构实战

Mysql实现企业级数据库主从复制架构实战 环境背景:公司规模已经形成,用户数据已成为公司的核心命脉,一次老王一不小心把数据库文件删除,通过mysqldump备份策略恢复用了两个小时,在这两小时中,公司业务中断,损失100万,老王做出深刻反省,公司也因此对于数据库的性能和可靠性提出更高要求. 要求对数据库进行改造,使其承载力进行提升,故障修复时间减少,有没有能实现的方案呢? Mysql实现数据库主从复制实战架构及其原理 1.实验架构及其原理 数据库高可用架构分为 主从:一主一从,一主多从,一主从

Mysql(Mariadb)数据库主从复制

Mysql主从复制的实现原理图大致如下: MySQL之间数据复制的基础是以二进制日志文件(binary log file)来实现的,一台MySQL数据库一旦启用二进制日志后,其作为master,它数据库中所有操作都会以“事件”的方式记录在二进制日志中,其他数据库作为slave通过一个I/O线程与主服务器保持通信,并监控master的二进制日志文件的变化,如果发现master二进制日志文件发生变化,则会把变化复制到自己的中继日志中,然后slave的一个SQL线程会把相关的“事件”执行到自己的数据库

怎样解决MySQL数据库主从复制延迟的问题

像Facebook.开心001.人人网.优酷.豆瓣.淘宝等高流量.高并发的网站,单点数据库很难支撑得住,WEB2.0类型的网站中使用MySQL的居多,要么用MySQL自带的MySQL NDB Cluster(MySQL5.0及以上版本支持MySQL NDB Cluster功能),或者用MySQL自带的分区功能(MySQL5.1及以上版本支持分区功能),我所知道的使用这两种方案的很少,一般使用主从复制,再加上MySQL Proxy实现负载均衡.读写分离等功能,在使用主从复制的基础上,再使用垂直切分

Mysql实现企业级数据库主从复制架构实战

Mysql实现企业级数据库主从复制架构实战