首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏Stephen

    MySQL优化之实现MySQL主从复制

    MySQL主从复制 解决的问题 数据分布 负载均衡 备份 高可用性和容错性 实现原理 MySQL支持单向、异步复制,复制过程中一个服务器充当主服务器,而一个或多个服务器充当从服务器 MySQL复制基于主服务器在二进制日志中跟踪所有对数据库的更改 、Oracle、DB2、SQL Server、PostgreSQL等DB的常见SQL语法 遵守MySQL原生协议,跨语言,跨平台,跨数据库通用中间件代理 基于心跳的自动故障切换,支持读写分离,支持MySQL 重启mysql,然后进入mysql,查看主服务器状态 show master status reset master 配置从机,vim /etc/my.conf,再重启mysql # log-bin=mysql-bin #binlog_format=mixed server-id=2 relay_log=mysql-relay-bin expire_logs_days =10 early-plugin-load="" 双主热备配置 log-bin=mysql-bin binlog_format=mixed server-id=2 relay_log

    74120编辑于 2022-06-07
  • 来自专栏码农小胖哥的码农生涯

    MySQL性能优化(五)-- 主从复制

    实现整个主从复制,需要由Master服务器上的IO进程,和Slave服务器上的Sql进程和IO进程共从完成。 要实现主从复制,首先必须打开Master端的binary log(bin-log)功能,因为整个 MySQL 复制过程实际上就是Slave从Master端获取相应的二进制日志,然后再在自己slave端完全顺序的执行日志中所记录的各种操作 (2)重启mysql:service mysql restart (3)查看master的状态:show master status; ? .* to 'root'@'slave的IP' identified by 'slave的mysql密码' with grant option; FLUSH PRIVILEGES; (2)让slave连接 .000085 -d 数据库名 mysql-bin.000085 -v|grep UPDATE | wc -l 2.查看中继日志(和查看二进制日志是同一个命令): mysql> show relaylog

    1.1K10发布于 2019-12-10
  • 来自专栏性能与架构

    Mysql 主从复制日志参数优化

    MySQL的复制(Replication),实际上就是通过将Master端的Binlog利用IO线程通过网络复制到Slave端,然后再通过SQL线程解析Binlog中的日志并应用到数据库中来实现的 所以 ,Binlog量的大小对IO线程及Msater和Slave端之间的网络都会产生直接的影响 MySQL中Binlog的产生量是没办法改变的,只要Query改变了数据库中的数据,就将对应的Event记录到Binlog

    87340发布于 2018-04-02
  • 来自专栏侯哥的Python分享

    MySQL运维2-主从复制

    从库读取主库的二进制文件binlog,写入到从库的中继日志relay.log slave重做中继日志中的事件,将改变从库自己的数据 四、主从复制搭建   4.1 MySQL服务器准备     首先准备两台已经安装了 ,即复制所有数据库 #binlog-ignore-db=mysql #指定同步的数据库 #binlog-do-db=db01     2、配置好了之后,要重启MySQL服务。      3、登录mysql,创建远程连接的账号,并授予主从复制权限,这个账号是用来在从服务器上登录主服务用的。 的配置文件中增加下面的配置 #MySQL服务ID,保证整个集群中唯一 server-id=2 #是否只读 1代表只读 0代表读写 read-only=1     2、配置好了之后,要重启MySQL服务。 YES,全部为YES说明配置成功 五、主从复制测试   说明1:主从原始的都是只有四张系统表   说明2:主服务器上创建了一个数据库db01,在从服务器上查询,就马上显示了刚创建的db01   说明

    38940编辑于 2023-09-28
  • 来自专栏全栈程序员必看

    mysql主从复制周期_Mysql主从复制

    Mysql主从复制 背景: Mysql可以实现主从复制,在学习了Mysql主从复制后,将一些如何主从复制过程记录下来,供以后复习使用。 准备: 在做Mysql主从复制前需要做一些准备工作: 1、同步时间 做主从的服务器的时间需要同步,不然会出问题。 命令:ntpdate ip (ntpdate命令需要先安装ntpdate) 2、版本一致 做主从的Mysql服务需要版本一致,或者从服务器的版本高于主服务器。 的所有者和所属组为mysql;命令:chown mysql.mysql /app/bin_log 2)启动服务并添加主从复制需要的帐号 CentOS6:service mysqld start CentOS7 步骤4、测试 1)在主数据库服务器创建一个数据库 2)在从mysql从服务器查看是否生成创建的数据库 到此mysql主从复制已完成。

    5.3K10编辑于 2022-09-22
  • 来自专栏技术杂记

    Mysql 优化存储2

    可以打印出差异的部分,我们就是通过有无差异的记录条目来确认一致性 从结果来看,是空的,说明主备数据是一致的 Note: 此时指定的host要是slave,也就是待检查的对象 ---- 停止复制 在待优化的 slave上停止复制 mysql> show slave status\G mysql> stop slave; 停止复制后,最好再使用一个文本记录一下当前的position,以避免窗口信息丢失后,又执行了 reset slave命令产生不良后果 ---- 生成优化语句 mysql> select concat('optimize table ',TABLE_SCHEMA,'.' ='mysql' into outfile "/tmp/optimize.sql"; Query OK, 365 rows affected (0.09 sec) mysql>

    53310编辑于 2022-03-21
  • 来自专栏Kubernetes 与 Devops 干货分享

    Mysql主从复制

    一、mysql主从同步原理 Mysql主从复制也可以称为Mysql主从同步,它是构建数据库高可用集群架构的基础。 Mysql支持单向,双向,链式级联,异步复制,复制过程中一台服务器充当主库(master),而一个或者多个服务器充当从库(slave) 1.1、主从复制功能 主从复制原理:master服务器上工作线程I 1.2、复制中的参数详解 log-bin:搭建主从复制,必须开启二进制日志 server-id:mysql在同一组主从结构中的唯一标识 sever-uuid:存放在数据目录中的auto.cnf中 read .000004', MASTER_LOG_POS=3034; # 开启主从 start salve # 查看主从复制状态 show slave status\G 三、mysql主从复制 (gtid) = 2 binlog-ignore-db =mysql binlog_format =row log-bin =

    1.8K21编辑于 2022-10-31
  • 来自专栏Java架构师必看

    mysql主从复制

    实验环境: 准备两台虚拟机,关闭防火墙 主master 修改配置文件 重启mysql 从slave 修改配置文件 重启mysql 登录主master授权

    1.3K40发布于 2021-06-02
  • 来自专栏JavaEE

    MySQL主从复制

    server-id:新增这个配置,这是主机的唯一id标识,一般主机的是1,从机的是2; log-bin:必须启用二进制日志文件,log-bin=自己mysql路径/mysqlbin 其他的都是可选配置, 设置需要复制的数据库 #binlog-do-db=study-mysql datadir=/var/lib/mysql socket=/var/lib/mysql/mysql.sock symbolic-links 2. 修改从机配置: 从机主要也是修改上面说的那两个配置,我从机配置文件如下: [mysqld] #必须 server-id=2 log-bin=/var/lib/mysql/mysqlbin log-err =/var/lib/mysql/mysqlerr datadir=/var/lib/mysql socket=/var/lib/mysql/mysql.sock symbolic-links=0 [mysqld_safe

    1.5K11发布于 2021-06-21
  • 来自专栏用户1337634的专栏

    MySQL主从复制

    主从是MySQL最基本的数据冗余与高可用方案,本文重点介绍一下如何搭建,以及如何只同步部分库或表 搭建主从复制 配置Master 配置my.cnf 修改mysql配置文件,不同的系统my.cnf路径不同 =1M ## 主从复制的格式(mixed,statement,row,默认格式是statement) binlog_format=mixed ## 二进制日志自动删除/过期的天数。 expire_logs_days=7 ## 跳过主从复制中遇到的所有错误或指定类型的错误,避免slave端复制中断。 expire_logs_days=7 ## 跳过主从复制中遇到的所有错误或指定类型的错误,避免slave端复制中断。 可以,不过从库也需要开启二进制日志,如 ## 开启二进制日志功能,以备Slave作为其它Slave的Master时使用 log-bin=mysql-slave1-bin 参考 MySQL 主从复制搭建

    2.1K21发布于 2019-03-27
  • 来自专栏服务端技术杂谈

    MySql主从复制

    主从集群 在MySql的生产环境中,由于单台MySql不能满足高可用性需求,一般通过主从复制(Master-Slave)方式同步数据,再通过读写分离(MySql-Proxy)来提升数据库并发负载能力。 ,以便下一次备份从备份点开始 MySql主从复制需要三个线程: master的binlog dump thread slave的IO thread slave的Sql thread binlog dump 这种模式下,大事务的劣势尤为明显,比如TRA2是个大事务,在从库执行时,其他两个事务均已完成,但TRA2未完成,那么需等待他完全执行完,下一组才能执行,导致这段时间内只有一个work线程运行,造成资源浪费 后续MySQL也提供了相应的类似功能,由参数slave-parallel-type进行控制,当其配置为LOGICAL_CLOCK即运行类似于MariaDB的策略,但MySQL在其并行策略基础上进行了优化 ,即redo log 组提交 (group commit) 优化

    2.7K30发布于 2020-07-14
  • 来自专栏技术博文

    MySQL主从复制

    主从复制的作用? 主数据库出现问题,可以切换到从数据库。 可以进行数据库层面的读写分离。 可以在从数据库上进行日常备份。 MySQL主从复制解决的问题? 数据分布:随意开始或停止复制,并在不同地理位置分布数据备份 负载均衡:降低单个服务器的压力 高可用和故障切换:帮助应用程序避免单点失败 升级测试:可以用更高版本的MySQL作为从库 MySQL主从复制工作原理

    1.2K30编辑于 2022-05-10
  • 来自专栏晓月寒·

    Mysql主从复制

    什么是Mysql主从复制 主从复制是指一台服务器充当主数据库服务器,另一台或多台服务器充当从数据库服务器,主服务器中的数据自动复制到从服务器之中。对于多级复制,数据库服务器即可充当主机,也可充当从机。 MySQL主从复制的基础是主服务器对数据库修改记录二进制日志,从服务器通过主服务器的二进制日志自动执行更新。 Mysq主从复制的类型 基于语句的复制: 主服务器上面执行的语句在从服务器上面再执行一遍,在MySQL-3.23版本以后支持。 在MySQL主从复制架构中,读操作可以在所有的服务器上面进行,而写操作只能在主服务器上面进行。 主从复制架构虽然给读操作提供了扩展,可如果写操作也比较多的话(多台从服务器还要从主服务器上面同步数据),单主模型的复制中主服务器势必会成为性能瓶颈。 Mysql主从复制的工作原理 ?

    1.6K41发布于 2019-05-23
  • 来自专栏码客

    Mysql主从复制

    主从复制要求 MySQL 主从复制对主机和 MySQL 的要求 (1)主从服务器操作系统版本和位数必须一致; (2)主节点(Master)和从节点(Slave)数据库版本必须一致; (3)主节点(Master 主从配置 主节点-配置 (1)安装数据库; (2)修改数据库配置文件,指定 server-id,开启二进制日志(log-bin); (3)启动数据库,查看当前是哪个日志,position 号是多少; ( ## (2)基于行的复制(row):把改变的内容复制到 Slave,而不是把命令在 Slave 上执行一遍。从ySQL5.0 开始支持。 多个数据库用逗号分割 replicate-do-db=db1,db2 重启MySQL service mysqld restart 创建同步用户 set global validate_password_policy 如果遇到同步出错,可在 Slave 上重置主从复制设置,步骤如下: 重置主从复制设置 stop slave; reset slave; 重新设置主从复制参数 change master to master_host

    1.6K50编辑于 2022-12-05
  • 来自专栏数据湖

    MySQL主从复制

    我们就以互联网最常用的MySQL数据库为例,一起探索SQL的奥秘。本文主要讲解MySQL主从复制原理和搭建过程。 MySQL主备的应用场景 1.sql语句需要锁表,导致暂时不能使用读服务,使用主从复制,让主库负责写,从库负责读,通过读从库保证业务的正常运作。 MySQL主从复制原理 binlog: binary log,主库中保存所有更新事件日志的二进制文件。 主从复制的基础是主库记录数据库的所有变更记录到binlog。 mysql主从复制是一个异步的复制过程,主库发送更新事件到从库,从库读取更新记录,并执行更新记录,使得从库的内容与主库保持一致。 每一个主从复制都有三个线程。 构建主从复制 1.在Master(192.168.0.207) 主MySQL上创建一个mysnc用户 用户名:mysync 密码:mysync [root@cdh2 ~]# systemctl restart

    1.9K43发布于 2020-10-15
  • 来自专栏Java

    mysql主从复制

    mysql主从复制 MySQL主从复制是一种常见的数据库架构,用于实现数据的备份、负载均衡和故障恢复等功能。 主从复制概述 主从复制是指将一个MySQL数据库服务器(主服务器)的数据复制到另一个MySQL数据库服务器(从服务器)的过程。 2. 主从复制原理 MySQL主从复制的原理基于二进制日志(Binary Log)和复制线程(Replication Thread)。 示例代码:MySQL主从复制的配置 下面是一个简单的MySQL主从复制配置示例: -- 在主服务器上设置二进制日志 # 主服务器配置文件 my.cnf [mysqld] log-bin=mysql-bin 示例代码:MySQL主从复制的应用 假设我们有一个电子商务网站,我们可以使用MySQL主从复制来实现负载均衡和灾难恢复。

    69210编辑于 2025-01-21
  • 来自专栏互联网-小阿宇

    mysql主从复制

    实验环境: 准备两台虚拟机,关闭防火墙 主master 修改配置文件 重启mysql 从slave 修改配置文件 重启mysql 登录主master

    1.2K20编辑于 2022-11-21
  • 来自专栏Owen's World

    Mysql主从复制

    工作原理图: 主从复制的原理: 分为同步复制和异步复制,实际复制架构中大部分为异步复制。 复制的基本过程如下: 1).Slave上面的IO进程连接上Master,并请求从指定日志文件的指定位置(或者从最开始的日志)之后的日志内容; 2).Master接收到来自Slave的IO进程的请求后,通过负责复制的 环境描述 操作系统:CentOS6.3_x64 主服务器master:192.168.0.202 从服务器slave:192.168.0.203 一、mysql主从复制 1、主从安装mysql,版本一致 我们装的是mysql-5.5.30.tar.gz这里省略...请参考going.blog.51cto.com/7876557/129… 2、修改master,slave服务器 master服务器配置: 8、验证主从同步 在主mysql创建数据库abc,再从mysql查看已经同步成功!

    1.5K20编辑于 2021-12-08
  • 来自专栏sktj

    mysql 主从复制

    1、主库 [mysqld] server_id=1 log_bin=/xx/x-bin 2、主库建立主从账号 grant replication slave on . to 'repl'@'xx.xx.x.x show master status/G; 6、DB复制到从库 scp -rp bak_xx.sql.gz root@x.x.x.x:/opt 7、从库 [mysqld] server_id=2 #ID要不一致 log_bin=/x/x_bin 8、导入数据库 zcat bak_x.sql.gz|mysql 9、配置主从 CHANGE MASTER TO MASTER_HOST='x.x.x.x

    1.2K10发布于 2019-11-12
  • 来自专栏OY_学习记录

    MySQL 主从复制

    MySQL 主从复制 环境准备: win10 MySQL 5.5 (主机) Linux CentOS7 MySQL 5.7 (从机) ==主从复制原理图:== 20201224155619.png MySQL 配置文件在 MySQL 的安装目录下,一般默认在 C:\Program Files\MySQL目录下。 =mysql_01 设置 logbin 格式 binlog_format=STATEMENT(默认) ==参考示例图:== image.png mysql 主从复制起始时,从机不继承主机数据 从机修改 进入 my.cnf 文件目录 [root@localhost /]# cd /etc image.png 配置 server-id = 2 relay-log=mysql-relay 20201224162631 int , name varchar(20) ); insert into mytb1 values(1,'zhangsan'); insert into mytb1 values(2,

    92020编辑于 2022-03-17
领券