Mysql主从架构

1. 克隆虚拟机

克隆的虚拟机的网络适配,使得虚拟机可以进入局域网

  • vi /etc/sysconfig/network-scripts/ifcfg-eth0
  • 删除 HWADDR所在行

    UUID所在行
  • 将/etc/udev/rules.d/目录中的

    70-persistent-net.rules文件删除
  • 重启虚拟机:reboot

2. 两台主机,各自安装mysql

参考之前的mysql安装过程即可.

一台做主机,一台做从机。

3. 搭建数据库

主机和从机上的库名一致

4. 配置"主机"

4.1 配置

找到 /etc/my.cnf

在[mysqld]下配置:

server-id=9        // id
log-bin=zhj-bin // 二进制日志文件的名称,有此配置即为“主机”
binlog-do-db=db9 // 要记录二进制日志的数据库,可以有多个,如下
binlog-do-db=db10
binlog-do-db=db11
binlog_format=MIXED // 兼容 日志和read-commit
expire_logs_days=10 // 日志超时时间

4.2 重启主机

重启主机:service mysqld restart

4.3 查看主机状态

查看主机状态:

mysql>show master status;
*记录下file字段值,和position字段值,要告知给从机

5. 配置"从机"

5.1 配置

找到 /etc/my.cnf

在[mysqld]下配置:

server-id=10
replicate-do-db=db9 #要复制的哪个库
master-connect-retry=60 #60s后重连主机

5.2 同步数据

同步主从数据

如果主机已经有数据,则需要将数据同步到从机

#主机导出数据库db9中的数据:
[root@zhj ~]# mysqldump -u root -h 192.168.1.66 -p db9 > /root/hh.sql (之后输入密码即可)
#从机登录mysql,并选择数据库db9,然后执行如下:
mysql> use db9;
mysql> source /root/hh.sql;

5.3 重启从机

重启从机

[root@zhj ~]# service mysqld restart

5.4 主从同步

[root@zhj ~]# mysql -u root -p111111 # 登录mysql
mysql> slave stop; #停止slave同步进程
mysql> change master to master_host='192.168.1.66',master_user='root'
,master_password='123',master_log_file='zhj-bin.000001',master_log_pos=106;
mysql> slave start; #开启slave同步进程

5.5 查看从机状态

mysql> SHOW SLAVE STATUS\G   #查看slave同步信息(G后不要加分号)

注意查看:

Slave_IO_Running: Yes

Slave_SQL_Running: Yes

以上这两个参数的值为Yes,即说明配置成功!

6. 细节

mysql的bin-log和read-commit有冲突

需要在主机的my.cnf的[mysqld]中配置:

binlog_format=mixed //即可

Mysql主从架构的更多相关文章

  1. MySQL 主从架构配置详解

    无论是哪一种数据库,数据的安全都是至关重要的,因此熟练掌握数据库的安全备份功能,是作为开发人员,特别是后端开发人员的一项必备技能.MySQL 数据库内建的复制功能,可以帮助我们对数据进行异地备份,读写 ...

  2. MySQL主从架构之Master-Slave主从同步

    MySQL复制 MySQL复制是指将主库上的DDL和DML操作通过二进制日志传到从库上,使主库和从库上的数据保持同步 复制原理: 主服务器将更新写入二进制日志文件,并维护文件的一个索引来跟踪日志循环. ...

  3. Mysql主从架构报错-Fatal error: The slave I/O thread stops because master and slave have equal MySQL server UUIDs; these UUIDs must be different for replication to work...

    在搭建Mysql主从架构过程中,由于从服务器是克隆的主服务器系统,导致主从mysql uuid相同, Slave_IO无法启动,报错如下: The slave I/O thread stops bec ...

  4. 使用Innobackupex快速搭建(修复)MySQL主从架构

    MySQL的主从搭建大家有很多种方式,传统的mysqldump方式是很多人的选择之一.但对于较大的数据库则该方式并非理想的选择.使用Xtrabackup可以快速轻松的构建或修复mysql主从架构.本文 ...

  5. MySQL主从架构配置

    MySQL主从架构配置有两台MySQL数据库服务器master和slave,master为主服务器,slave为从服务器,初始状态时,master和slave中的数据信息相同,当master中的数据发 ...

  6. 高性能Mysql主从架构的复制原理及配置详解

    温习<高性能MySQL>的复制篇. 1 复制概述 Mysql内建的复制功能是构建大型,高性能应用程序的基础.将Mysql的数据分布到多个系统上去,这种分布的机制,是通过将Mysql的某一台 ...

  7. 转:高性能Mysql主从架构的复制原理及配置详解

    温习<高性能MySQL>的复制篇. 1 复制概述 Mysql内建的复制功能是构建大型,高性能应用程序的基础.将Mysql的数据分布到多个系统上去,这种分布的机制,是通过将Mysql的某一台 ...

  8. 高性能Mysql主从架构的复制原理及配置详解(转)

    温习<高性能MySQL>的复制篇. 1 复制概述 Mysql内建的复制功能是构建大型,高性能应用程序的基础.将Mysql的数据分布到多个系统上去,这种分布的机制,是通过将Mysql的某一台 ...

  9. 关于mysql主从架构master宕机后,请求转移问题解决办法

    mysql架构:一主一从 问题一:有两台mysql数据库,已做好主从.如果运行某一天master服务器mysql故障导致前端请求无法处理怎么办? 答:将前端需要数据库处理的请求转移到slave机上. ...

随机推荐

  1. linux线程库

    linux 提供两个线程库,Linux Threads 和新的原生的POSIX线程库(NPTL),linux threads在某些情况下仍然使用,但现在的发行版已经切换到NPTL,并且大部分应用已经不 ...

  2. oracle_fdw的安装和使用

    1.下载instant oracle client 下载网址:https://www.oracle.com/technetwork/topics/linuxx86-64soft-092277.html ...

  3. 关于安装版JDK1.8 1.7更改多个JDK环境变量 不生效

    配置maven(apache-maven-3.3.9)时提示异常:'mvn' 不是内部或外部命令,上网查找得知 它不支持jdk1.8,所以重新安装jdk1.7,后来就出现下面的问题 现象: 当使用安装 ...

  4. 5V-12V输入输出的限流芯片,可调限至4.8A

    可是在输出电压模式:3.6V,5V,12V 在输出3.6V模式:输入电压范围2.5V-4.5V,输入关闭电压5V,限流最大4.8A 在输出5V模式,输入电压范围3.8V-6V,输输入过电压关闭6V,限 ...

  5. ElasticSearch极简入门总结

    一,目录 安装es 项目添加maven依赖 es客户端组件注入到spring容器中 es与mysql表结构对比 索引的删除创建 文档的crud es能快速搜索的核心-倒排索引 基于倒排索引的精确搜索. ...

  6. 图解 | 原来这就是TCP

    你是一台电脑,你的名字叫 A 经过<图解 | 原来这就是网络>这篇文章中的一番折腾,只要你知道另一位伙伴 B 的 IP 地址,且你们之间的网络是通的,无论多远,你都可以将一个数据包发送给你 ...

  7. linux设备

    设备初始化时同样要执行一个device_register函数,该函数传入一个struct device *类型的指针,因此要定义一个struct device类型的变量作为我们的设备. struct ...

  8. 我教你如何解决 Docker 下载 mcr.microsoft.com 镜像慢的办法

    我教你如何解决 Docker 下载 mcr.microsoft.com 镜像慢的办法 一.介绍 最近,我在写有关使用 Jenkins 搭建企业级持续集成环境的文章,准备了四台服务器,企业级别嘛,一台就 ...

  9. 向HDFS中上传任意文本文件,如果指定的文件在HDFS中已经存在,由用户指定是追加到原有文件末尾还是覆盖原有的文件

    1 import java.io.FileInputStream; 2 import java.io.IOException; 3 import java.util.Scanner; 4 5 impo ...

  10. 【汇编实践】go assembly

    https://mp.weixin.qq.com/s/B577CdUkWCp_XgUc1VVvSQ asmshare/layout.md at master · cch123/asmshare htt ...