查询系统是否有安装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;