centos7.三、MySQL5.7mysql
MySQL安装参考以前的文章https://www.jianshu.com/p/452aa99c7476有讲解。sql
MySQL 内建的复制功能是构建大型,高性能应用程序的基础。将 MySQL 的 数亿分布到到多个系统上去,这种分布的机制,是经过将 MySQL 的某一台主机的数据复制到其它主机( Slave )上,并从新执行一遍来实现的。复制过程当中一个服务器充当服务器,而一个或多个其它服务器充当从服务器。主服务器将更新写入二进制日志,并维护文件的一个索引以跟踪日志循环。这些日志能够记录发送到从服务器的更新。当一个从服务器链接主服务器时,它通知主服务器从服务器在日志中读取的最后一次成功更新的位置,从服务器接收从那时起发生的任何更新,而后封锁等等主服务器通知新的更新。请注意当你进行复制时,全部对复制中的表的更新必须在主服务器上进行。不然,你必需要当心,以免用户对主服务器上的表进行的更新与对服务器上的表所进行的更新之间的冲突数据库
若是是按照我写的文章安装的MySQL,那么my.cnf配置文件在/etc/目录下。若是不在,能够经过whereis命令搜索下 在my.cnf配置文件下添加以下配置centos
server_id=1 #指定MySQL的id
log-bin=mysql-bin #开启二进制日志文件
复制代码
在主服务器中执行该命令(这里容许了全部的地址访问,建议设置成从服务器的地址)bash
GRANT REPLICATION SLAVE ON *.* to 'replication'@'%' identified by 'Abc123...';
复制代码
server_id=2
log-bin=mysql-bin
binlog_do_db=db_test#表示要同步的数据库
复制代码
说明: binlog-ignore-db=test 表示不一样步 test 数据库 binlog_do_db=db_test#表示要同步的数据库服务器
主服务器和从服务器都重启ide
service mysqld restart
复制代码
show master status
复制代码
结果以下: 性能
这里有些信息须要记录下来,在配置从服务器时候须要用到 # 6、配置从服务器(链接 Master 服务器)ui
change master to master_host='192.168.74.129',master_user='replication',master_password='Abc123...',master_log_file='mysql-bin.000001',master_log_pos=2041;
复制代码
master_host是主服务器的ip master_port=3306(这里没有配置,默认3306) master_user:Master 服务器受权用户,也就是 Master 前面建立的那个用户 master_password:Master 服务器受权用户对应的密码 master_log_file:Master binlog 文件名 master_log_pos:Master binlog 文件中的 Postion 值 关于position值,这里作一个说明:若是主服务器已是有不少数据了的,那就先须要备份主服务器的数据到从服务器中,而后再使用命令show master status记录须要开始同步的位置。 # 7、开始复制 在从服务器中执行centos7
start slave
复制代码
中止的命令是:stop slave; # 8、查看从服务器状态
show slave status\G;
复制代码