配置Mysql server 5.5 的双机备份,也就是master-slave模式。本例子还是一个多database复制的情况。

现在有两个database在同一台mysql server,也就是master,各自有自己的user访问和操作,用于不同的应用程序。这两个database都要通过replication配置,实时复制到另一台mysql server上,也就是slave。

配置步骤:

1. 从master上到处现有的数据
mysqldump -R -E -uroot -p ADB > masteradb.sql;
mysqldump -R -E -uroot -p BDB > masterbdb.sql;

2. 为master和slave定制配置文件/etc/my.cnf,然后启动mysql

vi /etc/my.cnf

###详细内容见附录
service mysql restart

3. 在slave上创建database.
create database ADB;
create database BDB;

4. 在master和slave上配置user和privilege;

GRANT ALL PRIVILEGES ON ADB.* TO usera@`%` IDENTIFIED BY 'pass' WITH GRANT OPTION;
GRANT ALL PRIVILEGES ON ADB.* TO usera@`localhost` IDENTIFIED BY 'pass' WITH GRANT OPTION;
GRANT ALL PRIVILEGES ON BDB.* TO userb@`%` IDENTIFIED BY 'pass' WITH GRANT OPTION;
GRANT ALL PRIVILEGES ON BDB.* TO userb@`localhost` IDENTIFIED BY 'pass' WITH GRANT OPTION;
flush privileges;

5. 在master上配置用于数据复制的user和privilege;

grant SUPER ON *.* TO 'auser'@'%' IDENTIFIED BY 'pass' WITH GRANT OPTION;
grant SUPER ON *.* TO 'buser'@'%' IDENTIFIED BY 'pass' WITH GRANT OPTION;
GRANT SELECT ON mysql.proc TO 'auser'@'%' IDENTIFIED BY 'pass' WITH GRANT OPTION;
GRANT SELECT ON mysql.proc TO 'buser'@'%' IDENTIFIED BY 'pass' WITH GRANT OPTION;
GRANT REPLICATION SLAVE ON *.* TO repluser IDENTIFIED BY 'pass';
flush privileges;

6. 在master上运行下列命令,得到master的状态,包含binlog的文件名和当前位置

mysql> show master status;
+------------------+----------+--------------------------------+------------------+
| File             | Position | Binlog_Do_DB                   | Binlog_Ignore_DB |
+------------------+----------+--------------------------------+------------------+
| mysql-bin.000001 |   000173| ADB,BDB |                  |
+------------------+----------+--------------------------------+------------------+
1 row in set (0.02 sec)

7. 在slave配置复制来源,包括hostname,user,password,binlog文件名,位置。
CHANGE MASTER TO MASTER_HOST='10.224.106.225', MASTER_USER='repluser', MASTER_PASSWORD='pass', master_log_file='mysql-bin.000001', master_log_pos=173;
start slave;

8. 运行下列命令查看slave的当前状态。

show slave status\G

结果出现

Slave_IO_Running: Yes
            Slave_SQL_Running: Yes

表示数据同步复制已经成功运行。

提示:如果show slave status\G 出现了错误,运行下列命令跳过,在重启slave
SET GLOBAL SQL_SLAVE_SKIP_COUNTER =100;start slave;
show slave status\G;
stop slave;
SET GLOBAL SQL_SLAVE_SKIP_COUNTER =0;start slave;

附录:

master my.cnf配置

[client]
port = 3306
socket = /var/lib/mysql/mysql.sock [mysqld]
port = 3306
socket = /var/lib/mysql/mysql.sock
skip-external-locking
key_buffer = 384M
max_allowed_packet = 32M
table_open_cache = 5120
key_buffer_size = 64M
sort_buffer_size = 512M
net_buffer_length = 8K
read_buffer_size = 16M
read_rnd_buffer_size = 128M
myisam_sort_buffer_size = 128M query_cache_size = 256M
tmp_table_size = 128M
max_heap_table_size = 128M
thread_concurrency = 8
max_connections=500
group_concat_max_len=1048576 max_sp_recursion_depth=255 slow_query_log_file=/spare/mysql/slow_queries.log
long_query_time = 5 binlog_cache_size = 2M
join_buffer_size = 32M
thread_cache_size = 16
query_cache_limit = 2M
transaction_isolation = REPEATABLE-READ
log-bin=mysql-bin
auto_increment_increment = 2
auto_increment_offset = 1
server-id = 1 binlog-do-db = ADB
binlog-do-db = BDB log_slave_updates = 1
relay-log=RELAY_LOCALHOST-relay-bin innodb_data_home_dir = /spare/mysql/
innodb_data_file_path = ibdata1:2000M;ibdata2:10M:autoextend
innodb_log_group_home_dir = /spare/mysql/ innodb_additional_mem_pool_size = 16M innodb_buffer_pool_size = 8G
innodb_thread_concurrency = 16 innodb_flush_log_at_trx_commit = 2 innodb_log_buffer_size = 8M innodb_log_file_size = 250M max_binlog_size=100M
expire_logs_days=3
sync_binlog=1 #Ensure all writes to binary are flushed to disk in a timely manner
binlog-format=ROW [mysqldump]
quick
max_allowed_packet = 256M [mysql]
no-auto-rehash [isamchk]
key_buffer = 256M
sort_buffer_size = 256M
read_buffer = 2M
write_buffer = 2M [myisamchk]
key_buffer = 256M
sort_buffer_size = 256M
read_buffer = 2M
write_buffer = 2M [mysqlhotcopy]
interactive-timeout

slave my.cnf配置

[client]
port = 3306
socket = /var/lib/mysql/mysql.sock [mysqld]
port = 3306
socket = /var/lib/mysql/mysql.sock
skip-external-locking
key_buffer = 384M
max_allowed_packet = 32M
table_open_cache = 5120
key_buffer_size = 64M
sort_buffer_size = 512M
net_buffer_length = 8K
read_buffer_size = 16M
read_rnd_buffer_size = 128M
myisam_sort_buffer_size = 128M query_cache_size = 256M
tmp_table_size = 128M
max_heap_table_size = 128M
thread_concurrency = 8
max_connections=500
group_concat_max_len=1048576 max_sp_recursion_depth=255 slow_query_log_file=/spare/mysql/slow_queries.log
long_query_time = 5 binlog_cache_size = 2M
join_buffer_size = 32M
thread_cache_size = 16
query_cache_limit = 2M
transaction_isolation = REPEATABLE-READ
log-bin=mysql-bin
auto_increment_increment = 2
auto_increment_offset = 1 # the slave offset keep same as master
server-id = 2 replicate-do-db = ADB
replicate-do-db = BDB log_slave_updates = 1
relay-log=RELAY_LOCALHOST-relay-bin innodb_data_home_dir = /spare/mysql/
innodb_data_file_path = ibdata1:2000M;ibdata2:10M:autoextend
innodb_log_group_home_dir = /spare/mysql/ innodb_additional_mem_pool_size = 16M
innodb_autoextend_increment = 256M
innodb_buffer_pool_size = 8G
innodb_thread_concurrency = 16 innodb_flush_log_at_trx_commit = 2
innodb_log_buffer_size = 8M
####innodb_log_buffer_size = 32M
innodb_log_file_size = 250M max_binlog_size=100M
expire_logs_days=3
sync_binlog=1 #Ensure all writes to binary are flushed to disk in a timely manner
binlog-format=ROW [mysqldump]
quick
max_allowed_packet = 256M [mysql]
no-auto-rehash [isamchk]
key_buffer = 256M
sort_buffer_size = 256M
read_buffer = 2M
write_buffer = 2M [myisamchk]
key_buffer = 256M
sort_buffer_size = 256M
read_buffer = 2M
write_buffer = 2M [mysqlhotcopy]
interactive-timeout

Mysql 5.5 replication 多数据库主从备份Master-Slave配置总结的更多相关文章

  1. MySQL5.6 数据库主从(Master/Slave)同步安装与配置详解

    .安装环境 .基本环境配置 .Master的配置 .Slave的配置 .添加需要同步的从库Slave .真正的测试 安装环境 1 操作系统 :CentOS 6.5 2 数据库版本:MySQL 5.6. ...

  2. Percona备份mysql全库及指定数据库(完整备份与增量备份)

    Percona Xtrabackup备份mysql全库及指定数据库(完整备份与增量备份) Xtrabackup简介 Percona XtraBackup是开源免费的MySQL数据库热备份软件,它能对I ...

  3. MySQL数据库主从同步安装与配置总结

    MySQL的主从同步是一个很成熟的架构,优点为: ①在从服务器可以执行查询工作(即我们常说的读功能),降低主服务器压力: ②在从主服务器进行备份,避免备份期间影响主服务器服务: ③当主服务器出现问题时 ...

  4. Percona Xtrabackup备份mysql全库及指定数据库(完整备份与增量备份)

    原文地址:http://www.tuicool.com/articles/RZRnq2 Xtrabackup简介 Percona XtraBackup是开源免费的MySQL数据库热备份软件,它能对In ...

  5. redis的主从机制 master&slave

    转载自:https://www.cnblogs.com/qwangxiao/p/9733480.html 一:master&slave的解释? master&slave就是主从复制,主 ...

  6. mysql数据库主从备份

    近期实验室总是不给通知的就停电,导致我们在不停的恢复服务.在某一个断电的过程中,发现我们的项目管理工具redmine的硬盘挂掉了..因为是部署在虚拟机上的,也没做冗余,数据就丢了..于是反思,我们的m ...

  7. mariadb主从备份

    mariadb主从备份 master主库配置 停止mariadb systemctl stop mariadb 修改配置文件my.conf vim /etc/my.cnf [mysqld] serve ...

  8. mysql主从备份及常见问题处理

    1.mysql主从备份基本原理 mysql支持单向.异步复制,复制过程中一个服务器充当主服务器,而一个或多个其它服务器充当从服务器.mysql复制基于主服务器在二进制日志中跟踪所有对数据库的更改(更新 ...

  9. 使用percona-xtrabackup工具对mysql数据库的备份方案

    使用percona-xtrabackup工具对mysql数据库的备份方案 需要备份mysql的主机 172.16.155.23存放备份mysql的主机 172.16.155.22 目的:将155.23 ...

随机推荐

  1. poj1149

    非常好的网络流 每个顾客分别用一个结点来表示. 对于每个猪圈的第一个顾客,从源点向他连一条边,容量就是该猪圈里的猪的初始数量 对于每个猪圈,假设有n个顾客打开过它,则对所有整数i∈[1, n),从该猪 ...

  2. poj3067

    求交点的个数: 容易发现,对于两条航线(xi,yi)和(xj,yj),设xi<xj 只有yi>yj时两条航线存在交点: 于是我们考虑以x为第一关键字减序,y为第二关键字为减序排序: 则对于 ...

  3. 分享10个Js的小型库,效果真的很棒

    1.$fx()简介:$fx()是一个轻量级的动画库,一些复杂的动画,可以由多个简单的动画效果进行组合,但是提供的是混淆压缩过的代码,对于研究动画源码的朋友可能特别不爽API:http://fx.ine ...

  4. Session简介

    摘要:虽然session机制在web应用程序中被采用已经很长时间了,但是仍然有很多人不清楚session机制的本质,以至不能正确的应用这一技术.本文将详细讨论session的工作机制并且对在Java ...

  5. Web API 依赖注入与扩展

    与 MVC 类似, Web API 提供了System.Web.Http.Services.IDependencyResolver 接口来实现依赖注入, 我们可以很容易的用 Unity 来实现这个接口 ...

  6. SGU 134 Centroid

    题意:给出一个树,每个点有一个value,value的意义是去掉这个点之后所有连通分量中点最多的那个连通分量的点数,这棵树的重心为所有点value的最小值,求重心,及重心都有谁. 解法:貌似是个树形d ...

  7. C++ 学习资料搜寻与学习(第一期)(未完待续)

    一.图形图像类 [Visual C++]vs2008/2005正确打开vs2010所创建项目的几种方法 jlins 2012-04-12 14:38 [Visual C++]关于无法打开包括文件:“S ...

  8. HDU 1495 非常可乐 BFS搜索

    题意:有个为三个杯子(杯子没有刻度),体积为s,n,m,s=m+n, 刚开始只有体积为s的杯子装满可乐,可以互相倒,问你最少的次数使可乐均分,如果没有结果,输出-1; 分析:直接互相倒就完了,BFS模 ...

  9. HDU 1078 FatMouse and Cheese 记忆化搜索DP

    直接爆搜肯定超时,除非你加了某种凡人不能想出来的剪枝...555 因为老鼠的路径上的点满足是递增的,所以满足一定的拓补关系,可以利用动态规划求解 但是复杂的拓补关系无法简单的用循环实现,所以直接采取记 ...

  10. JS兼容性处理

    百度 - 终端适配API 适合服务器端使用.POST客户端传递的http头信息越多,得到的适配信息越准确.百度返回的数据为: 正确情况: { device_type :/*1:手机2:pc*/ os: ...