mysql主从复制之同步部分库表
这里以mariadb为例,和mysql一样的配置
系统:centos7
主服务器:192.168.0.1:3305(两台服务器都做过时间同步)
从服务器:192.168.0.2:3306(两台服务器都做过时间同步)
同步的库表:testadmin库下的user表和order表
*安装mariadb
#卸载旧数据库
yum remove mysql mysql-server mysql-libs compat-mysql51
#添加mariadb源
vi /etc/yum.repos.d/MariaDB.repo
[mariadb]
name = MariaDB
baseurl = https://mirrors.ustc.edu.cn/mariadb/yum/10.1/centos7-amd64/
gpgkey=https://mirrors.ustc.edu.cn/mariadb/yum/RPM-GPG-KEY-MariaDB
gpgcheck=1
rpm --import https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
#安装mariadb
yum -y install MariaDB-server MariaDB-client
#启动
systemctl start mariadb
*设置数据库密码和远程登录
#root密码为123456
mysqladmin -u root password 123456
#设置远程登录
mysql -uroot -p123456
>grant all on *.* to root@'%' identified by '' with grant option;
>flush privileges;
*主服务器(192.168.0.1)
[mysqld]
port=3305 #这里的端口如果不是默认的3306,那么在从服务器上执行的命令就会加上master_port=3305
bind-address=0.0.0.0
server-id=1 #设置优先级,主必须小于从
log-bin=mysql-bin
log-slave-updates=true
#重启
systemctl restart mariadb
#配置连接从服务器,连接的用户是test,密码为123
mysql -uroot -p123456
>grant replication client,replication slave on *.* to test@'192.168.0.2' identified by ''; #这里地址可以写成192.168.0.%,表示这个网段的从数据库都可以连接到
>flush privileges;
>show master status; #记下file和Position,下面从服务器配置需要,例如mysql-bin.000006 600
*从服务器(192.168.0.2)
[mysqld]
bind-address=0.0.0.0
server-id=2
relay-log=relay-bin
#需要同步的表
replicate-wild-do-table = testadmin.user
replicate-wild-do-table = testadmin.order
#重启
systemctl restart mariadb
#配置连接主服务器
mysql -uroot -p123456
>change master to master_host='192.168.0.1',master_user='test',master_password='',master_port=3305,MASTER_LOG_FILE='mysql-bin.000006',MASTER_LOG_POS=600; #一般默认是3306,可以不写这个端口配置,只是遇到特殊情况就需要加上master_port
>flush privileges;
*验证
#从服务器上
mysql -uroot -p123456
>start slave; #若要重新设置连接,必须要先停掉stop slave
>show slave status \G;
.
.
Slave_IO_Running: Yes
Slave_SQL_Running: Yes
.
.
#表示连接成功
#然后再到主数据库指定库里操作指定表,从数据库上的表也会跟着改变,但是如果修改其他未指定的库或者表,从数据库上并不会同步修改,当然,如果是直接在从数据库上修改任何表,主数据库并不会有任何变化
*其他操作
#如果同步出现某个错误,但是想要忽略当前这个错误,那么执行
stop slave;
set global sql_slave_skip_counter=;
start slave; #如果想要一直忽略某种错误,就更新这样的配置并重启
[mysqld]
slave_skip_errors = ,, #表示忽略code为1062、1032和1049的错误
mysql主从复制之同步部分库表的更多相关文章
- mysql主从只同步部分库或表
同步部分数据有两个思路,1.master只发送需要的:2.slave只接收想要的. master端: binlog-do-db 二进制日志记录的数据库(多数据库用逗号,隔开)binlog-i ...
- MySQL系列详解六:MySQL主从复制/半同步演示-技术流ken
前言 随着技术的发展,在实际的生产环境中,由单台MySQL数据库服务器不能满足实际的需求.此时数据库集群就很好的解决了这个问题了.采用MySQL分布式集群,能够搭建一个高并发.负载均衡的集群服务器.在 ...
- Linux下 MYSQL 主从复制、同步
mysql从3.23.15版本以后提供数据库复制功能.利用该功能可以实现两个数据库同步,主从模式(A->B),互相备份模式(A<=>B)的功能. 主从模式(A->B)的配置过程 ...
- MySQL主从复制半同步复制原理及搭建
在MySQL5.5之前的版本中,MySQL的复制是异步复制,主库和从库的数据之间存在一定的延迟,比如网络故障等各种原因,这样子容易存在隐患就是:当在主库写入一个事务成功后并提交了,但是由于从库延迟没有 ...
- MySQL 手动主从同步不锁表
有时候MySQL主从同步不一致比较严重的时候,需要手动同步. 然而网上看大很多需要锁表的同步的方法基本如下 1.先对主库锁表 FLUSH TABLES WITH READ LOCK; 2.备份数据 m ...
- Mysql-5.5版本搭建实例的部分库的从库
由于业务需要在Mysql实例中创建部分库的从库,已有的Mysql实例的版本是mysql-5.5.49,是一个非常老的版本. 本文档涉及到服务器中运行多实例和构建实例中部分库的从库. 服务器 mysql ...
- 重新学习Mysql数据13:Mysql主从复制,读写分离,分表分库策略与实践
一.MySQL扩展具体的实现方式 随着业务规模的不断扩大,需要选择合适的方案去应对数据规模的增长,以应对逐渐增长的访问压力和数据量. 关于数据库的扩展主要包括:业务拆分.主从复制.读写分离.数据库分库 ...
- MySQL主从复制&读写分离&分库分表
MySQL主从复制 MySQL的主从复制只能保证主机对外提供服务,从机是不提供服务的,只是在后台为主机进行备份数据 首先我们说说主从复制的原理,这个是必须要理解的玩意儿: 理解: MySQL之间的数据 ...
- mysql主从读写分离,分库分表
1.分表 当项目上线后,数据将会几何级的增长,当数据很多的时候,读取性能将会下降,更新表数据的时候也需要更新索引,所以我们需要分表,当数据量再大的时候就需要分库了. a.水平拆分:数据分成多个表 b. ...
随机推荐
- delete操作符
delete操作符通常用来删除对象的属性: Js代码 var o = { x: 1 }; delete o.x; // true o.x; // undefined 而不是一般的变量: Js代 ...
- 使用Visual Studio进行单元测试-Shim类中无法找到参数包含CancellationTokenSource的方法
Shim类中无法找到参数包含CancellationTokenSource的方法,这句话有点绕口,看例子. 一.代码 public class CancellationDemo { public in ...
- poj 3469 Dual Core CPU——最小割
题目:http://poj.org/problem?id=3469 最小割裸题. 那个限制就是在 i.j 之间连双向边. 根据本题能引出网络流中二元关系的种种. 别忘了写 if ( x==n+1 ) ...
- C语言学习笔记--enum和sizeof关键字
1.enum关键字 C语言中enum关键字用来定义枚举类型 (1)enum 是 C 语言中的一种自定义类型(2)enum 值是可以根据需要自定义的的整型值(3)第一个定义的 enum 值默认为 0 ( ...
- BIOS MCSDK 2.0 User Guide - Acronyms and Definitions
BIOS MCSDK 2.0 User Guide - Texas Instruments Wiki Acronyms and Definitions The following acronyms a ...
- IPSec方案部署(多业务场景)
技术点详解—IPSec方案部署 通过前面几期的介绍可以发现IPSec所涉及的参数很多,在具体方案部署过程中有许多灵活选择的地方,本期专栏就专门对IPSec在几种典型环境中的方案部署进行介绍. 一. ...
- ubuntu 和 CentOS 安装docker
一.ubuntu14.04 安装docker 1 apt-get update2 apt-get update-grup3 reboot4 检查mapper的安装:ls -l /sys/class/m ...
- 关于Android阻塞的解决方法
首先新建一个线程,然后有两种方法 1.POST方法(直接,但是可读性差) 2.使用AnycTask类,可读性好,而且是POST方法的封装
- Linux Shell 脚本提示:sleep: 无效的时间间隔"1s\r"
问题:编写好的 Shell 脚本在 Linux 执行时提示报错:sleep: 无效的时间间隔"1s\r" : 原因:若再三确认脚本没有写错,可能是原脚本文件在 Win 下创建编写好 ...
- Sharepoint2013商务智能学习笔记之Excel Service展示Sql Server数据Demo(五)
第一步,打开Excel新建空白工作簿 第二步,使用Excel连接sql 数据库 第三步,画图 第四步 添加筛选器 最后效果如下: 第五步,将Excel上传到sharepoint任意文档库,并直接点击 ...