MySql数据库备份mysqldump参数选项
来源:ssll2826的 Blog 作者:ssll2826的 Blog
">实用轨范,为备份或为把数据转移到此外的SQL办事器上倾倒一个数据库大概多数据库。倾倒将包括 创建表或充盈表的SQL语句。
shell> mysqldump [OPTIONS] database [tables]
若是你不给定任何表,整个数据库将被倾倒。
经由实行mysqldump --help,你能掉掉你mysqldump的版本支撑的选项表。
注意,若是你运转mysqldump没有--quick或--opt选项,mysqldump将在倾倒结果前装载整个结果集到内存中,若是你正在倾倒一个年夜的数据库,这将年夜概是一个结果。
mysqldump支撑下列选项:
--add-locks
在每个表倾倒之前添加LOCK TABLES而且之后UNLOCK TABLE。(为了使得更快地拔出到MySQL)。
--add-drop-table
在每个create语句之前添加一个drop table。
--allow-keywords
允许创建是要害词的列名字。这由表名前缀于每个列名做到。
-c, --complete-insert
操作完好的insert语句(用列名字)。
-C, --compress
若是客户和办事器均支撑紧缩,紧缩两者间十足的信息。
--delayed
用INSERT DELAYED呼吁拔出行。
-e, --extended-insert
操作全新多行INSERT语法。(给出更膨胀而且更快的拔出语句)
-#, --debug[=option_string]
跟踪轨范的操作(为了调试)。
--help
体现一条匡助往事而且插足。
--fields-terminated-by=...
--fields-enclosed-by=...
--fields-optionally-enclosed-by=...
--fields-escaped-by=...
--fields-terminated-by=...
这些选择与-T选择一同操作,而且有呼应的LOAD DATA INFILE子句相反的含义。见7.16 LOAD DATA INFILE语法。
-F, --flush-logs
在初步倾倒前,洗掉在MySQL办事器中的日志文件。
-f, --force,
即便我们在一个表倾倒时代掉掉一个SQL错误,持续。
-h, --host=..
坚守名的主机上的MySQL办事器倾倒数据。缺省主机是localhost。
-l, --lock-tables.
为初步倾倒锁定十足表。
-t, --no-create-info
不写入表创建信息(CREATE TABLE语句)
-d, --no-data
不写入表的任何行信息。若是你只想掉掉一个表的布局的倾倒,这是很有效的!
--opt
同--quick --add-drop-table --add-locks --extended-insert --lock-tables。应该给你为读入一个MySQL办事器的尽年夜概最快的倾倒。
-pyour_pass, --password[=your_pass]
与办事器衔接时操作的口令。若是你不指定“=your_pass”局部,mysqldump必要来自终真个口令。
-P port_num, --port=port_num
与一台主机衔接时操作的TCP/IP端口号。(这用于衔接到localhost以外的主机,因为它操作 Unix套接字。)
-q, --quick
不缓冲盘问,直接倾倒至stdout;操作mysql_use_result()做它。
-S /path/to/socket, --socket=/path/to/socket
与localhost衔接时(它是缺省主机)操作的套接字文件。
-T, --tab=path-to-some-directory
关于每个给定的表,创建一个table_name.sql文件,它包括SQL CREATE 呼吁,和一个table_name.txt文件,它包括数据。 注意:这只要在mysqldump运转在mysqld保卫历程运转的一致台呆板上的时辰才任务。.txt文件的款式按照--fields-xxx和--lines--xxx选项来定。
-u user_name, --user=user_name
与办事器衔接时,MySQL操作的用户名。缺省值是你的Unix登录名。
-O var=option, --set-variable var=option
设置一个变量的值。年夜概的变量被列鄙人面。
-v, --verbose
冗长形式。打印出轨范所做的更多的信息。
-V, --version
打印版本信息而且插足。
-w, --where=''''where-condition''''
只倾倒被选择了的记实;注意引号是强逼的!
"--where=user=''''jimf''''" "-wuserid>1" "-wuserid<1"
最罕见的mysqldump操作年夜概制造整个数据库的一个备份:
mysqldump --opt database > backup-file.sql
但是它对用来自于一个数据库的信息充盈此外一个MySQL数据库也是有效的:
mysqldump --opt database | mysql --host=remote-host -C database
版权声明: 原创作品,允许转载,转载时请务必以超链接体式款式标明文章 原始来因 、作者信息和本声明。否则将追究执法责任。