首页/应用软件/内容

教你如何在阿里云与腾讯云简单搭建传统主从复制环境图文详细教程

应用软件2023-04-19 阅读()
SQL是Structured Query Language(结构化查询语言)的缩写。SQL是专为数据库而建立的操作命令集,是一种功能齐全的数据库语言。在使用它时,只需要发出“做什么”的命令,“怎么做”是不用使用者考虑的。SQL功能强大、简单易学、使用方便,已经成为了数据库操作的基础,并且现在几乎所有的数据库均支持SQL。
MySQL主从复制环境可以说是一切高可用的基础。它的原理也比较简单,下面我们先来了解下主从复制的原理:

主从流程图
虽然图上一共有7步,可以简化一下帮助记忆和理解:

  1. Master上进行改、写操作;

  2. MySQL把修改数据写进binlog;

  3. Slave发起IO thread,把master上新的binlog拉取到本地中继日志中;

  4. 重放中继日志,让在master上面的修改、新增操作在Slave本机上重新运行一遍;

  5. Slave按照正常的操作也会把操作写进本地的binlog。

硬件环境

本人有阿里云、腾讯云各一台屌丝机,因此用来试验,为保护隐私,把ip已经替换了,但不影响操作。

主机ip端口版本主从
阿里云192.168.1.1003306MySQL5.7.14Master
腾讯云192.168.1.2003306MySQL5.7.18Slave

Master上设置

开启binlog设置server-id

在/etc/my.cnf中的mysqld选项下编辑,然后重启

[mysqld]
log-bin=mysql-bin
server-id=1003306
/etc/init.d/mysql restart

创建复制专用账号

mysql> CREATE USER 'repl'@'%.mydomain.com' IDENTIFIED BY 'slave;
mysql> GRANT REPLICATION SLAVE ON *.* TO 'repl'@'192.168.1.200';

导出数据同步到腾讯云上面

使用mysqldump导出所有数据库数据,另外备份文件中会记录当前的binlog文件和position。

#防止DDL、写操作
mysql>FLUSH TABLES WITH READ LOCK;
shell>mysqldump -uroot -p --single-transaction --master-data=2 -A>back.sql

也通过以下方式可以查看:

root@localhost [mysql]>show master status;
+------------------+----------+--------------+------------------+-------------------+
(北联网教程,专业提供视频软件下载)

第1页  第2页  第3页  第4页  第5页  第6页  第7页  第8页  第9页  第10页  第11页  第12页  第13页 

……

相关阅读