mysql 5.7主从同步gtid

  

环境:1、64年(主)linux centOS 7位
2,(从)linux centOS 7 64位
3 (mysql)最好要求版本一致,从库不能比主库版本高建议

5.7   

centos 7默然安装mariadb,安装mysql 5.7参考如下链接文档:
centos 7安装mysql 5.7: https://juejin。im/post/5 c088b066fb9a049d4419985(转载)
一,主库配置
1,更改主库配/etc/my . cnf中所做置文件

  
  vim/etc/my.cnf

  (mysqld)


lower_case_table_names=1
max_connections=7000
group_concat_max_len=202400
max_allowed_packet=128
#开启gtid功能

enforce-gtid-consistency gtid-mode==1
#设置server_id,一般设置为IP、注意要唯一
server_id=840
复制过滤:也就是指定哪个数据库不用同步(mysql库一般不同步)
replicate_wild_ignore_table=mysql. %
#指定哪个数据库同步,本次只同步newerp库
replicate_wild_do_table=newerp。%
#开启二进制日志功能,可以随便取,最好有含义关键就是这里了
log-bin=edu-mysql-bin
为每个会话分配的内存,在事务过程中用来存储二进制日志的缓存
binlog_cache_size=1 m
主从复制的格式混合,声明,行,默认格式是声明
binlog_format=和
二进制日志自动删除/过期的天数。默认值为0,表示不自动删除。
expire_logs_days=7
跳过主从复制中遇到的所有错误或指定类型的错误,避免奴隶端复制中断。
如:1062错误是指一些主键重复,1032错误是因为主从数据库数据不一致
slave_skip_errors=1062
master_info_repository=表
relay_log_info_repository=表

     

2,重启mysql数据库

  
  

systemctl重启mysqld      

3,创建同步账户和查看主信息

  
  

[tomcat@iZ2zeij9pa0qnzjt5wcr4kZ ~]美元msyql -uroot - p
输入密码:
mysql>格兰特复制奴隶“slave_account”@“%”被“123456”,
mysql>冲洗特权;
mysql>显示主状态\ G;
<强> <强> <强> <强> <强> <强> <强> <强> <强> <强> <强> <强> <强> 1。行
文件:edu-mysql-bin。000031
位置:1210791
Binlog_Do_DB: newerp
Binlog_Ignore_DB: mysql
Executed_Gtid_Set: 2 abeaffc - 6158 - 11 - e7 - 8222 - 00163 - e03196b: 1 - 16151
1行组(0.00秒)

     

错误:
没有查询指定

  

mysql>   

注:“slave_account”为主库创建同步用户,“123456”为数据库slave_account用户密码。
注:记录下文件:edu-mysql-bin。000031和位置:1210791,后面从库会使用到。

  

4, mysqldump导出newerp库到从库

  
  

, mysqldump -uroot -p123456 -hlocalhost——单独的事务——主数据=https://www.yisu.com/zixun/2 newerp>/数据/newerp_back.sql

     

写了一个脚本供参考

  
      <李>比;李DB_USER=皉oot"   <李>比;DB_PASS=?23456 !“李   <李>比;李DB_HOST=發ocalhost"   <李>比;DB_NAME=皀ewerp"李   <李>比;BIN_DIR=?usr/bin"李   <李>比;李BCK_DIR=?data"   <李>比;日期=<代码>日期+ Y % - % m - H % d_ % % - % S   <李>比;BIN_DIR/, mysqldump - u DB_USER美元- p DB_PASS - h DB_HOST美元——单独的事务——主数据=https://www.yisu.com/zixun/2——常规——flush-logs DB_NAME> BCK_DIR/DB_NAME美元。美元DATE.sql李   
  

5,把备份文件scp传到从库

  
  

scp - p 22312/数据/newerp_back。sql root@从库IP:/根/
密码:

     

主库配置完成,开始配置从库。

  

二,从库配置
1,从库/etc/my.cnf配置

  
  (mysqld)

  

gtid-mode=#上开启gtid, 5.6版本之后的功能

  

enforce-gtid-consistency=1   

server_id=3026 # id必填项,不要与主库id相同

  

replicate-ignore-db=mysql #表示不同步mysql库,可以写多个

  

replicate-do-db=newerp #表示只同步newerp库,可以写多个

     

2,更改完重启mysqld服务

  
  

systemctl重启mysqld      

3,导入newerp_back.sql数据

  
  

[root@localhost ~] # mysql -uroot - p & lt;/root/newerp_back.sql

     

4,进入mysql

  
  

mysql>修改主master_host=10.175.18.40, master_user=slave_account, master_password=?23456’, master_log_file=edu-mysql-bin.000031, master_log_pos=1210791;

  

mysql>开始的奴隶;#开启同步,停止奴隶停止同步,复位主重置主库信息

mysql 5.7主从同步gtid