Mariadb学习笔记-主从复制

Mariadb的主从复制

  • mysql的扩展模式:主从
  • 读写分离基于MHA实现
主服务器配置

*修改配置文件

[[email protected] ~]# vim /etc/my.cnf.d/server.cnf

[mysqld]server-id=1log-bin=master-loginnodb_file_per_table=ONskip_name_resolve=ON
  • 启动mariadb服务
[[email protected] ~]# systemctl start mariadb
[[email protected] ~]# mysql 
Welcome to the MariaDB monitor.  Commands end with ; or \g.
Your MariaDB connection id is 2
Server version: 5.5.44-MariaDB-log MariaDB Server

Copyright (c) 2000, 2015, Oracle, MariaDB Corporation Ab and others.

Type ‘help;‘ or ‘\h‘ for help. Type ‘\c‘ to clear the current input statement.

MariaDB [(none)]> show binary logs;+-------------------+-----------+| Log_name          | File_size |
+-------------------+-----------+| master-log.000001 |       245 |
+-------------------+-----------+1 row in set (0.00 sec)

MariaDB [(none)]> grant replication slave,replication client on *.* to ‘repluser‘@‘172.16.%.%‘ identified by ‘replpass‘;
Query OK, 0 rows affected (0.00 sec)

MariaDB [(none)]> flush privileges;
Query OK, 0 rows affected (0.00 sec)

MariaDB [(none)]> show binary logs;+-------------------+-----------+| Log_name          | File_size |
+-------------------+-----------+| master-log.000001 |       496 |
+-------------------+-----------+1 row in set (0.00 sec)

MariaDB [(none)]>
从服务器配置
  • 修改配置文件

[[email protected] ~]# vim /etc/my.cnf.d/server.cnf

[mysqld]server-id=2relay-log=relay-loginnodb_file_per_table=ONskip_name_resolve=ON
  • 启动服务器并授权
[[email protected] ~]# systemctl start mariadb[[email protected] ~]# mysqlWelcome to the MariaDB monitor.  Commands end with ; or \g.Your MariaDB connection id is 2Server version: 5.5.44-MariaDB MariaDB Server

Copyright (c) 2000, 2015, Oracle, MariaDB Corporation Ab and others.

Type ‘help;‘ or ‘\h‘ for help. Type ‘\c‘ to clear the current input statement.

MariaDB [(none)]> change master to master_host=‘172.16.80.6‘,master_user=‘repluser‘,master_password=‘replpass‘,master_log_file=‘master-log.000003,master_log_pos=496‘;
Query OK, 0 rows affected (0.01 sec)

MariaDB [(none)]>
  • 授权完成后会生成两个文件

/var/lib/mysql/relay-log.info 该文件记录从主服务器的哪个日志开始复制
/var/lib/mysql/relay-master.info 该文件记录主服务器地址,账号密码信息

  • 启动从服务器的复制功能
MariaDB [(none)]> start slave;
Query OK, 0 rows affected (0.00 sec)

MariaDB [(none)]> show slave status\G;*************************** 1. row ***************************
               Slave_IO_State: 
                  Master_Host: 172.16.80.6
                  Master_User: repluser
                  Master_Port: 3306
                Connect_Retry: 60
              Master_Log_File: master-log.000001,master_log_pos=496
          Read_Master_Log_Pos: 4
               Relay_Log_File: relay-log.000001
                Relay_Log_Pos: 4
        Relay_Master_Log_File: master-log.000001,master_log_pos=496
             Slave_IO_Running: No
            Slave_SQL_Running: Yes
              Replicate_Do_DB: 
          Replicate_Ignore_DB: 
           Replicate_Do_Table: 
       Replicate_Ignore_Table: 
      Replicate_Wild_Do_Table: 
  Replicate_Wild_Ignore_Table: 
                   Last_Errno: 0
                   Last_Error: 
                 Skip_Counter: 0
          Exec_Master_Log_Pos: 4
              Relay_Log_Space: 245
              Until_Condition: None
               Until_Log_File: 
                Until_Log_Pos: 0
           Master_SSL_Allowed: No
           Master_SSL_CA_File: 
           Master_SSL_CA_Path: 
              Master_SSL_Cert: 
            Master_SSL_Cipher: 
               Master_SSL_Key: 
        Seconds_Behind_Master: NULL
Master_SSL_Verify_Server_Cert: No
                Last_IO_Errno: 1236
                Last_IO_Error: Got fatal error 1236 from master when reading data from binary log: ‘Could not find first log file name in binary log index file‘
               Last_SQL_Errno: 0
               Last_SQL_Error: 
  Replicate_Ignore_Server_Ids: 
             Master_Server_Id: 1

此时,Slave_IO_Running,Slave_SQL_Running均应为yes,即可开始从主服务器上复制

主主模式

就是使用AB双服务器分别进行授权;

时间: 2024-10-29 04:12:59

Mariadb学习笔记-主从复制的相关文章

Mariadb学习笔记-日志及备份

Mysql的日志种类 查询日志:general_log 慢查询日志:log_slow_querles 错误日志:log_error,log_warnings 二进制日志:binlog 中继日志:relay_log 事务日志:innodb_log 查询日志 记录查询语句,日志存储位置: 文件:file表:table(mysql.general_log) general_log={ON|OFF}general_log_file=HOSTNAME.loglog_output={FILE|TABLE|N

《Redis设计与实现》学习笔记-主从复制

为了提供整个缓存的可用性,可以给主服务器添加备用服务器,即从服务器.通过SLAVEOF命令把当前服务器设置成某台服务器的从服务器. 老版本同步过程 旧版本(2.8之前)主从服务器数据同步过程如下: 从服务器向主服务器发送SYNC命令. 主服务器接收到SYNC命令后调用BGSAVE命令生成一个RDB文件,在此过程中客户端对主服务器的修改命令存放在一个缓冲区中. 主服务器把生成的RDB文件发送给从服务器,从服务器通过加载该RDB文件更新数据库状态. 主服务器把缓冲区中的命令同步到从服务器,从服务器执

马哥学习笔记二十六——MySQL主从复制

配置MySQL复制基本步骤: 一.master 1.启用二进制日志 log-bin = master-bin log-bin-index = master-bin.index 2.选择一个惟一server-id server-id = {0-2^32} 3.创建具有复制权限的用户 REPLICATION SLAVE REPLICATION CLIENT 二.slave 1.启用中继日志 relay-log = relay-log relay-log-index = 2.选择一个惟一的server

基于CentOS7上的搭建javaweb环境 - 学习笔记

一, 概述 上一篇记录了安装CentOS7的基本步骤及配置,现在要讲如何搭建基于CentOS7环境的javaweb环境了,我以 mysql + jdk1.8.0_91 + apache tomcat7.0.69 为例进行讲述. 二, 安装步骤 1, 首先在CentOS7下在线安装mysql数据库服务 (1)先查看是否已安装了mysql rpm -qa | grep mysql (2)若安装了,可以卸载,再重新安装 yum -y remove mysqlxxxxx (3)安装 yum -y ins

Redis学习笔记4-Redis配置具体解释

在Redis中直接启动redis-server服务时, 採用的是默认的配置文件.採用redis-server   xxx.conf 这种方式能够依照指定的配置文件来执行Redis服务. 依照本Redis学习笔记中Redis的依照方式依照后,Redis的配置文件是/etc/redis/6379.conf.以下是Redis2.8.9的配置文件各项的中文解释. #daemonize no 默认情况下, redis 不是在后台运行的.假设须要在后台运行,把该项的值更改为 yes daemonize ye

redis 安装配置学习笔记

redis 安装配置学习笔记 //wget http://download.redis.io/releases/redis-2.8.17.tar.gz 下载最新版本 wget http://download.redis.io/redis-stable.tar.gz 首先必须要有 gcc 与 make apt-get install gcc apt-get install make 1.解压 [email protected]:~# tar -xvf redis-stable.tar.gz 2.测

Openstack(Kilo)学习笔记之环境准备(二)

接上节Openstack(Kilo)学习笔记之环境准备(一) 一.配置源 1.配置EPEL源 yum install http://dl.fedoraproject.org/pub/epel/7/x86_64/e/epel-release-7-5.noarch.rpm 2.配置RDO源 yum install http://rdo.fedorapeople.org/openstack-kilo/rdo-release-kilo.rpm 3.升级系统源 yum upgrade 二.安装配置数据库

Redis学习笔记4-Redis配置详解

原文:  http://blog.csdn.net/mashangyou/article/details/24555191 在Redis中直接启动redis-server服务时, 采用的是默认的配置文件.采用redis-server   xxx.conf 这样的方式可以按照指定的配置文件来运行Redis服务.按照本Redis学习笔记中Redis的按照方式按照后,Redis的配置文件是/etc/redis/6379.conf.下面是Redis2.8.9的配置文件各项的中文解释. 1 #daemon

SQL Database学习笔记

1. linux下快速安装MariaDB: MariaDB 是 一个采用 Maria 存储引擎的  MySQL  分支版本,是由原来 MySQL 的作者 Michael Widenius 创办的公司所开发 的免费开源的数据库服务器 . 本文介绍了在linxu下一个简单的安装 方法(在OpenSuse下测试成功): (摘自:http://www.2cto.com/database/201307/229102.html) # tar zxvf mariadb-5.5.31-linux-x86_64.