MySQL——mysqldump参数

来源:互联网 发布:asp.net mvc 商城源码 编辑:程序博客网 时间:2024/06/01 23:06

mysqldump参数

日前,因接手线上项目单表数据过大,对项目进行优化,添加日报表优化查询。需要对线上数据线下处理,并将处理结果同步至线上日报表,接触到了mysqldump命令,对其参数进行简单记录说明。来源-MySQL 5.6 Reference Manual 官方文档

mysqldump,顾名思义,对mysql库表的dump备份。主要用来对mysql数据库表结构级数据的转储,可以使用该命令将表结构、数据文件形式输出,从而进行数据库表的备份迁移。

mysqldump使用格式 

mysqldump -u [用户名] -p [参数1,参数2] > [文件位置,如 F:/out.sql]

mysqldump应用 

mysqldump -u root -p db_calm_easy tb_poet > f:/poet.sql

完整输出结果为

-- MySQL dump 10.13  Distrib 5.5.23, for Win64 (x86)---- Host: localhost    Database: db_calm_easy-- -------------------------------------------------------- Server version   5.5.23/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;/*!40101 SET NAMES utf8 */;/*!40103 SET @OLD_TIME_ZONE=@@TIME_ZONE */;/*!40103 SET TIME_ZONE='+00:00' */;/*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */;/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */;/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */;/*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */;---- Table structure for table `tb_poet`--DROP TABLE IF EXISTS `tb_poet`;/*!40101 SET @saved_cs_client     = @@character_set_client */;/*!40101 SET character_set_client = utf8 */;CREATE TABLE `tb_poet` (  `poet_id` int(11) NOT NULL AUTO_INCREMENT COMMENT '主键id',  `poet_name` varchar(50) NOT NULL COMMENT '诗人名字',  `dynasty` int(11) DEFAULT NULL COMMENT '诗人朝代',  `gender` tinyint(4) DEFAULT '0' COMMENT '性别 0-男 1-女',  `famous_for` varchar(500) DEFAULT NULL COMMENT '著作',  `birth_year` int(11) DEFAULT NULL COMMENT '生年',  `death_year` int(11) DEFAULT NULL COMMENT '卒年',  `create_time` datetime DEFAULT NULL COMMENT '记录时间',  `last_modified_time` datetime DEFAULT NULL COMMENT '最近修改时间',  PRIMARY KEY (`poet_id`)) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8 COMMENT='诗人表';/*!40101 SET character_set_client = @saved_cs_client */;---- Dumping data for table `tb_poet`--LOCK TABLES `tb_poet` WRITE;/*!40000 ALTER TABLE `tb_poet` DISABLE KEYS */;INSERT INTO `tb_poet` VALUES (1,'李白',2,0,'《将进酒》,《蜀道难》',701,762,'2017-05-01 19:34:43','2017-05-01 19:34:48');/*!40000 ALTER TABLE `tb_poet` ENABLE KEYS */;UNLOCK TABLES;/*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */;/*!40101 SET SQL_MODE=@OLD_SQL_MODE */;/*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */;/*!40014 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS */;/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;/*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */;-- Dump completed on 2017-05-31 19:37:12

对比执行结果为标准输出格式,但实际中我们可能只需要备份表结构或表数据

备份表结构和数据

mysqldump -u root -p db_calm_easy tb_poet > f:/poet.sql

仅备份表结构

mysqldump –no-data -u root -p db_calm_easy tb_poet > f:/poet.sql

仅备份表数据

mysqldump –no-create-info -u root -p db_calm_easy tb_poet > f:/poet.sql

此外,因为操作权限的原因,可能我们也不希望备份文件中有drop此类关键字,可以指定参数定制输出样式,可以使用source命令执行备份文件。

source f:/poet.sql

参数详情-MySQL 5.6 Reference Manual 官方

参数 参数使用 –add-drop-database Add DROP DATABASE statement before each CREATE DATABASE statement –add-drop-table Add DROP TABLE statement before each CREATE TABLE statement –add-drop-trigger Add DROP TRIGGER statement before each CREATE TRIGGER statement –add-locks Surround each table dump with LOCK TABLES and UNLOCK TABLES statements –all-databases Dump all tables in all databases –allow-keywords Allow creation of column names that are keywords –apply-slave-statements Include STOP SLAVE prior to CHANGE MASTER statement and START SLAVE at end of output –bind-address Use specified network interface to connect to MySQL Server –character-sets-dir Directory where character sets are installed –comments Add comments to dump file –compact Produce more compact output –compatible Produce output that is more compatible with other database systems or with older MySQL servers –complete-insert Use complete INSERT statements that include column names –compress Compress all information sent between client and server –create-options Include all MySQL-specific table options in CREATE TABLE statements –databases Interpret all name arguments as database names –debug Write debugging log –debug-check Print debugging information when program exits –debug-info Print debugging information, memory, and CPU statistics when program exits –default-auth Authentication plugin to use –default-character-set Specify default character set –defaults-extra-file Read named option file in addition to usual option files –defaults-file Read only named option file –defaults-group-suffix Option group suffix value –delayed-insert Write INSERT DELAYED statements rather than INSERT statements –delete-master-logs On a master replication server, delete the binary logs after performing the dump operation –disable-keys For each table, surround INSERT statements with statements to disable and enable keys –dump-date Include dump date as “Dump completed on” comment if –comments is given –dump-slave Include CHANGE MASTER statement that lists binary log coordinates of slave’s master –enable-cleartext-plugin Enable cleartext authentication plugin –events Dump events from dumped databases –extended-insert Use multiple-row INSERT syntax –fields-enclosed-by This option is used with the –tab option and has the same meaning as the corresponding clause for LOAD DATA INFILE –fields-escaped-by This option is used with the –tab option and has the same meaning as the corresponding clause for LOAD DATA INFILE –fields-optionally-enclosed-by This option is used with the –tab option and has the same meaning as the corresponding clause for LOAD DATA INFILE –fields-terminated-by This option is used with the –tab option and has the same meaning as the corresponding clause for LOAD DATA INFILE –flush-logs Flush MySQL server log files before starting dump –flush-privileges Emit a FLUSH PRIVILEGES statement after dumping mysql database –force Continue even if an SQL error occurs during a table dump –help Display help message and exit –hex-blob Dump binary columns using hexadecimal notation –host Host to connect to (IP address or hostname) –ignore-table Do not dump given table –include-master-host-port Include MASTER_HOST/MASTER_PORT options in CHANGE MASTER statement produced with –dump-slave –insert-ignore Write INSERT IGNORE rather than INSERT statements –lines-terminated-by This option is used with the –tab option and has the same meaning as the corresponding clause for LOAD DATA INFILE –lock-all-tables Lock all tables across all databases –lock-tables Lock all tables before dumping them –log-error Append warnings and errors to named file –login-path Read login path options from .mylogin.cnf –master-data Write the binary log file name and position to the output –max_allowed_packet Maximum packet length to send to or receive from server –net_buffer_length Buffer size for TCP/IP and socket communication –no-autocommit Enclose the INSERT statements for each dumped table within SET autocommit = 0 and COMMIT statements –no-create-db Do not write CREATE DATABASE statements –no-create-info Do not write CREATE TABLE statements that re-create each dumped table –no-data Do not dump table contents –no-defaults Read no option files –no-set-names Same as –skip-set-charset –no-tablespaces Do not write any CREATE LOGFILE GROUP or CREATE TABLESPACE statements in output –opt Shorthand for –add-drop-table –add-locks –create-options –disable-keys –extended-insert –lock-tables –quick –set-charset. –order-by-primary Dump each table’s rows sorted by its primary key, or by its first unique index –password Password to use when connecting to server –pipe On Windows, connect to server using named pipe –plugin-dir Directory where plugins are installed –port TCP/IP port number to use for connection –print-defaults Print default options –protocol Connection protocol to use –quick Retrieve rows for a table from the server a row at a time –quote-names Quote identifiers within backtick characters –replace Write REPLACE statements rather than INSERT statements –result-file Direct output to a given file –routines Dump stored routines (procedures and functions) from dumped databases –secure-auth Do not send passwords to server in old (pre-4.1) format –set-charset Add SET NAMES default_character_set to output –set-gtid-purged Whether to add SET @@GLOBAL.GTID_PURGED to output –shared-memory-base-name The name of shared memory to use for shared-memory connections –single-transaction Issue a BEGIN SQL statement before dumping data from server –skip-add-drop-table Do not add a DROP TABLE statement before each CREATE TABLE statement –skip-add-locks Do not add locks –skip-comments Do not add comments to dump file –skip-compact Do not produce more compact output –skip-disable-keys Do not disable keys –skip-extended-insert Turn off extended-insert –skip-opt Turn off options set by –opt –skip-quick Do not retrieve rows for a table from the server a row at a time –skip-quote-names Do not quote identifiers –skip-set-charset Do not write SET NAMES statement –skip-triggers Do not dump triggers –skip-tz-utc Turn off tz-utc –socket For connections to localhost, the Unix socket file to use –ssl Enable secure connection –ssl-ca Path of file that contains list of trusted SSL CAs –ssl-capath Path of directory that contains trusted SSL CA certificates in PEM format –ssl-cert Path of file that contains X509 certificate in PEM format –ssl-cipher List of permitted ciphers to use for connection encryption –ssl-crl Path of file that contains certificate revocation lists –ssl-crlpath Path of directory that contains certificate revocation list files –ssl-key Path of file that contains X509 key in PEM format –ssl-mode Security state of connection to server –ssl-verify-server-cert Verify server certificate Common Name value against host name used when connecting to server –tab Produce tab-separated data files –tables Override –databases or -B option –triggers Dump triggers for each dumped table –tz-utc Add SET TIME_ZONE=’+00:00’ to dump file –user MySQL user name to use when connecting to server –verbose Verbose mode –version Display version information and exit –where Dump only rows selected by given WHERE condition –xml Produce XML output
原创粉丝点击