开发者社区> Pisces> 正文

RDS数据库与自建库的gtid主从同步

简介: 一、在centos7上部署MySQL数据库1、从MYSQL官网下载安装文件wget http://dev.mysql.com/get/mysql-community-release-el7-5.noarch.
+关注继续查看

一、在centos7上部署MySQL数据库
1、从MYSQL官网下载安装文件
wget http://dev.mysql.com/get/mysql-community-release-el7-5.noarch.rpm
2、卸载mariadb
rpm -qa | grep mariadb #查询已安装的mariadb rpm
rpm -e --nodeps mariadb-libs-xxxxx.x86_64 #强制卸载
3、安装MySQL
rpm -ivh mysql-community-release-el7-5.noarch.rpm
yum install mysql-community-server

4、启动MySQL
systemctl start mysqld.service

5、停止MySQL
systemctl stop mysqld.service

二、修改从库配置文件/etc/my.cnf
character-set-server=utf8
datadir = /var/lib/mysql
socket = /var/lib/mysql/mysql.sock

wait_timeout=2880000
interactive_timeout = 2880000
max_allowed_packet = 100M

innodb_checksum_algorithm=innodb
innodb_data_file_path=ibdata1:200M:autoextend
innodb_log_files_in_group=2
innodb_log_file_size=524288000
innodb_undo_directory=.
innodb_undo_tablespaces=0

server-id = 10000
gtid_mode = on

enforce_gtid_consistency = 1
master-info-repository = file
relay-log-info_repository = file
log-bin = mysqlslave-bin
relay-log = mysqlslave-relay-bin
expire_logs_days = 30
log-slave-updates = 1
binlog_format = row

replicate-do-db = db1
replicate-do-db = db2
replicate-do-db = db3

replicate-ignore-db = mysql
replicate-ignore-db = information_schema
replicate-ignore-db = performance_schema
slave-skip-errors = 1007,1008,1053,1062,1213,1158,1159

三、重启从库
systemctl restart mysqld.service

四、从RDS的数据库导数据出来
mysqldump -u db1_user -pdb1_password -hmasterhost.mysql.rds.aliyuncs.com> /tmp/db1.sql
mysqldump -u db2_user -pdb2_password -hmasterhost.mysql.rds.aliyuncs.com> /tmp/db2.sql
mysqldump -u db3_user -pdb3_password -hmasterhost.mysql.rds.aliyuncs.com> /tmp/db3.sql

五、主库查询master gtid_purged
mysql>show global variables like '%gtid%';
找到gtid_purged的值,第七步要用到

六、将RDS导出的数据库,导入到从库
mysql -uroot -p root_password < /tmp/db1.sql
mysql -uroot -p root_password < /tmp/db2.sql
mysql -uroot -p root_password < /tmp/db3.sql

七、进入从库,设置同步信息
mysql>reset master;

mysql>set @@global.gtid_purged='主库的GITD值';

mysql>change master to master_host = 'masterhost.mysql.rds.aliyuncs.com', master_port = 3306, master_user = 'repl', master_password='repl_password', master_auto_position = 1;

mysql>start slave;

八、查询返回信息
mysql>show slave status G;

Slave_IO_Running: Yes
Slave_SQL_Running: Yes
两个都是yes,表示同步成功。

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
git 本地与服务器的同步
如果在服务器上直接用 git init 则会自动在当前目录创建.git目录但在本地clone后修改后,不能push,这是由于git默认拒绝了push操作,需要进行设置,修改.git/config添加如下代码: [receive] denyCurrentBranch = ignore 在初始化远程仓库时最好使用 git --bare init 需首先手工创建.
836 0
DataWorks实时同步/实时ETL/批同步ETL灰度邀测中
DataWorks实时同步功能可以支持多种实时数据源(Kafka、MySQL Binlog,Oracle CDC等),可以将实时消息数据经过一些列处理后再写入目的数据源。同时在此前DataWorks数据集成强大EL(Extract-Load)能力基础之上,增加了数据处理能力(Transform),实现了完整了ETL链路。
2325 0
双11核心系统100%上云 !阿里数据库处理峰值远超传统厂商
刚刚结束的天猫双11创下了两项新记录:交易额2684亿,订单峰值54.4万笔/秒,阿里巴巴集团CTO张建锋在当晚宣布,双11核心系统100%上云,背后作为数据核心支撑的自研数据库OceanBase和POLARDB每秒处理峰值都远远超越传统Oracle数据库。
987 0
使用DTS从RDS PG实时同步数据到AnalyticDB for PostgreSQL
DTS支持从RDS PG将数据实时同步到AnalyticDB for PG,用户可以很方便的搭建起RDS PG到AnalyticDB for PG的数据同步,轻松实现数据的流转和复杂查询的优化。 使用DTS的前提条件 要求同步的数据表,必须建有主键(通过主键来保证源端和目标端表记录一致性)。
2463 0
C#中一道关于线程同步的练习题——模拟多窗口售票
题目:模拟窗口卖票,四个窗口同时对外开放售票,需要按顺序售出。 要求:输出每一张票的售出时间和售出窗口,不能出现票未售出或者被售出多次的情况。 using System; using System.
1419 0
git学习------&gt;从SVN迁移到Git之后,项目开发代码继续在SVN提交,如何同步迁移之后继续在SVN提交的代码到Git?
最近逐步逐步的将公司的项目都从SVN往Git迁移了,但是想团队成员都能够一步到位就迁移到Git是不可能的,因为还有大部分人都还不会Git,所以整个过渡过程估计得大半年。
1643 0
从远程Oracle服务器上同步复制数据到本地备份库
create or replace PROCEDURE "SYNC_DATA_FROM_DBLINK_DB" AS BEGIN DECLARE CURSOR c_TabNames IS SELECT TNAME FROM TAB; v_TabName c_TabNames%ROWTYPE; v_SQL VARCHAR2(500); v_rowcount NUMB
1654 0
+关注
16
文章
3
问答
文章排行榜
最热
最新
相关电子书
更多
OceanBase 入门到实战教程
立即下载
阿里云图数据库GDB,加速开启“图智”未来.ppt
立即下载
实时数仓Hologres技术实战一本通2.0版(下)
立即下载