当前位置:天才代写 > Python代写 > mysqldump导出多数据库操作-工具

mysqldump导出多数据库操作-工具

2021-02-14 17:59 星期日 所属: Python代写 浏览:22

导出来数据库查询

1.mysqldump导出来全部库

mysqldump -uroot -ppassword -A > mysql_dump.sql

2.导出来全部 忽视独特库

mysql -e "show databases;" -uroot -ppassword | grep -Ev "Database|db1|db2|test" | xargs mysqldump -uroot -ppassword --databases > mysql_dump.sql

3.正则匹配导出来独特库

mysql -e "show databases;" -uroot -ppassword | grep -E "db.*|test" | xargs mysqldump -uroot -ppassword --databases > mysql_dump.sql

4.导出来数据库查询中清除table1和table2表的数据信息

mysqldump -uroot -ppassword -t --ignore-table=database.table1 --ignore-table=database.table2 >> database.sql

额外选择项:

-c 详细sql语句
–skip-add-locks 不锁表
-d 导出来表结构不导出数据
-t 导出数据不导出来表结构
-R 导出来sql语句及自定义函数

修复数据库查询

从备份数据修复数据库查询

mysql -f -uroot  -ppassword < mysql_dump.sql 

mysqldump指令详细说明

--all-databases , -A
导出来所有数据库查询。

--all-tablespaces , -Y
导出来所有表空间。

--no-tablespaces , -y
不导出来一切表空间数据。

--add-drop-database
每一个数据库查询建立以前加上drop数据库语句。

--add-drop-table
每一个数据分析表建立以前加上drop数据分析表句子。(默认设置为开启情况,应用--skip-add-drop-table撤消选择项)

--add-locks
在每一个表导出来以前提升LOCK TABLES而且以后UNLOCK TABLE。(默认设置为开启情况,应用--skip-add-locks撤消选择项)

--allow-keywords
容许建立是关键字的列姓名。这由表名作为前缀于每一个字段名保证。

--apply-slave-statements
在'CHANGE MASTER'前加上'STOP SLAVE',而且在导出来的最终加上'START SLAVE'。

--character-sets-dir
字段名文档的文件目录

--comments
额外注解信息内容。默认设置为开启,可以用--skip-comments撤消

--compatible
导出来的数据信息将和其他数据库查询或旧版的MySQL 相兼容。值能够为ansi、mysql323、mysql40、postgresql、oracle、mssql、db2、maxdb、no_key_options、no_tables_options、no_field_options等,
要应用好多个值,用分号将他们分隔。它并不确保能彻底兼容,只是尽可能兼容。

--compact
导出来越来越少的輸出信息内容(用以调节)。除掉注解和首尾等构造。能够应用选择项:--skip-add-drop-table --skip-add-locks --skip-comments --skip-disable-keys

--complete-insert, -c
应用详细的insert句子(包括列名字)。那么做会提升插进高效率,可是很有可能会遭受max_allowed_packet主要参数的危害而造成插进不成功。

--compress, -C
在手机客户端和集群服务器开启缩小传送全部信息内容

--create-options, -a
在CREATE TABLE句子中包含全部MySQL特点选择项。(默认设置为开启情况)

--databases, -B
导出来好多个数据库查询。主要参数后边全部姓名参数都被当作数据库查询名。

--debug
輸出debug信息内容,用以调节。初始值为:d:t:o,/tmp/mysqldump.trace

--debug-check
查验运行内存和打开文件使用说明书并撤出。

--debug-info
輸出调试信息并撤出

--default-character-set
设定默认设置字段名,初始值为utf8

--delayed-insert
选用廷时插入方式(INSERT DELAYED)导出数据

--delete-master-logs
master备份数据后删掉日志. 这一主要参数将全自动激话--master-data。

--disable-keys
针对每一个表,用/*!40000 ALTER TABLE tbl_name DISABLE KEYS */;和/*!40000 ALTER TABLE tbl_name ENABLE KEYS */;句子引入INSERT句子。那样能够迅速地导进dump出去的文档,因为它是在插进全部行后创建索引的。该选择项只合适MyISAM表,默认设置为开启情况。

--dump-slave
该选择项将造成主的binlog部位和文件夹名称增加到导出数据的文档中。设定为1时,可能以CHANGE MASTER指令輸出到数据库文件;设定为2时,在指令前提升表明信息内容。该选择项可能开启--lock-all-tables,除非是--single-transaction被特定。该选择项会全自动关掉--lock-tables选择项。初始值为0。

--events, -E
导出来事情。

--extended-insert, -e
应用具备好几个VALUES列的INSERT英语的语法。那样使导出来文档更小,并加快导进时的速率。默认设置为开启情况,应用--skip-extended-insert撤消选择项。

--fields-terminated-by
导出来文档中忽视给出字段名。与--tab选择项一起应用,不可以用以--databases和--all-databases选择项

--fields-enclosed-by
輸出文档中的每个字段名用给出标识符包囊。与--tab选择项一起应用,不可以用以--databases和--all-databases选择项

--fields-optionally-enclosed-by
輸出文档中的每个字段名用给出标识符可选择性包囊。与--tab选择项一起应用,不可以用以--databases和--all-databases选择项

--fields-escaped-by
輸出文档中的每个字段名忽视给出标识符。与--tab选择项一起应用,不可以用以--databases和--all-databases选择项

--flush-logs
逐渐导出来以前更新日志。
一定要注意:倘若一次导出来好几个数据库查询(应用选择项--databases或是--all-databases),可能逐一数据库查询更新日志。除应用--lock-all-tables或是--master-data外。在这类状况下,日志可能被更新一次,相对的因此 表另外被锁住。因而,假如准备另外导出来和更新日志应当应用--lock-all-tables 或是--master-data 和--flush-logs。

--flush-privileges
在导出来mysql数据库查询以后,传出一条FLUSH PRIVILEGES 句子。为了更好地恰当修复,该选择项应当用以导出来mysql数据库查询和依靠mysql数据库查询数据信息的任何时刻。

--force
在导出来全过程中忽视出現的SQL不正确。

--help
表明协助信息内容并撤出。

--hex-blob
应用十六进制文件格式导出来二进制字符串数组字段名。如果有二进制数据信息就务必应用该选择项。危害到的字段名种类有BINARY、VARBINARY、BLOB。

--host, -h
必须导出来的服务器信息内容

--ignore-table
不导出来特定表。特定忽视好几个表时,必须反复数次,每一次一个表。每一个表务必另外特定数据库查询和表名。比如:--ignore-table=database.table1 --ignore-table=database.table2 ……

--include-master-host-port
在--dump-slave造成的'CHANGE MASTER TO..'句子中提升'MASTER_HOST=<host>,MASTER_PORT=<port>'

--insert-ignore
在插入行时应用INSERT IGNORE句子.

--lines-terminated-by
輸出文档的每排用给出字符串数组区划。与--tab选择项一起应用,不可以用以--databases和--all-databases选择项。

--lock-all-tables, -x
递交要求锁住全部数据库查询中的全部表,以确保数据的一致性。这是一个全局性读锁,而且全自动关掉--single-transaction 和--lock-tables 选择项。

--lock-tables, -l
逐渐导出来前,锁住全部表。用READ LOCAL锁住表以容许MyISAM表并行处理插进。针对适用事务管理的表比如InnoDB和BDB,--single-transaction是一个更强的挑选,因为它压根不用锁住表。
一定要注意当导出来好几个数据库查询时,--lock-tables各自为每一个数据库查询锁住表。因而,该选择项不可以确保导出来文档中的表在数据库查询中间的逻辑性一致性。不一样数据库表的导出来情况能够彻底不一样。

--log-error
额外警示和错误报告到给出文档

--master-data
该选择项将binlog的部位和文件夹名称增加到輸出文档中。假如为1,可能輸出CHANGE MASTER 指令;假如为2,輸出的CHANGE MASTER指令前加上注解信息内容。该选择项将开启--lock-all-tables 选择项,除非是--single-transaction也被特定(在这类状况下,全局性读锁在逐渐导出来时得到很短的時间;别的內容参照下边的--single-transaction选择项)。该选择项全自动关掉--lock-tables选择项。

--max_allowed_packet
服务器发送和接纳的较大 包长短。

--net_buffer_length
TCP/IP和socket联接的缓存文件尺寸。

--no-autocommit
应用autocommit/commit 句子包囊表。

--no-create-db, -n
只导出数据,而不加上CREATE DATABASE 句子。

--no-create-info, -t
只导出数据,而不加上CREATE TABLE 句子。

--no-data, -d
不导出来一切数据信息,只导出来数据库表构造。

--no-set-names, -N
相当于--skip-set-charset

--opt
相当于--add-drop-table, --add-locks, --create-options, --quick, --extended-insert, --lock-tables, --set-charset, --disable-keys 该选择项默认设置打开, 可以用--skip-opt禁止使用.

--order-by-primary
假如存有主键,或是第一个唯一键,对每一个表的纪录开展排列。在导出来MyISAM表到InnoDB表时合理,但会促使导出来工作中花销很长期。

--password, -p
数据库连接登陆密码

--pipe(windows系统软件能用)
应用命名管道联接mysql

--port, -P
数据库连接服务器端口

--protocol
应用的联接协议书,包含:tcp, socket, pipe, memory.

--quick, -q
不缓存查看,立即导出来到规范輸出。默认设置为开启情况,应用--skip-quick撤消该选择项。

--quote-names,-Q
应用(`)造成表和字段名。默认设置为开启情况,应用--skip-quote-names撤消该选择项。

--replace
应用REPLACE INTO 替代INSERT INTO.

--result-file, -r
立即輸出到特定文档中。该选择项应当用在应用回车键自动换行对(\\r\\n)自动换行的系统软件上(比如:DOS,Windows)。该选择项保证仅有一行被应用。

--routines, -R
导出来sql语句及其自定义函数。

--set-charset
加上'SET NAMES default_character_set'到輸出文档。默认设置为开启情况,应用--skip-set-charset关掉选择项。

--single-transaction
该选择项在导出数据以前递交一个BEGIN SQL句子,BEGIN 不容易堵塞一切应用软件且能确保导出来时数据库查询的一致性情况。它只适用多版本号储存模块,仅InnoDB。本选择项和--lock-tables 选择项是相互独立的,由于LOCK TABLES 会使一切脱机的事务管理暗含递交。要想导出来大表得话,应融合应用--quick 选择项。

--dump-date
将导出来時间加上到輸出文档中。默认设置为开启情况,应用--skip-dump-date关掉选择项。

--skip-opt
禁止使用–opt选择项.

--socket,-S
特定联接mysql的socket文件部位,默认设置途径/tmp/mysql.sock

--tab,-T
为每一个表在给出途径建立tab切分的文本文档。留意:只是用以mysqldump和mysqld网络服务器运作在同样设备上。

--tables
遮盖--databases (-B)主要参数,特定必须导出来的表名。

--triggers
导出来触发器原理。该选择项默认设置开启,用--skip-triggers禁止使用它。

--tz-utc
在导出来顶端设定时区时间TIME_ZONE=' 00:00' ,以确保不在另外区导出来的TIMESTAMP 数据信息或是数据信息被挪动别的时区时间时的准确性。

--user, -u
特定联接的登录名。

--verbose, --v
輸出多种多样服务平台信息内容。

--version, -V
輸出mysqldump版本信息并撤出

--where, -w
只转储给出的WHERE标准挑选的纪录。一定要注意假如标准包括指令表述符专用型空格符或标识符,一定要将标准引入起來。

--xml, -X
导出来XML文件格式.

--plugin_dir
手机客户端软件的文件目录,用以兼容不一样的软件版本号。

--default_auth
手机客户端软件默认设置应用管理权限。

来源于51CTOblog创作者qianghong000的原创作品

 

    关键字:

天才代写-代写联系方式