参考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实现从服务器的部署~ 速度真的很快~

MYSQL正式环境主从复制(不锁表,不停服务)的更多相关文章

  1. MySQL中select * for update锁表的范围

    MySQL中select * for update锁表的问题 由于InnoDB预设是Row-Level Lock,所以只有「明确」的指定主键,MySQL才会执行Row lock (只锁住被选取的资料例 ...

  2. MySQL中select * for update锁表的问题

    MySQL中select * for update锁表的问题 由于InnoDB预设是Row-Level Lock,所以只有「明确」的指定主键,MySQL才会执行Row lock (只锁住被选取的资料例 ...

  3. mysql查询更新时的锁表机制分析

    为了给高并发情况下的mysql进行更好的优化,有必要了解一下mysql查询更新时的锁表机制. 一.概述 MySQL有三种锁的级别:页级.表级.行级.MyISAM和MEMORY存储引擎采用的是表级锁(t ...

  4. mysql中kill掉所有锁表的进程

    --mysql中kill掉所有锁表的进程 --------------------------------2014/05/20 在数据库的管理中,我们经常会碰到锁表的问题,看一下进程列表. mysql ...

  5. mysql查询更新时的锁表机制分析(只介绍了MYISAM)

    为了给高并发情况下的mysql进行更好的优化,有必要了解一下mysql查询更新时的锁表机制. 一.概述 MySQL有三种锁的级别:页级.表级.行级.MyISAM和MEMORY存储引擎采用的是表级锁(t ...

  6. MySQL Online DDL导致全局锁表案例分析

    MySQL Online DDL导致全局锁表案例分析 我这边遇到了什么问题? 线上给某个表执行新增索引SQL, 然后整个数据CPU打到100%, 连接数暴增到极限, 最后导致所有访问数据库的应用都奔溃 ...

  7. 转 MySQL中的行级锁,表级锁,页级锁

      对mysql乐观锁.悲观锁.共享锁.排它锁.行锁.表锁概念的理解 转载. https://blog.csdn.net/puhaiyang/article/details/72284702 实验环境 ...

  8. [数据库事务与锁]详解五: MySQL中的行级锁,表级锁,页级锁

    注明: 本文转载自http://www.hollischuang.com/archives/914 在计算机科学中,锁是在执行多线程时用于强行限制资源访问的同步机制,即用于在并发控制中保证对互斥要求的 ...

  9. MySQL中select * for update锁表的问题(转)

    由于InnoDB预设是Row-Level Lock,所以只有「明确」的指定主键,MySQL才会执行Row lock (只锁住被选取的资料例) ,否则MySQL将会执行Table Lock (将整个资料 ...

随机推荐

  1. Cantor表(中等)

    2 3 1/2 2/1 题目分析 这是NoI的一道题目,不过题目比较有创意也比较适合新生,就是一道简单的找规律的题目,首先找到第N个数应该在第几个斜行,然后判断这一行是奇数还是偶数,偶数分母递减,分子 ...

  2. eclipse快捷键总结

    一.自定义快捷键 Window->Preferences->General->keys,进入快捷键管理界面,可以修改默认功能的快捷键组合例:修改以下快捷键功能(快捷键组合尽量保持唯一 ...

  3. 触摸事件 Touch MotionEvent ACTION

    MotionEvent简介 当用户触摸屏幕时,将创建一个MontionEvent对象,MotionEvent包含了关于发生触摸的位置.时间信息,以及触摸事件的其他细节. 获取MontionEvent对 ...

  4. 帧动画 AnimationDrawable

    Drawable Animation(Frame Animation):帧动画,就像GIF图片,通过一系列Drawable依次显示来模拟动画的效果. 首先,在res/drawable中定义动画 < ...

  5. Java多线程——线程的生命周期和状态控制

    一.线程的生命周期 线程状态转换图: 1.新建状态 用new关键字和Thread类或其子类建立一个线程对象后,该线程对象就处于新生状态.处于新生状态的线程有自己的内存空间,通过调用start方法进入就 ...

  6. MyEclipse设置默认的文档注释

  7. hdu 5062

    题意:将10^0-10^6之间属于  "Beautiful Palindrome Number" 的数个数打印出来,所谓 "Beautiful Palindrome Nu ...

  8. js接收复选框的值

    <td><input type="checkbox" class="title" name="title" value=& ...

  9. Windows下查看端口被程序占用的方法

      有时安装程序时,会出现XX端口被占用的情况,可以通过CMD命令查看什么程序占用 1. netstat -ano 查看相应端口对应程序的PID 例如:   C:\>netstat -ano A ...

  10. Hyper-V下的Linux虚拟机网卡丢失问题原因及解决办法

    Hyper-V下的Linux虚拟机网卡丢失问题原因及解决办法   虚拟化大势所趋 公司推行了虚拟化,全部用的是Microsoft Windows 2008 R2 Enterprise with Hyp ...