42-3mysql主从复制

03 mysql主从复制架构及实现

实战:主从复制

配置 

master:192.168.1.131 CentOS7.2

slave: 192.168.1.132 CentOS7.2

#主结点

[[email protected] ~]# yum -y install mariadb-server

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

添加

log-bin=master-bin

server-id=1

innodb_file_per_table=ON

skip_name_resolve=ON

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

client.cnf  mysql-clients.cnf  server.cnf

[[email protected] ~]# systemctl start mariadb.service

[[email protected] ~]# mysql

MariaDB [(none)]> SHOW GLOBAL VARIABLES LIKE ‘log_bin‘; 

+---------------+-------+

| Variable_name | Value |

+---------------+-------+

| log_bin       | ON    |

+---------------+-------+

MariaDB [(none)]> SHOW MASTER LOGS;

+-------------------+-----------+

| Log_name          | File_size |

+-------------------+-----------+

| master-bin.000001 |     30331 |

| master-bin.000002 |   1038814 |

| master-bin.000003 |       245 |

+-------------------+-----------+

MariaDB [(none)]> SHOW GLOBAL VARIABLES LIKE ‘server_id‘;

+---------------+-------+

| Variable_name | Value |

+---------------+-------+

| server_id     | 1     |

+---------------+-------+

MariaDB [(none)]> GRANT REPLICATION SLAVE,REPLICATION CLIENT ON *.* TO ‘repluser‘@‘192.168.%.%‘ IDENTIFIED BY ‘replpass‘;

MariaDB [(none)]> FLUSH PRIVILEGES;

#从结点

[[email protected] ~]# yum -y install mariadb-server

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

添加

relay-log=relay-log

relay-log-index=relay-log.index

server-id=7

innodb_file_per_table=ON

skip_name_resolve=ON

[[email protected] ~]# systemctl start mariadb.service

[[email protected] ~]# mysql

MariaDB [(none)]> SHOW GLOBAL VARIABLES LIKE ‘relay_log‘;

+---------------+-----------+

| Variable_name | Value     |

+---------------+-----------+

| relay_log     | relay-log |

+---------------+-----------+

MariaDB [(none)]> SHOW GLOBAL VARIABLES LIKE ‘server_id‘;

+---------------+-------+

| Variable_name | Value |

+---------------+-------+

| server_id     | 7     |

+---------------+-------+

MariaDB [(none)]> CHANGE MASTER TO MASTER_HOST=‘192.168.1.131‘,MASTER_USER=‘repluser‘,MASTER_PASSWORD=‘replpass‘,MASTER_LOG_FILE=‘master-bin.000003‘,MASTER_LOG_POS=245;

MariaDB [(none)]> START SLAVE;

#主结点 

MariaDB [(none)]> CREATE DATABASE mydb;

MariaDB [(none)]> SHOW DATABASES;

+--------------------+

| Database           |

+--------------------+

| information_schema |

| mydb               |

| mysql              |

| performance_schema |

| test               |

+--------------------+

MariaDB [(none)]> SHOW MASTER STATUS;

+-------------------+----------+--------------+------------------+

| File              | Position | Binlog_Do_DB | Binlog_Ignore_DB |

+-------------------+----------+--------------+------------------+

| master-bin.000003 |      580 |              |                  |

+-------------------+----------+--------------+------------------+

#从结点:

MariaDB [(none)]> show slave status  \G

*************************** 1. row ***************************

  Slave_IO_State: Waiting for master to send event

 Master_Host: 192.168.1.131

 Master_User: repluser

 Master_Port: 3306

Connect_Retry: 60

 Master_Log_File: master-bin.000003

 Read_Master_Log_Pos: 580

  Relay_Log_File: relay-log.000002

Relay_Log_Pos: 865

Relay_Master_Log_File: master-bin.000003

Slave_IO_Running: Yes

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: 580

 Relay_Log_Space: 1153

 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: 0

Master_SSL_Verify_Server_Cert: No

Last_IO_Errno: 0

Last_IO_Error: 

  Last_SQL_Errno: 0

  Last_SQL_Error: 

 Replicate_Ignore_Server_Ids: 

Master_Server_Id: 1

1 row in set (0.00 sec)

结果:测试成功

时间: 2024-10-26 03:55:17

42-3mysql主从复制的相关文章

mysql主从同步的配置

1. mysql主从复制的介绍 1.1 为什么使用主从复制 MySQL支持单双向,链式级联,异步复制.mysql 在插入数据过程中,会锁表,此时,就无法读数据.设置好主从同步之后,主数据库用来对数据进行增,删,改,从数据库只用来查数据.生产环境下,一般会忽略授权表的同步,对从服务器的用户授权select的权限,同时在my.cnf中加入read-only的参数,确保从库只读. 1.2 MySQL主从复制的优点: 有利于数据库的健壮性,访问速度和系统维护管理. 主从服务器架构的设置,可以大大的强加数

mysql主从复制与读写分离

MySQL主从复制与读写分离 MySQL主从复制(Master-Slave)与读写分离(MySQL-Proxy)实践 Mysql作为目前世界上使用最广泛的免费数据库,相信所有从事系统运维的工程师都一定接触过.但在实际的生产环境中,由单台Mysql作为独立的数据库是完全不能满足实际需求的,无论是在安全性,高可用性以及高并发等各个方面. 因此,一般来说都是通过 主从复制(Master-Slave)的方式来同步数据,再通过读写分离(MySQL-Proxy)来提升数据库的并发负载能力 这样的方案来进行部

MySQL 复制过滤器、监控维护及主从复制的读写分离

MySQL 复制过滤器.监控维护及基于SSL的主从复制 =============================================================================== 概述: 本章将主要介绍MySQL复制中如何过滤,监控维护,以及基于SSL的主从复制,具体内容如下: MySQL 复制过滤器 ·从服务器库级别过滤 MySQL 清理日志:PURGE 复制监控 ·Master ·Slave 如何确定主从节点的数据是否一致 MySQL基于SSL的主从复制(

基于SSL的Mysql主从复制

一.实验目的: 1.跨越互联网加密复制 mysql基于SSL加密连接,为安全从服配置证书,从服拿账号到主服复制时,必须得到主服验证.双方建立SSL会话. 二.实验架构 在分布式架构中,时间必须同步 主节点: station20:192.168.1.20 从节点: station21:192.168.1.21 三.实验步骤 1.建立ssh互信 [[email protected] ~]# echo -e"192.168.1.21\tstation21\tstation21.example.com&

mysql低版本的主从复制和5.7版本的主从复制

mysql的主从复制和单向异步复制: mysql的AB复制: mysql 数据库的版本,两个数据库版本要相同,或者 slave 比 master 版本高! # yum install mysql mysql-server -y master server 配置 1)配置 /etc/my.cnf 配置文件 在[mysqld]下添加一下参数 log-bin=mysql-bin #启动二进制日志系统 binlog-do-db=test #二进制需要同步的数据库名,如果需要同步多个库,例如要再同步 we

MySQL主从复制与读写分离的实现

MySQL主从复制(Master-Slave)与读写分离(MySQL-Proxy)实践 Mysql作为目前世界上使用最广泛的免费数据库,相信所有从事系统运维的工程师都一定接触过.但在实际的生产环境中,由单台Mysql作为独立的数据库是完全不能满足实际需求的,无论是在安全性,高可用性以及高并发等各个方面. 因此,一般来说都是通过 主从复制(Master-Slave)的方式来同步数据,再通过读写分离(MySQL-Proxy)来提升数据库的并发负载能力 这样的方案来进行部署与实施的. 如下图所示: 下

MySQL主从复制与读写分离 --非原创

原文出处:http://www.cnblogs.com/luckcs/articles/2543607.html MySQL主从复制(Master-Slave)与读写分离(MySQL-Proxy)实践 Mysql作为目前世界上使用最广泛的免费数据库,相信所有从事系统运维的工程师都一定接触过.但在实际的生产环境中,由单台Mysql作为独立的数据库是完全不能满足实际需求的,无论是在安全性,高可用性以及高并发等各个方面. 因此,一般来说都是通过 主从复制(Master-Slave)的方式来同步数据,再

MySQL 主从复制 + MySQL Router 部署测试

4个节点 1.MySQLDB1  192.168.1.41  (MySQL 主节点) 2.MySQLDB2  192.168.1.42  (MySQL从节点) 3.MySQLDB3  192.168.1.43  (MySQL从节点) 4.MySQLRouter  192.168.1.47  (MySQLRouter服务节点) 软件版本说明: 1.操作系统  CentOS6.6_x86_64 2.MySQLServer  5.7.16 3.MySQLRouter  2.0.4 一.部署MySQL主

使用Sentinel机制实现Redis高可用主从复制

Sentinel(哨兵)是用于监控redis集群中Master状态的工具,其已经被集成在redis2.4+的版本中 一.Sentinel作用: 1):Master状态检测 2):如果Master异常,则会进行Master-Slave切换,将其中一个Slave作为Master,将之前的Master作为Slave 3):Master-Slave切换后,master_redis.conf.slave_redis.conf和sentinel.conf的内容都会发生改变,即master_redis.con

MySQL主从复制(Master-Slave)与读写分离(MySQL-Proxy)实践

Mysql作为目前世界上使用最广泛的免费数据库,相信所有从事系统运维的工程师都一定接触过.但在实际的生产环境中,由单台Mysql作为独立的数据库是完全不能满足实际需求的,无论是在安全性,高可用性以及高并发等各个方面. 因此,一般来说都是通过 主从复制(Master-Slave)的方式来同步数据,再通过读写分离(MySQL-Proxy)来提升数据库的并发负载能力 这样的方案来进行部署与实施的. 如下图所示: 下面是我在实际工作过程中所整理的笔记,在此分享出来,以供大家参考. 一.MySQL的安装与