MYSQL正式环境主从复制(不锁表,不停服务)

简介:

参考URL:

http://rfyiamcool.blog.51cto.com/1030776/1016636/

 

原因源于其实以前环境是有MYSQL主从复制的,且最开始主从复制之间是OK的。

但由于日志长得太多,同步来不急,磁盘空间满了之后,失了很多记录。所以必须重新作主从,但主已不能被影响了。

~~~~~~~~~~~~~~~~~~~~~~~~

那就用XTRABACKUP吧,,阿里RDS也是用这个工作来作一些备份恢复的。

基于上,理想了思路,多参考几个网上文章就可以开始啦。。

但数据库太多,备份和COPY到从机器上都花了不少时间,幸运的是到晚上两点左右,总算搞定。

那下一步,就是优化MYSQL主性能,以及MYSQL从的滞后问题啦。

~~~~~~~~~~~~~~~~

http://blog.csdn.net/hw_libo/article/details/38316721

http://segmentfault.com/a/1190000002575399

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

最好,要先RESET MASTER一下,再开始弄哈。。。这样,就样空间对接刚刚好。

。。。。。。。。。。。。。。。。。。。。。。。

安装xtrabackup: 
 
rpm -Uhv http://www.percona.com/downloads/percona-release/percona-release-0.0-1.x86_64.rpm 
这个是64位的。 
32位的地址是: 
http://www.percona.com/downloads/percona-release/percona-release-0.0-1.i386.rpm  
  
如果装了这个套装之后却找不到innobackupex命令。。。就。。。: 
http://www.percona.com/software/percona-xtrabackup/downloads/ 

mkdir /data/backup -p 
确保在my.cnf中存在[mysqld] 
并且在[mysqld]后面存在 datadir = .... 
  
[root@localhost ~]# innobackupex --user=root --password=123456 --defaults-file=/etc/my.cnf    /data/backup
  
  
InnoDB Backup Utility v1.5.1-xtrabackup; Copyright 2003, 2009 Innobase Oy 
and Percona Inc 2009-2012.  All Rights Reserved. 
  
。。。。


innobackupex: Backup created in directory '/data/backup/2012-04-19_10-46-32' 
innobackupex: MySQL binlog position: filename 'log_bin.000027', position 2973624 
120419 10:46:53  innobackupex: completed OK! 
最后输出 completed OK! 表示备份成功了。 
可以看到在备份myisam类型表的时候,还是会锁表~~ innodb就不会锁表。哼。 
 
备份好的文件保存在 /data/backup目录中,比如: 
/data/backup/2012-04-19_10-46-32/ 
[root@localhost ~]# ls /data/backup/2012-04-19_10-46-32/ 
backup-my.cnf ibdata1 mysql shipincon test xtrabackup_binary xtrabackup_binlog_info xtrabackup_checkpoints xtrabackup_logfile 
 
备份日志: 
刚刚备份好的数据文件,并不是直接可用的。大概是处于一种数据库挂掉的状态~~~, 
细节不讲了,要用日志对其进行恢复: 
 
[root@localhost ~]# innobackupex --apply-log  /data/backup/2012-04-19_10-46-32/ 
这个过程与数据库挂掉之后重启mysqld时的自动修复过程差不多。 
 
把数据复制到从服务器: 
 
$ scp -r /data/backup/2012-04-19_10-46-32/ root@newslave:/data/ 
关闭从服务器并切换数据: 
 
$ /etc/init.d/mysql stop 
$ cd /data 
$ mv mysql mysql_old 
$ mv 2012-04-19_10-46-32 mysql 
修改my.cnf, 给它一个独一无二的server_id。 
一个比较好的办法是用服务器的IP地址,把其中的.去掉即可。 
 
然后启动mysqld: 
 
$ /etc/init.d/mysql start 
最后change master。 
与mysqldump备份的步骤比起来,这次我们没有flush tables with read lock, 
也没有show master status来获取日志文件名和座标。 
因为xtrabackup完成备份之后,自动保存了这些信息。 
 
$ cat /data/mysql/xtrabackup_binlog_info 
  
log_bin.000027 2973624 
mysql> CHANGE master to-> master_user=’rep’,-> master_password=’rep’, 
-> master_host=’10.20.30.40′, 
  
-> master_log_file=’log_bin.000027′, 
  
-> master_log_pos= 2973624; 
然后 start slave 即可。

推荐利用xtrabackup实现从服务器的部署~ 速度真的很快~

 

相关实践学习
每个IT人都想学的“Web应用上云经典架构”实战
本实验从Web应用上云这个最基本的、最普遍的需求出发,帮助IT从业者们通过“阿里云Web应用上云解决方案”,了解一个企业级Web应用上云的常见架构,了解如何构建一个高可用、可扩展的企业级应用架构。
MySQL数据库入门学习
本课程通过最流行的开源数据库MySQL带你了解数据库的世界。   相关的阿里云产品:云数据库RDS MySQL 版 阿里云关系型数据库RDS(Relational Database Service)是一种稳定可靠、可弹性伸缩的在线数据库服务,提供容灾、备份、恢复、迁移等方面的全套解决方案,彻底解决数据库运维的烦恼。 了解产品详情: https://www.aliyun.com/product/rds/mysql 
目录
相关文章
|
SQL AliSQL 关系型数据库
MYSQL的全局锁和表锁
本文介绍了MySQL中的锁机制,包括全局锁、表级锁及其应用场景。全局锁通过`Flush tables with read lock (FTWRL)`实现,主要用于全库逻辑备份,但会阻塞更新和结构变更操作。表级锁分为显式表锁(`lock tables`)和元数据锁(MDL),前者用于控制并发访问,后者自动加锁以确保读写正确性。文章还探讨了如何安全地为小表添加字段,建议通过设置DDL等待时间或使用MariaDB/AliSQL的NOWAIT/WAIT功能避免业务阻塞。这些方法有助于在高并发场景下优化数据库性能与安全性。
373 0
|
关系型数据库 MySQL Java
安装和配置JDK、Tomcat、MySQL环境,以及如何在Linux下更改后端端口。
遵循这些步骤,你可以顺利完成JDK、Tomcat、MySQL环境的安装和配置,并在Linux下更改后端端口。祝你顺利!
744 11
|
关系型数据库 MySQL Linux
在Linux环境下备份Docker中的MySQL数据并传输到其他服务器以实现数据级别的容灾
以上就是在Linux环境下备份Docker中的MySQL数据并传输到其他服务器以实现数据级别的容灾的步骤。这个过程就像是一场接力赛,数据从MySQL数据库中接力棒一样传递到备份文件,再从备份文件传递到其他服务器,最后再传递回MySQL数据库。这样,即使在灾难发生时,我们也可以快速恢复数据,保证业务的正常运行。
613 28
|
SQL 网络协议 关系型数据库
MySQL 主从复制
主从复制是 MySQL 实现数据冗余和高可用性的关键技术。主库通过 binlog 记录操作,从库异步获取并回放这些日志,确保数据一致性。搭建主从复制需满足:多个数据库实例、主库开启 binlog、不同 server_id、创建复制用户、从库恢复主库数据、配置复制信息并开启复制线程。通过 `change master to` 和 `start slave` 命令启动复制,使用 `show slave status` 检查同步状态。常见问题包括 IO 和 SQL 线程故障,可通过重置和重新配置解决。延时原因涉及主库写入延迟、DUMP 线程性能及从库 SQL 线程串行执行等,需优化配置或启用并行处理
415 40
|
关系型数据库 MySQL 数据库
RDS用多了,你还知道MySQL主从复制底层原理和实现方案吗?
随着数据量增长和业务扩展,单个数据库难以满足需求,需调整为集群模式以实现负载均衡和读写分离。MySQL主从复制是常见的高可用架构,通过binlog日志同步数据,确保主从数据一致性。本文详细介绍MySQL主从复制原理及配置步骤,包括一主二从集群的搭建过程,帮助读者实现稳定可靠的数据库高可用架构。
978 9
RDS用多了,你还知道MySQL主从复制底层原理和实现方案吗?
|
关系型数据库 MySQL PHP
源码编译安装LAMP(HTTP服务,MYSQL ,PHP,以及bbs论坛)
通过以上步骤,你可以成功地在一台Linux服务器上从源码编译并安装LAMP环境,并配置一个BBS论坛(Discuz!)。这些步骤涵盖了从安装依赖、下载源代码、配置编译到安装完成的所有细节。每个命令的解释确保了过程的透明度,使即使是非专业人士也能够理解整个流程。
513 18
|
关系型数据库 MySQL 网络安全
如何排查和解决PHP连接数据库MYSQL失败写锁的问题
通过本文的介绍,您可以系统地了解如何排查和解决PHP连接MySQL数据库失败及写锁问题。通过检查配置、确保服务启动、调整防火墙设置和用户权限,以及识别和解决长时间运行的事务和死锁问题,可以有效地保障应用的稳定运行。
551 25
|
SQL 存储 关系型数据库
MySQL主从复制 —— 作用、原理、数据一致性,异步复制、半同步复制、组复制
MySQL主从复制 作用、原理—主库线程、I/O线程、SQL线程;主从同步要求,主从延迟原因及解决方案;数据一致性,异步复制、半同步复制、组复制
1983 11
|
数据管理 关系型数据库 MySQL
数据管理服务DMS支持MySQL数据库的无锁结构变更
本文介绍了使用Sysbench准备2000万数据并进行全表字段更新的操作。通过DMS的无锁变更功能,可在不锁定表的情况下完成结构修改,避免了传统方法中可能产生的锁等待问题。具体步骤包括:准备数据、提交审批、执行变更及检查表结构,确保变更过程高效且不影响业务运行。
2499 2
|
关系型数据库 MySQL 数据库
docker高级篇(大厂进阶):安装mysql主从复制
docker高级篇(大厂进阶):安装mysql主从复制
425 24

推荐镜像

更多