`

MySQL的mysqldump

阅读更多

二、正规的方法(官方建议):

导出要用到MySQL的mysqldump工具,基本用法是:  

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子句相同的含义。  
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  

由于mysqldump导出的是完整的SQL语句,所以用mysql客户程序很容易就能把数据导入了:  

mysqladmin create target_db_name  
mysql target_db_name < backup-file.sql 

分享到:
评论

相关推荐

    delphi备份和还原MySql数据库.zip

    《使用Delphi进行MySQL数据库的备份与还原》 在IT领域,数据库的备份与还原是至关重要的环节,尤其是在开发和维护阶段,确保数据的安全性是每个程序员必须关注的问题。本篇将详细介绍如何利用Delphi这一强大的集成...

    mysqldump.exe

    `mysqldump.exe` 是 MySQL 数据库管理系统中的一款重要命令行工具,它主要用于数据库的备份、导出和数据迁移。这款工具的功能强大且灵活,是数据库管理员日常工作中不可或缺的一部分。下面将详细介绍 `mysqldump` 的...

    使用MySQL MySqldump命令导出数据时的注意事项

    在使用MySQL的`mysqldump`命令进行数据导出时,有几点需要注意,以确保数据的安全和完整。首先,当遇到导入时的`Duplicate entry`错误时,不要轻易使用`--force`参数来强行导入,因为这可能导致数据丢失。正确的处理...

    mysql mysqldump只导出表结构或只导出数据的实现方法

    MySQL的`mysqldump`工具是数据库管理中不可或缺的一部分,它用于备份、迁移或复制数据库。本文将详细讲解如何使用`mysqldump`来只导出表结构或者只导出数据,以及如何导入这些备份。 ### 只导出表结构 如果你想从...

    MySQL mysqldump命令使用详解

    MySQL的`mysqldump`命令是数据库管理中不可或缺的一部分,它主要用于从MySQL数据库中导出数据,以实现备份、迁移或数据共享等目的。在本文中,我们将深入探讨`mysqldump`的使用方法及其相关选项。 首先,`mysqldump...

    mysql mysqldump数据备份和增量备份

    /usr/local/mysql/bin/mysqldump -uroot -p123456 --quick --all-databases --flush-logs --delete-master-logs --single-transaction &gt; $DumpFile /bin/tar czvf $GZDumpFile $DumpFile /bin/rm $DumpFile Last=$...

    mysql、mysqldump命令离线包(可直接使用命令)

    包里面的文件:mysql、mysqldump 两个命令 mysqldump使用方法:可直接使用,备份数据库 使用方法:mysqldump --opt -u用户名 -p密码 -hIP地址 -P数据库端口 要备份的库 &gt; 导入指定的sql里 示例:mysqldump --opt -u...

    PHP定时备份MySQL与mysqldump语法参数详解

    mysqldump是一个用于备份MySQL数据库的命令行工具,它能将数据库结构和/或数据导出为SQL格式的文本文件。以下是几个常用的mysqldump操作示例: 1. **只导出表结构**: ```bash d:/PHP/xampp/mysql/bin/mysqldump ...

    mysql使用mysqldump备份和还原

    MySQL是世界上最流行的开源关系型数据库管理系统之一,而`mysqldump`是MySQL提供的一款用于数据库备份和恢复的工具。本篇文章将详细讲解如何使用`mysqldump`进行数据库的备份与还原,以及与之相关的`qt`编程中如何...

    Linux下Mysql的配置

    ### Linux下MySQL的配置详解 #### 一、安装MySQL 在Linux系统中安装MySQL可以通过RPM包进行。这里提供了一个示例命令: ```bash rpm -ivh MySQL-server-4.1.22-0.glibc23.i386.rpm --nodeps rpm -ivh MySQL-...

    使用mysqldump命令导出MYSQL数据库

    `mysqldump`是一个强大的命令行工具,它允许用户备份、导出MySQL数据库的数据和结构。这个工具对于开发人员和系统管理员来说是必不可少的,因为它提供了在不同环境之间迁移数据的能力,也可以用于定期备份,防止数据...

    mysql和mysqldump文件.zip

    而`mysqldump`是MySQL提供的一款强大的工具,用于数据库备份、恢复以及导出数据。 在Linux环境下,MySQL的安装和配置是通过命令行完成的。首先,你需要确保系统已经安装了MySQL服务器和客户端工具。通常,你可以...

    mysqldump-8.0.20.zip

    【标题】"mysqldump-8.0.20.zip"是一个包含了MySQL数据库备份工具mysqldump的压缩文件,适用于Windows操作系统。这个版本是8.0.20,这意味着它包含了MySQL 8.0的主要特性和服务更新。 【描述】提到的"从MySQL ...

    linux-Mysqldumpsecure加密mysqldump脚本

    `mysqldump`是一个常用的命令行工具,用于备份MySQL数据库。然而,直接使用`mysqldump`可能会暴露出敏感信息,比如用户名、密码等。为了增强安全性,我们可以使用名为`mysqldump-secure`的脚本来加密备份过程,并且...

    mysqldump.exe 5.7工具

    MySQL是世界上最受欢迎的关系型数据库管理系统之一,而`mysqldump.exe`是其配套的一款强大工具,主要用于数据库的备份、迁移和数据导出。在MySQL 5.7版本中,`mysqldump`提供了丰富的功能,使得数据库的管理变得更加...

    Mysql的备份之mysqldump与Xtrabackup.md

    介绍了mysql的两大备份工具的实现原理以及优缺点。从基础概念redo_log、undo_log、MVCC等概念开始阐述,主要适合初学者理解,有的观点是我个人理解,可能存在偏差,分享出来,方便大家阅读和讨论,也欢迎批评指正,...

Global site tag (gtag.js) - Google Analytics