码迷,mamicode.com
首页 > 数据库 > 详细

LNMP之Mysql主从复制(四)

时间:2015-09-17 21:45:07      阅读:260      评论:0      收藏:0      [点我收藏+]

标签:mysql   service   客户端   主从复制   服务端   

查询系统是否有安装mysql,如有则移除。

rpm -qa | grep mysql

 

移除已安装的mysql:

yum remove mysql-libs-5.1.66-2.el6_3.x86_64

 

安装需要的插件:

yum install perl perl-devel libaio libaio-devel

 

安装MySQL-shared-compat 替换mysql-libs,如果不替换,在删除mysql-libs,会提示postfix依赖于mysql-libs

rpm -ivh MySQL-shared-compat-5.6.26-1.el6.x86_64.rpm

 

安装服务端:

rpm -ivh MySQL-server-5.6.26-1.el6.x86_64.rpm

 

安装客户端:

rpm -ivh MySQL-client-5.6.26-1.el6.x86_64.rpm

 

 

启动mysql

service mysql start

 

停止mysql

service mysql stop

 

获取root的密码:
more /root/.mysql_secret 

 

修改root密码并删除匿名账户:

/usr/bin/mysql_secure_installation--user=mysql

 

修改主服务器配置文件my.cnf:

 

#唯一性,不能重复
server-id = 1
#二进制日志文件
log-bin=mysql-bin
 
#二进制格式改为行row模式,三种模式statement语句模式,row行模式,mixed混合模式
#当设置隔离级别为READ-COMMITED必须设置二进制日志格式为ROW
#现在MySQL官方认为STATEMENT这个已经不再适合继续使用;但mixed类型在默认的事务隔离级别下,可能会导致主从数据不一致;
binlog_format=row  

#slave更新是否记入日志
log-slave-updates=true
#启用gtid类型,否则就是普通的复制架构       
gtid-mode=on
#强制GTID的一致性                  
enforce-gtid-consistency=true
#主服信息记录库=表或文件    
master-info-repository=TABLE
#中继日志信息记录库     
relay-log-info-repository=TABLE  
#同步主库信息
sync-master-info=1
# 开启基于库的多线程复制.默认是0,不开启,最大并发数为1024个线程        
slave-parallel-workers=4
#校验码            
binlog-checksum=CRC32
#主服校验            
master-verify-checksum=1
#从服校验          
slave-sql-verify-checksum=1
#二进制日志详细记录事件       
binlog-rows-query-log_events=1
#提供复制报告端口    
report-port=3306
# 提供复制报告主机               
report-host=192.168.2.61


# 以下是对二进制日志一些设置  
binlog_cache_size = 4M  
max_binlog_size = 1G  
max_binlog_cache_size = 2G


# 启用这个参数,可用于在二进制日志记录事件相关的信息,可降低故障排除的复杂度  
# 只对row binlog格式有效.启用后,会向binlog中写入更多的调试信息,比如sql语句自身都会被写进去. mysqlbinlog -vv 可以看到.  
binlog-rows-query-log_events=1  

# 这两个是启用relaylog的自动修复功能,避免由于网络之类的外因造成日志损坏,主从停止.  
relay_log_purge = 1  
relay_log_recovery = 1 

 

 

 

 

修改从服务器配置文件my.cnf:

 

server-id = 2
log-bin=mysql-bin
binlog_format=row
log-slave-updates=true         
gtid-mode=on   
enforce-gtid-consistency=true
master-info-repository=TABLE
relay-log-info-repository=TABLE
sync-master-info=1
slave-parallel-workers=4
binlog-checksum=CRC32
master-verify-checksum=1
slave-sql-verify-checksum=1
binlog-rows-query-log_events=1

binlog_cache_size = 4M  
max_binlog_size = 1G  
max_binlog_cache_size = 2G
binlog-rows-query-log_events=1
relay_log_purge = 1  
relay_log_recovery = 1

report-port=3306
report-host=192.168.2.63

 

进入mysql:

mysql -u root –p

 

创建复制账户并授权:

grant replication slave on *.* to ‘mysql‘@‘192.168.2.%‘identified by ‘mysql‘;

flush privileges;   #重加载权限

 

从库连接主库:

change master to master_host=‘192.168.2.61‘,master_user=‘mysql‘,master_password=‘mysql‘, master_port=3306,master_auto_position=1;

start slave;

 

 

 

查看状态:

show global variables like ‘%uuid%

show processlist;

show databases;

show slave status\G;

show master status\G;


本文出自 “IT梦工厂” 博客,请务必保留此出处http://fly520.blog.51cto.com/2181586/1695817

LNMP之Mysql主从复制(四)

标签:mysql   service   客户端   主从复制   服务端   

原文地址:http://fly520.blog.51cto.com/2181586/1695817

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!