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

    MySQL优化之实现MySQL主从复制

    MySQL主从复制 解决的问题 数据分布 负载均衡 备份 高可用性和容错性 实现原理 MySQL支持单向、异步复制,复制过程中一个服务器充当主服务器,而一个或多个服务器充当从服务器 MySQL复制基于主服务器在二进制日志中跟踪所有对数据库的更改 、Oracle、DB2、SQL Server、PostgreSQL等DB的常见SQL语法 遵守MySQL原生协议,跨语言,跨平台,跨数据库通用中间件代理 基于心跳的自动故障切换,支持读写分离,支持MySQL =1 relay_log=mysql-relay-bin log_slave_updates=1 expire_logs_days=10 early-plugin-load="" 重启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

    74120编辑于 2022-06-07
  • 来自专栏IT者

    Mysql8实现主从复制

    环境 操作系统:CentOS 7 Mysql版本:8.0 MysqlServer_1:M1(主) MysqlServer_2:M2(从) 实现 修改M1配置文件:vim /etc/my.cnf (my.cnf 路径位置根据自己实际路径更改) #主服务器唯一ID server-id=1 #启用二进制日志 log-bin=mysql-bin # 设置不要复制的数据库(可设置多个) binlog-ignore-db 依次重启主机M1、从机M2服务,注意是指重启Mysql服务不是机器重启 在主机上建立帐户slave create user 'slave'@'%' identified by '123456 '; 授权,这里只授予SLAVE权限,当然也可以授所有权限 grant REPLICATION SLAVE on *.* to 'slave'@'%'; 在M1主机MySQL里执行命令,查询master 的主从复制,需要考虑的问题,比如如何持续保证数据一直问题,就比如一旦主从关系断开之后,再次建立主从,比如可以写脚本去监控Mysql服务等等

    75130编辑于 2022-10-31
  • 来自专栏Hadoop数据仓库

    MySQL 5.6到MySQL 8主从复制

    MySQL 8MySQL 5.6跨了两个大版本,直接从5.6(主)复制到8(从)是不行的,因此需要用一个MySQL 5.7版本作为桥接。 5.6、5.7、8的安装步骤从略。 1. 在8中创建要复制的表,表使用缺省的innodb引擎 use spacex; create table space_praise_record ( userid bigint(20) not null 在8启动到5.7的复制 stop slave; reset slave all; change master to master_host='10.10.10.1', master_port=3306 --single-transaction --master-data=1 space space_praise_record | mysql -u u1 -p123456 -h10.10.10.1 -

    94730编辑于 2021-12-07
  • 来自专栏码农小胖哥的码农生涯

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

    一、概念   Mysql复制(replication)是一个异步的复制,从一个Mysql 实例(Master)复制到另一个Mysql 实例(Slave)。 实现整个主从复制,需要由Master服务器上的IO进程,和Slave服务器上的Sql进程和IO进程共从完成。 要实现主从复制,首先必须打开Master端的binary log(bin-log)功能,因为整个 MySQL 复制过程实际上就是Slave从Master端获取相应的二进制日志,然后再在自己slave端完全顺序的执行日志中所记录的各种操作 需要刷新权限 才可以生效:flush privileges;(此时,在salve上连接 master的数据库) (7)重启master (8)在slave上应用 xbq.sql,有两种方式:(master 如果使用 (8)中的方法二的话,忽略此步骤) 方法一:source /usr/xbq.sql 方法二:mysql -uroot -p < /usr/xbq.sql 经过上面的操作 master上的数据

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

    Mysql 主从复制日志参数优化

    MySQL的复制(Replication),实际上就是通过将Master端的Binlog利用IO线程通过网络复制到Slave端,然后再通过SQL线程解析Binlog中的日志并应用到数据库中来实现的 所以 ,Binlog量的大小对IO线程及Msater和Slave端之间的网络都会产生直接的影响 MySQL中Binlog的产生量是没办法改变的,只要Query改变了数据库中的数据,就将对应的Event记录到Binlog 但有8个参数可以让我们控制,指定要复制或要忽略的DB或Table Binlog_Do_DB:设定哪些数据库(Schema)需要记录Binlog; Binlog_Ignore_DB:设定哪些数据库(Schema 功能同Replicate_Do_Table,但可以带通配符来进行设置; Replicate_Wild_Ignore_Table:功能同Replicate_Ig-nore_Table,可带通配符设置 上面这8个参数中的前面两个是设置在 Master端的,后面6个参数则是设置在Slave端的 通过上面这8个参数,可以将从Master到Slave的Binlog量尽可能减少,从而减小网络流量和IO线程的IO量,还能减少SQL线程的解析与应用

    87340发布于 2018-04-02
  • 来自专栏玩转JavaEE

    MySQL8 主从复制踩坑指南

    : 手把手教大家搭建 MySQL 主从复制 不过那一次是基于 MySQL5.7 搭建的,最近工作需要,搭建了基于 MySQL8 的主从,和 MySQL5.7 的搭建还是有一些不同,于是稍微记录下。 ❝注意,在 MySQL8 里边,这块有一些变化。 MySQL8 中用户创建和授权需要分开,不能像上面那样一步到位,具体方式如下: CREATE USER `rep1`@`192.168.248.139` IDENTIFIED WITH caching_sha2 注意,由于 MySQL8 密码插件的问题,这个问题同样会给主从配置带来问题,所以在 MySQL8 配置主从上,上面这行命令需要添加 get_master_public_key=1,完整命令如下: change 总结 本文主要和大伙说了 MySQL 主从环境搭建,并且提醒了关于 MySQL8 主从搭建时需要注意的几个问题,这几个步骤松哥反反复复操作过很多遍,小伙伴只要按照松哥的步骤一般来说都能成功,有问题欢迎留言讨论

    1.9K50发布于 2021-08-06
  • 来自专栏Python

    (8) MySQL主从复制架构使用方法

    MySQL主从复制架构 1. = InnoDB # 新数据表的默认数据表类型 character-set-server = utf8 # #服务端默认编码(数据库级别) socket = /home/mysql = InnoDB # 新数据表的默认数据表类型 character-set-server = utf8 # #服务端默认编码(数据库级别) socket = /home/mysql mysql重启后会自动重新生成uuid的值,这样就可以保证不同服务器上的mysql实例的uuid的值是不一样的 如果server-uuid的值相同,主从复制会出现问题 以上我们就完成了主从复制的配置,接下来我们要在主服务器上建立复制账号 主从复制的一些缺点 虽然主从复制,增加了一个数据库副本,从数据库和主数据库的数据最终会是一致的 之所以说是最终一致,因为mysql复制是异步的,正常情况下主从复制数据之间会有一个微小的延迟 通过这个数据库副本看似解决了数据库单点问题

    1K10发布于 2019-05-25
  • 来自专栏从入门到出门

    linux搭建mysql8主从复制集群

    -permanent 刷新防火墙规则使生效 firewall-cmd --reload 在主数据库,创建一个同步复制用户 CREATE USER 'repl'@'%' identified with mysql_native_password MASTER_HOST='192.168.0.1',MASTER_PORT=60001,MASTER_USER='repl',MASTER_PASSWORD='123456',MASTER_LOG_FILE='mysql-bin

    68020编辑于 2023-03-02
  • 来自专栏全栈程序员必看

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

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

    5.3K10编辑于 2022-09-22
  • 来自专栏编程我也会

    MySQL8从零数据开始主从复制

    主从复制图示如下: 复制数据的步骤 在主库上把数据更改记录到二进制日志(Binary Log)中。 备库将主库上的日志复制到自己的中继日志(Relay Log)中。 systemctl restart mysqld 重启mysql 重新登录mySQL 输入命令show master status; 可以看到file那一列变成了mysql-bin.000001,配置成功 从服务器配置 退出mysql,找到并编辑my.cnf文件 添加以下内容: log_bin = mysql-bin server_id = 22 relay_log = /var/lib/mysql/mysql-realay-bin 我把mysql-bin.000002写成了mysql-bin-000002!我去,心好累啊。。。 重新设置,这次终于成功了! 哎,不容易啊。 自此主从复制设置完成,最后感慨一句,做程序员,细心真的很重要啊。。。

    71230编辑于 2022-05-16
  • 来自专栏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) -0a18-11e7-810a-0050568833c8:1-4; START SLAVE; 方法三 # pt 忽略错误码 pt-slave-resetart -S /var/lib/mysql/mysql.sock

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

    mysql主从复制

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

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

    MySQL主从复制

    本文将手把手教你怎么配置MySQL的主从。 一、环境准备 主机:192.168.0.101 从机:192.168.0.105 首先这主机和从机上安装MySQL,大家可以安装mariadb,更简单一点儿,安装命令如下: # 安装 yum install =/var/lib/mysql/mysqlerr #设置为0,表示这是主机,可以进行读和写 read-only=0 #可选,设置不需要复制的数据库 binlog-ignore-db=mysql #可选, 设置需要复制的数据库 #binlog-do-db=study-mysql datadir=/var/lib/mysql socket=/var/lib/mysql/mysql.sock symbolic-links =/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 后续MySQL也提供了相应的类似功能,由参数slave-parallel-type进行控制,当其配置为LOGICAL_CLOCK即运行类似于MariaDB的策略,但MySQL在其并行策略基础上进行了优化 ,即redo log 组提交 (group commit) 优化优化SQL,避免慢SQL,减少批量操作,建议写脚本以update-sleep这样的形式完成。

    2.7K30发布于 2020-07-14
  • 来自专栏晓月寒·

    Mysql主从复制

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

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

    Mysql主从复制

    主从复制要求 MySQL 主从复制对主机和 MySQL 的要求 (1)主从服务器操作系统版本和位数必须一致; (2)主节点(Master)和从节点(Slave)数据库版本必须一致; (3)主节点(Master ## 复制过滤:不需要备份的数据库,不输出(mysql 库一般不同步) log-bin = mysql01-bin ## 开启二进制日志功能 binlog_cache_size = 1M slave_skip_errors = 1062 ## 跳过主从复制中遇到的所有错误或指定类型的错误,避免 slave 端复制中断。 ## MySQL 默认采用基于语句的复制,效率比较高。一旦发现没法精确复制时,会自动选择基于行的复制。 如果遇到同步出错,可在 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
  • 来自专栏技术博文

    MySQL主从复制

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

    1.2K30编辑于 2022-05-10
  • 来自专栏Java

    mysql主从复制

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

    69210编辑于 2025-01-21
领券