mysqldump使用笔记

mysqldump备份简述mysql

mysqldump可产生两种类型的输出文件,取决因而否选用 --tab=dir_name选项。linux

1.不使用 --tab=dir_name选项,mysqldump产生的数据文件是纯文本的SQL文件,如CREATE(数据库、表、存储路径等)语句和INSERT(记录)语句组成。输出结果以一个文件保存,可用mysql命令去恢复备份文件。sql

2.使用 --tab=dir_name选项,mysqldump对于每个须要备份的数据表产生两个输出文件:一个是带分隔符的文本文件,备份的数据表中的每行存储为文本中的一行,以"表名.txt"保存;另外一个输出文件为数据表的CREATE TABLE语句,以"表名.sql"保存。数据库

mysqldump语法和选项windows

在linux系统中,能够使用 man mysqldump命令,或者,mysqldump -hlep命令查看相关选项的使用大数据

--all-databases表示备份系统中全部数据库,使用 --databases参数以后,必须指定至少一个数据库的名称,多个数据库名称之间用空格隔开ui

【经常使用的选项】ip

1.--add-drop-table内存

这个选项讲会在每个表的前面加上DROP TABLE IF EXISTS语句,这样能够保证导回MYSQL数据库的时候不会出错,由于每次导回的时候,都会首先检查表是否存在,存在就删除。table

2.--add-locks

这个选项会在INSERT语句中捆上一个LOCK TABLE和UNLOCK TABLE语句。这就防止在这些记录被再次导入数据库时其余用户对表进行操做。

3.--tab

这个选项将会建立两个文件,一个是带分隔符的文本文件,备份的数据表中的每行存储问文本中的一行,以"表名.txt"保存;另外一个输出文件为数据表的CREATE TABLE语句,以"表名.sql"保存。

4.--quick或者--opt

若是你未使用--quick或者--opt选项,那么mysqldump将在转储结果以前把所有内容载入到内存中。这在你转储大数据量的数据库时将会有些问题。该选项默认是打开的,但能够使用--skip-opt关闭它。

5.--skip-comments

该选项能够去掉导出文件中的注释语句

6.--compact

该选项能够只输出最重要的语句,而不输出注释及删除表语句等。

 

在windows下,能够使用下面的语句导出全部的数据库

mysqldump -h 主机名 -u 用户名 -p --all-databases > C:\备份文件名.sql

mysqldump -u用户名 -p --databases db1 db2 db3... > 备份文件名.sql

mysqldump -u用户名 -p --databases db_name > db_name.sql(--databases 会生成CRATE DATABASE 和 USE 语句)

mysqldump -u用户名 -p db_name > db_name.sql (不会生成CRATE DATABASE 和 USE 语句)

mysqldump -u用户名 -p 数据库名 表名1 表名2 表名3... > 备份文件名.sql

 

 

mysqldump -uroot -p -S /tmp/mysql3306.sock --databases db_name > db_name.sql

mysqldump -uroot -p -S /tmp/mysql3306.sock db_name > db_name.sql

相关文章
相关标签/搜索