最简单的用法用
mysqldump -uroot -pmysql test > test.dmp
当想备份某个表时
mysqldump -uroot -pmysql --databases test --tables zwz >zwz.dmp
考虑到数据库的一致性,在此引入两个参数 --single-transaction ,--lock-all-tables
--single-transaction
对于该参数,在innodb 存储引擎使用的时候在A时刻导出表a的时候,在导出的过程当中,可以对该表进行操作,比如B时刻插入一条记录。
mysqldump -uroot -pmysql --opt --databases mytest >mytest.dump --single-transaction
--lock-all-tables
对于该参数 ,导出时,先锁定所有库需要导的表 ,导出完成之后,自动解释
mysqldump -uroot -pmysql --opt --databases mytest >mytest.dump --lock-all-tables
----------------------------------------------------------------------------------------------------------------------
--lock-tables 与--lock-all-tables
“--lock-tables ” 并不是一次性将需要 dump 的所有表锁定,而是每次仅仅锁定一个数据库的表,如果你需要 dump 的表
分别在多个不同的数据库中,一定要使用“--lock-all-tables”才能确保数据的一致完整性。
具体更多使用方法可以参数 mysqldump --help 用法