在数据库同步的时候,我要备份slave上的数据。
slave 上有两种方法可以让其停止 update第一种 stop slave;
第二种 flush tables with read lock
第一种情况下, show slave status\G; 显示 Slave_IO_Running = No, Slave_SQL_Running=No;
第二种情况下, show slave status\G; 显示 Slave_IO_Running = Yes
Slave_SQL_Running=Yes ## 是这样吗?
这个时候, 会不会执行relay log中的sql语句啊,如果执行了,肯定失败, 那就会丢失数据了,这儿我希望的情况是:
Slave_IO_Running = Yes Slave_SQL_Running=Yes
并且不会执行relay log中的更新。实际上是这样吗?
slave 上有两种方法可以让其停止 update第一种 stop slave;
第二种 flush tables with read lock
第一种情况下, show slave status\G; 显示 Slave_IO_Running = No, Slave_SQL_Running=No;
第二种情况下, show slave status\G; 显示 Slave_IO_Running = Yes
Slave_SQL_Running=Yes ## 是这样吗?
这个时候, 会不会执行relay log中的sql语句啊,如果执行了,肯定失败, 那就会丢失数据了,这儿我希望的情况是:
Slave_IO_Running = Yes Slave_SQL_Running=Yes
并且不会执行relay log中的更新。实际上是这样吗?
腰缠70元到月入近10万
http://www.hunbei.com.cn/Article/ArticleShow.asp?ArticleID=453IT工程师 毕业4年我年薪涨到30万
http://www.hunbei.com.cn/Article/ArticleShow.asp?ArticleID=51126岁青年坐拥千万域名资产 从小玩家变成CEO
http://www.hunbei.com.cn/Article/ArticleShow.asp?ArticleID=515程序员的酸甜苦辣:告别Coding
http://www.hunbei.com.cn/Article/ArticleShow.asp?ArticleID=341从月薪3500到700万(一)
http://www.hunbei.com.cn/Article/ArticleShow.asp?ArticleID=170网络草根月赚3000的十种方法
http://www.hunbei.com.cn/Article/ArticleShow.asp?ArticleID=517如果我是女的 我肯定不会嫁给做网站的
http://www.hunbei.com.cn/Article/ArticleShow.asp?ArticleID=512
第二种情况,它只是将从服务器中所有写在缓存中的数据全部写到硬盘,并把服务器上的所有表都锁定以进行备份操作。Slave_IO_Running =YES Slave_SQL_Running=Yes也是正常的,同时因为锁定了表,所以任何读写操作都是不能进行的,relay log 中的SQL也就无法执行了。
还有个问题
在备份的时候,我用
mysql -uroot -e "flush table with read lock;" -h localhost
根本就不能锁定表,但自动备份的脚本也只能这么写, 我应该如何锁定表呢?我在备份的时候用的是拷贝文件的方法。还希望达到Slave_IO_Running = Yes Slave_SQL_Running=Yes的效果如下:拷贝文件,不过有点问题,想在备份的时候不让其更新,但是不能锁定表,更新还是继续, 在命令行下,锁定表可以, 但一退出就不行了,自动备份的时候,用mysql -uroot -e "flush table with read lock;" -h localhost 就已经退出了,所以不会锁定,不知道还有什么好的方法, 我这是在slave 上,专门做备份的slave ,不想让其停止,这儿有一个监控软件,如果停了就会发警告,怎么样才能实现这个呢?