我写了一个shell脚本每日备份,但每当它启动mysql它锁定数据库和网站宕机。如何通过影响生产服务器的mysqldump命令执行mysql备份?
我想不会影响到活的服务器 的网站可以在不同的时区ACCES所以着收回UPS晚上
我写了一个shell脚本每日备份,但每当它启动mysql它锁定数据库和网站宕机。如何通过影响生产服务器的mysqldump命令执行mysql备份?
我想不会影响到活的服务器 的网站可以在不同的时区ACCES所以着收回UPS晚上
如果您使用的MyISAM,你可以告诉MySQL的你不想被锁定表使用--lock-tables=false
。如果您使用的是InnoDB,则可以使用--single-transaction
来避免锁定。你可以采取以避免这个问题
谢谢!!!我使用混合型表(innodb和myisam) 我用的方式 --skip-lock-tables [option] – 2013-02-22 14:19:08
一种方法是建立MySQL replication和使用从数据库从做备份。
优点是您可以完全复制数据库,并且可以有效地进行热备份,而不管数据库的类型如何。 但是,您确实需要另一台数据库服务器,并且有效地将存储容量加倍(因为您正在维护另一份数据库副本)。
thanks !!但我需要简单和小解决方案 – 2013-02-22 14:17:50
解决问题
的mysqldump -u [用户] -P [口令] DBNAME --skip-锁定表|的gzip> soohoo_backup.sql.gz
更好地接受这个答案呢! – Raad 2013-02-22 14:42:41
您可以使用:
mysqldump -u [user] -p[password] [dbname] > dumpfile.sql
如何如何使用[复制](http://onlamp.com/pub/a/onlamp/2005/06/16/MySQLian。 HTML)作为备份? – 2013-02-22 12:58:09
[复制不是备份](http://www.unitrends.com/blog/replication-is-not-backup-backup-is-backup/) – sjdaws 2013-02-22 13:01:02