查询系统是否有安装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
原文地址:http://fly520.blog.51cto.com/2181586/1695817