当前位置: 首页 > news >正文

设置系统同步 mysql_mysql主从同步设置

主机设置

/etc/my.cnf

#ID 必须唯一

server-id=1

##二进制文件名称前缀,生成的文件mysql-bin.000001,mysql-bin.000002

log-bin=mysql-bin

##记录目前有哪些mysql-bin文件 SHOW MASTER STATUS;

log-bin-index=master-bin.index

##有更新是否立即同步到日志,性能会低,但不会丢数据。

innodb_flush_log_at_trx_commit=1

sync_binlog=1

##二进制日志自动删除的天数。默认值为0,表示“没有自动删除”

expire_logs_days=10

##二进制文件大小,操作大小生成新文件存储(最小4096byte最大1073741824(1G)默认

max_binlog_size=1073741824

##同步哪些数据库

binlog-do-db=kintech_crm

binlog-do-db=kintech_eq

binlog-do-db=kintech_pd

binlog-do-db=kintech_sys

#二进制复制方式

binlog_format=ROW

#控制当服务器无法写入二进制日志时发生的情况,这可能导致主服务器日志变得不一致,从服务器会失去同步。

#IGNORE_ERROR忽略错误继续进行,ABORT_SERVER当发生错误不能写入二进制日志时,停止日志并关闭服务。

binlog_error_action=ABORT_SERVER

##下面配置不是必须的

##数据库编码

character-set-server=utf8

##忽略表ming大小写

lower_case_table_names=1

##开启慢查询日志,超过10秒则记录到日志

slow_query_log=1

long_query_time=10.000000

##默认值:128M 专用MySQL服务器设置的大小: 操作系统内存的70%-80%最佳。

##并不是设置的越大越好。设置的过大,会导致system的swap空间被占用,导致操作系统变慢,从而减低sql查询的效率。

innodb_buffer_pool_size=500M

创建用户

grant replication slave on *.* to repl@'%' identified by 'repl123@';

flush privileges;

备份数据

mysqldump -u root -p --databases mytest --master-data > dbdump.db

--master-data 这个参数比较重要

1:首先在备份之前它会调用 FLUSH TABLES WITH READ LOCK 锁住数据库,数据库就不能进行写操作了。

2:它会在备份文件最上面记录 CHANGE MASTER TO MASTER_LOG_FILE='mysql-bin.000002', MASTER_LOG_POS=154,红色的可能与你测试的不一样。

它记录了master服务器二进制日志的文件名与位置,也就是当前数据截止的位置,这样当slave启动以后,就从这个点开始复制数据。

3:然后备份数据到文件。

4:最后释放锁 UNLOCK TABLES;

将数据导入从机

scp /var/lib/mysql/dbdump.db root@192.168.80.120:/home/mysqldata/

重启主机

FLUSH TABLES WITH READ LOCK;

SHOW MASTER STATUS;(mysql-bin.000002 154)

UNLOCK TABLES;

修改从机

my.ini

#唯一ID

server-id=2

#中继日志

relay-log=slave-relay-bin

relay-log-index=slave-relay-bin.index

#二进制日志自动删除的天数。默认值为0,表示“没有自动删除”

expire_logs_days=10

relay_log_recovery=ON

relay_log_info_repository=TABLE

重启

CHANGE MASTER TO

MASTER_HOST='101.200.50.31',

MASTER_USER='repl',

MASTER_PASSWORD='repl123@',

MASTER_LOG_FILE='mysql-bin.000007',

MASTER_LOG_POS=154;

mysql> START SLAVE;

mysql> show slave status;

相关文章:

  • mysql自动增长恢复_mysql自动增长的有关问题,怎么恢复从1开始
  • kettle mysql jdbc_kettle 连接 mysql8
  • .mysql secret在哪_MySQL如何使用索引
  • json to mysql_JsonToMysql(JSON导入MySQL工具) V1.6 官方版
  • MySQL与CVM自建数据库优势_UCloud云数据库MySQL产品优势及与自建数据库对比
  • mysql中的like函数_mysql中regexp_like函数的用法
  • mysql 分表条件_MySQL优化(一):MySQL分库分表
  • mysql专业人数_mySQL算出一个或两个以上的人数?
  • pdo mysql防注入_pdo如何防止 sql注入
  • 脉冲超声波 发射脉宽_超声波液位计和雷达液位计到底有什么不同
  • python通过什么来判断当前程序是否在_python3怎么判断进程是否存在
  • php mysql搭建个人博客_Docker最全教程之使用PHP搭建个人博客站点(二十二)
  • arcgis gp 选择图层_ArcGIS Engine实现图层间空间选择的优化策略
  • mysql 8安装 windows xp_Windows XP下安装和配置Apache2.2.22服务器+PHP5+Mysql5
  • python怎么强制转换_Python如何实现强制数据类型转换
  • 《剑指offer》分解让复杂问题更简单
  • 【EOS】Cleos基础
  • 【Linux系统编程】快速查找errno错误码信息
  • Druid 在有赞的实践
  • ECMAScript 6 学习之路 ( 四 ) String 字符串扩展
  • ES6系统学习----从Apollo Client看解构赋值
  • Java应用性能调优
  • magento2项目上线注意事项
  • MobX
  • nginx(二):进阶配置介绍--rewrite用法,压缩,https虚拟主机等
  • 从零开始的webpack生活-0x009:FilesLoader装载文件
  • 开源中国专访:Chameleon原理首发,其它跨多端统一框架都是假的?
  • 爬虫进阶 -- 神级程序员:让你的爬虫就像人类的用户行为!
  • 通过来模仿稀土掘金个人页面的布局来学习使用CoordinatorLayout
  • 验证码识别技术——15分钟带你突破各种复杂不定长验证码
  • 阿里云ACE认证之理解CDN技术
  • 如何在 Intellij IDEA 更高效地将应用部署到容器服务 Kubernetes ...
  • #图像处理
  • $forceUpdate()函数
  • (06)金属布线——为半导体注入生命的连接
  • (2020)Java后端开发----(面试题和笔试题)
  • (32位汇编 五)mov/add/sub/and/or/xor/not
  • (九)c52学习之旅-定时器
  • (免费分享)基于springboot,vue疗养中心管理系统
  • (亲测成功)在centos7.5上安装kvm,通过VNC远程连接并创建多台ubuntu虚拟机(ubuntu server版本)...
  • (十六)串口UART
  • (五) 一起学 Unix 环境高级编程 (APUE) 之 进程环境
  • (转)原始图像数据和PDF中的图像数据
  • **登录+JWT+异常处理+拦截器+ThreadLocal-开发思想与代码实现**
  • .NET BackgroundWorker
  • .NET CLR基本术语
  • .Net IE10 _doPostBack 未定义
  • .NET/C# 中你可以在代码中写多个 Main 函数,然后按需要随时切换
  • .Net6使用WebSocket与前端进行通信
  • .NET的微型Web框架 Nancy
  • .net经典笔试题
  • @Autowired注解的实现原理
  • @EnableWebMvc介绍和使用详细demo
  • @for /l %i in (1,1,10) do md %i 批处理自动建立目录
  • [ C++ ] 继承