mysqldump 备份数据说明+ 避免锁表

 

 

1、mysqldump命令备份Mysql数据库的参数说明

在用mysqldump备份使用那些参数选项是最完美的组合呢?
--skip-opt
--create-option                     ----添加create相关的选项
--single-transaction                ----一致性备份
-q                  ----采用快速的dump方式(提高导出性能)
-e                  ----采用多重insert语句形式(提高还原性能),当一个表的数据量很大情况下不知道会不会导致死锁?
--no-autocommit                     ----采用批量提交方式(提高还原性能)
-R                  ----导出存储过程,函数,和触发器
--master-data                       ----如果有写log-bin且版本为5.0以上的版本,则再加上 --master-data=2
--events                            ----如果是5.1以上的版本使用,包含事件


几个使用mysqldump时的报错

1.mysqldump:Got error:2013
在使用mysqldump的时候(尤其是向NFS上备份的时候),很多人都被'mysqldump:Got error:2013: Lost connection to MySQL server during query when dumping table'的问题困扰,在Manual中对这个问题有一些简单的说明。
解决办法:增加net_write_timeout可以解决上述的问题的

2.Mysqldump导出AUTO_INCREMENT列的问题
如果是复制表的结构需要去掉auto_increment的option,可以写个脚本把这个选项去掉

3.Mysqldump过程中遇到的Out of Memory问题处理
当DB数据量很大的时候,导出数据可加上-q Option。但是如果用了--skip-opt,那么-q Option必须放在--skip-opt的后面

2、使用 mysqldump 备份数据库时避免锁表

备份数据库时  用 命令 mysqldump -u user -p xxx>xxx.sql发现没有完全备份数据库记录,加上  --skip-opt选项后好了

 

对一个正在运行的数据库进行备份请慎重!! 如果一定要 在服务运行期间备份,请添加 --skip-opt选项,

 

类似执行: mysqldump --skip-opt -u root --password=123456 dbname >mySQL.SQL

 

posted @ 2015-12-11 10:09  wuling129  阅读(18030)  评论(0编辑  收藏  举报