django+centos+mariadb读写分离完美实现(上)-mysql主从备份实现

首先画图一张,用来展示今天要做的事情,读写分离,个人理解就是使用mysql主从备份的原理,让两个数据库同时为自己提供服务。其中主库负责数据保存,从库负责数据展示,可以一主一从,也可以一主多从。从而降低数据库同时处理读写的压力。

django+centos+mariadb读写分离完美实现(上)-mysql主从备份实现

1、环境如下

master 10.10.101.83

slave 10.10.101.184

django+centos+mariadb读写分离完美实现(上)-mysql主从备份实现

2、接着搭建数据库备份,使用的是centos7.4+mariadb

  2-1-两台服务器安装Mariadb数据库

  (ps:mariadb是免费版的mysql,操作很相似,注意,两台服务器都安装)

  yum install mariadb mariadb-server -y

django+centos+mariadb读写分离完美实现(上)-mysql主从备份实现

2-2-两台服务器启动mariadb服务

systemctl start mariadb

   django+centos+mariadb读写分离完美实现(上)-mysql主从备份实现

mariadb默认处于一种类似调试模式的模式当中,不用密码也可以登录,所以现在两台服务器的mariadb要使用工作模式

mysql_secure_installation

django+centos+mariadb读写分离完美实现(上)-mysql主从备份实现

  django+centos+mariadb读写分离完美实现(上)-mysql主从备份实现

django+centos+mariadb读写分离完美实现(上)-mysql主从备份实现

django+centos+mariadb读写分离完美实现(上)-mysql主从备份实现

django+centos+mariadb读写分离完美实现(上)-mysql主从备份实现

master端操作

  进行授权

grant replication slave on *.* to "root"@"%" identified by "123" with grant option;

  django+centos+mariadb读写分离完美实现(上)-mysql主从备份实现

   刷新授权表

flush privileges;

  django+centos+mariadb读写分离完美实现(上)-mysql主从备份实现

   创建要备份的数据库和表

django+centos+mariadb读写分离完美实现(上)-mysql主从备份实现

   导出数据库

mysqldump -h localhost -u root -p123 qshop > qshop.sql

django+centos+mariadb读写分离完美实现(上)-mysql主从备份实现

通过scp命令将qshop.sql传递到slave上

scp qshop.sql root@10.10.101.184:/opt/

  django+centos+mariadb读写分离完美实现(上)-mysql主从备份实现

  slave端操作

         客户端创建要备份的qshop库

    django+centos+mariadb读写分离完美实现(上)-mysql主从备份实现

导入传递过来时qshop数据库

   django+centos+mariadb读写分离完美实现(上)-mysql主从备份实现

   查看效果

django+centos+mariadb读写分离完美实现(上)-mysql主从备份实现

  开始备份

  关闭两台服务器的防火墙和selinux

   django+centos+mariadb读写分离完美实现(上)-mysql主从备份实现

      django+centos+mariadb读写分离完美实现(上)-mysql主从备份实现

   修改配置文件 

   master 

    django+centos+mariadb读写分离完美实现(上)-mysql主从备份实现

       django+centos+mariadb读写分离完美实现(上)-mysql主从备份实现  

保存,退出,重启mysql服务

django+centos+mariadb读写分离完美实现(上)-mysql主从备份实现

   slave

    django+centos+mariadb读写分离完美实现(上)-mysql主从备份实现

django+centos+mariadb读写分离完美实现(上)-mysql主从备份实现

保存,退出,重启mysql服务

django+centos+mariadb读写分离完美实现(上)-mysql主从备份实现

   查看master端状态

 django+centos+mariadb读写分离完美实现(上)-mysql主从备份实现

     在slave端进行编写备份命令

   change master to master_host="10.10.101.83",master_user="root",master_password="123",master_log_file="mysql-bin?.000004",master_log_pos=245;

   django+centos+mariadb读写分离完美实现(上)-mysql主从备份实现

   启动备份

   django+centos+mariadb读写分离完美实现(上)-mysql主从备份实现

   查看备份状态

   django+centos+mariadb读写分离完美实现(上)-mysql主从备份实现

   测试备份

     salve端

     django+centos+mariadb读写分离完美实现(上)-mysql主从备份实现

         master端插入

     django+centos+mariadb读写分离完美实现(上)-mysql主从备份实现

     slave端已经同步可以查询

     django+centos+mariadb读写分离完美实现(上)-mysql主从备份实现

上一篇:mac上搭建mysql环境配置和Navicat连接mysql


下一篇:Docker - Docker中搭建MySQL主从