MySQL主从配置:主从介绍、配置主和从 、测试主从同步

MySQL主从介绍

(两台机器数据同步)

主:-->binlog

从:-->relaylog

主上有一个log dump线程,用来和从的I/O线程传递binlog

从上有两个线程,其中I/O线程用来同步主的binlog并生成relaylog,另外一个SQL线程用来把relaylog里面的sql语句落地(执行)

主从的应用场景:

(1)做数据的备份,(主:作读写数据,从:实时同步,当 主 宕机时,从 也可以即使提供服务 )

(2)也是做备份。(客户从 从 这台机器上读取数据(但是不能再从上写),减轻主的压力)

准备工作

1.两台机器都装上mysql,并且都开启mysql的服务

配置主

主:192.1683.136.133      从:192.168.136.134

1.修改my.cnf,增加server-id=133和log_bin=canshenglinux1

2.修改完配置文件后,启动或者重启mysqld服务

重启完后,我们可以发现在/data/mysql下生成了以在配置文件中定义log_bin=canshenglinux1为开头的文件

这些文件很重要,不然不能实现主从

3.

把mysql库备份并恢复成cansheng库,作为测试数据(这个库就是用来做主从)

 mysqldump -uroot -p123456 mysql > /tmp/mysql.sql

 mysql -uroot -p123456 -e “create database cansheng”

 mysql -uroot -p123456 cansheng < /tmp/mysql.sql

4.创建用作同步数据的用户

(1)先进入到mysql

(2)再创建同步数据的用户

grant replication slave on *.* to 'repl'@slave_ip identified by '123456';

5.锁定一下表:

flush tables with read lock;

(为了同步前数据一致。)

show master status (查看一下position和file)

(退出mysql)

此时查看一下/data/mysql又是什么库

(一般同步不要同步mysql库,因为里面有很多用户名和密码)

6.备份一下所需要同步的库:

mysqldump -uroot -p123456 zrlog > /tmp/zrlog.sql

配置从

1.查看my.cnf,配置server-id=134,要求和主不一样

2.修改完配置文件后,启动或者重启mysqld服务

/etc/init.d/mysqld restart

3.把主上需要同步的库复制过来:

scp 192.168.136.133:/tmp/*.sql /tmp/

临时创建alias,方便使用命令:

alias 'mysql=/usr/local/mysql/bin/mysql'

alias 'mysqldump=/usr/local/mysql/bin/mysqldump'

4.进入mysql

创建相对应的库:

create database cansheng;

create database zrlog;

create database mysql2;

5.数据恢复:

mysql -uroot cansheng < /tmp/mysql.sql

6.进入mysql

(1)stop slave;

(2)change master to master_host='192.168.136.133', master_user='repl', master_password='123456', master_log_fil_log_file='canshenglinux1.000002', master_log_pos=646207;

(3)start slave;

(4)判定主从是否配置成功

show slave status\G

这样是表示不成功配置成功的要出现两个yes才成功。

不成功的因素:

(1)防火墙 systemctl  stop firewalld

(2)selinux   -->关闭 sentenforce 0

(3)用户名是否正确

{而我的因素是在配置主的时候指定用户名和密码错误了,从头来了一次}

7.回到主,进到mysql解除table(表)的锁定

unlock tables;

至此完成主从配置:

测试主从同步

(只需要在主或者从,其中一个配置就可以了。这些参数默认是没有配置的,没有手动配置,那默认是同步所有的库)

在从上配置尽量使用最后两个,可以避免在忽略某个库或者表时,当级联查询的时候避免出现数据丢失,不该忽略的也忽略了!!

测试主从是否成功,是否同步!

1.两台机器都进到mysql下,进到测试的数据库:cansheng2

此时清空主上的comment表;看看从上的comment表数据是否也清空,从而同步。

truncate table comment;

删除表测试:

 我们不能再 从 这台机器上执行mysql操作,不然这时我们的主从就断开。

(因为此时我们的position已经改变)

如果此时我们的主从断开了,应该重新执行

(1)stop slave;

(2)change master to master_host='192.168.136.133', master_user='repl', master_password='123456', master_log_fil_log_file='canshenglinux1.000002', master_log_pos=646207;

(3)start slave;

(4)判定主从是否配置成功

show slave status\G

这样是表示不成功配置成功的要出现两个yes才成功。














原文地址:http://blog.51cto.com/13589255/2095858

时间: 2024-10-01 06:15:29

MySQL主从配置:主从介绍、配置主和从 、测试主从同步的相关文章

17.1 MySQL主从介绍;17.2 准备工作;17.3 配置主;17.4 配置从;17.5 测试主从同步

17.1 MySQL主从介绍 1. MySQL主从又叫做Replication.AB复制.简单讲就是A和B两台机器做主从后,在A上写数据,另外一台B也会跟着写数据,两者数据实时同步的 2. MySQL主从是基于binlog的,主上须开启binlog才能进行主从. 3. 主从过程大致有3个步骤 1)主将更改操作记录到binlog里 2)从将主的binlog事件(sql语句)同步到从本机上并记录在relaylog里 3)从根据relaylog里面的sql语句按顺序执行 4. 主上有一个log dum

17.1 MySQL主从介绍17.2 准备工作17.3 配置主17.4 配置从17.5 测试主从同步

- 17.1 MySQL主从介绍 - 17.2 准备工作 - 17.3 配置主 - 17.4 配置从 - 17.5 测试主从同步 # 17.1 MySQL主从介绍 -  MySQL主从又叫做Replication.AB复制.简单讲就是A和B两台机器做主从后,在A上写数据,另外一台B也会跟着写数据,两者数据实时同步的 -  MySQL主从是基于binlog的,主上须开启binlog才能进行主从.bilog,是二进制文件,无法cat -  主从过程大致有3个步骤 1. 主将更改操作记录到binlog

MySQL主从介绍、准备工作、配置主、配置从、测试主从同步

MySQL主从介绍 MySQL主从又叫做Replication.AB复制.简单讲就是A和B两台机器做主从后,在A上写数据,另外一台B也会跟着写数据,两者数据实时同步.MySQL主从是基于binlog的,主上须开启binlog才能进行主从. 主从过程: 需要保持数据的一致性,才能复制数据 1.主服务器将更改操作记录到binlog中 2.从服务器将主服务器的binlog事件(SQL语句)同步到本机(从服务器)并记录在relaylog(中继日志)中 3.从服务器根据relaylog里面的SQL语句按顺

MySQL的主从介绍、配置主、配置从、测试主从同步

MySQL的主从介绍 配置主 配置从 测试主从同步 主从配置的常见故障 1.网络原因:查看网络是否正常,SELinux是否关闭,iptables是否关闭2.账号密码不对:粗心大意,用户名与密码输错3.POS值不对:show maste status:4.克隆机器以及复制mysql都会出现UUID的问题,更改UUID即可 原文地址:http://blog.51cto.com/13515599/2095025

mysql主从介绍,准备工作,主配置,从配置,主从测试

主从介绍 MySQL主从又叫做Replication.AB复制.简单讲就是A和B两台机器做主从后,在A上写数据,另外一台B也会跟着写数据,两者数据实时同步. MySQL主从是基于binlog的,主上须开启binlog才能进行主从. 主从过程三个步骤 主将更改操作记录到binlog中 从将主的binlog事件(SQL语句)同步到本机并记录在relaylog中 从根据relaylog里面的SQL语句按顺序执行 该过程有三个线程,主上有一个logdump线程,用来和从的i/o线程传递binlog:从上

MySQL主从介绍、准备工作、准备工作、配置从、测试主从同步

17.1 MySQL主从介绍 MySQL主从又叫做Replication.AB复制.简单讲就是A和B两台机器做主从后,在A上写数据,另外一台B也会跟着写数据,两者数据实时同步: MySQL主从是基于binlog的,主上须开启binlog才能进行主从. 主从过程大致有3个步骤 主将更改操作记录到binlog里 从将主的binlog事件(sql语句)同步到从本机上并记录在relaylog里 从根据relaylog里面的sql语句按顺序执行 主上有一个log dump线程,用来和从的I/O线程传递bi

MySQL主从(介绍,配置主机,配置从机,测试主从同步)

一.介绍及准备工作 1.介绍 MySQL主从配置又叫Replication或者AB复制,简单讲就是A和B两台机器做主从后,在A上写数据,另一台B也会跟着写数据,两台数据实时同步. MySQL主从是基于binlog的,主上须开启binlog才能进行主从. 主从过程大致有3个步骤 主将更改操作记录到Binlog里 从将主的Binlog事件(sql语句)同步到从本机上并记录在relaylog里 从根据relaylog里面的sql语句按顺序执行 主上有一个logdump线程,用来和从的i/o线程传递bi

mysql主从配置&&基于keepalived的主备切换

mysql互为主从设置 && 主备切换配置 需求说明: 1.公司架构一直是一台单独的mysql在线上跑,虽然一直没有出现什么宕机事件,但是出于一个高可用的考虑,提出主从备份.主备切换的需求: 2.实现这个需求的前一段时间只是在做数据库备份的时候实现了主从热备,为了实现主备切换功能,继续操作上述需求: 实验环境: master1:10.1.156.3:3306 master2:10.1.156.5:3306 my.cnf配置文件关于主从这块的修改: master1: server-id =

8.31 MySQL主从配置、准备工作、配置主、配置从、测试主从同步

1.MySQL主从配置  MySQL主从又叫做Replication.AB复制.简单讲就是A和B两台机器做主从后,在A上写数据,另外一台B也会跟着写数据,两者数据是实时同步的 MySQL主从是基于binlog的,主上须开启binlog才能进行主从. 主从过程大致有3个步骤 1)主将更改操作记录到binlog里 2)从将主的binlog事件(sql语句)同步到从本机上并记录在relaylog里 3)从根据relaylog里面的sql语句按顺序执行 主上有一个log dump线程,用来和从的I/O线