mysqldump工具命令操作mysql备份导入导出实例

mysqldump工具很多方面类似相反作用的工具mysqlimport。它们有一些同样的选项。但mysqldump能够做更多的事情。它可以把整个数据库装载到一个单独的文本文件中。这个文件包含有所有重建您的数据库所需要的SQL命令。这个命令取得所有的模式(Schema,后面有解释)并且将其转换成DDL语法(CREATE语句,即数据库定义语句),取得所有的数据,并且从这些数据中创建INSERT语句。这个工具将您的数据库中所有的设计倒转。因为所有的东西都被包含到了一个文本文件中。这个文本文件可以用一个简单的批处理和一个合适SQL语句导回到MySQL中。这个工具令人难以置信地简单而快速。决不会有半点让人头疼地地方。

mysqldump是mysql用于转存储数据库的实用程序。它主要产生一个SQL脚本,其中包含从头重新创建数据库所必需的命令CREATE TABLE INSERT等。下面就让我们一起学习吧!

一、mysqldump:数据库备份程序

有3种方式来调用mysqldump:

mysqldump [options] db_name [tables]
mysqldump [options] ---database DB1 [DB2 DB3...]
mysqldump [options] --all--database

如果没有指定任何表或使用了---database或--all--database选项,则转储整个数据库。

1、备份一个数据库.

mysqldump -uroot -p123456 mysql > mysql_backup.sql

这里备份了database mysql的结构和数据,生成的sql文件不会有创建database mysql的语句。

2、可以用一个命令备份mysql,test多个数据库:

mysqldump -u root -p123456 --database mysql test > my_databases.sql

生成的sql文件有创建database mysql和test的语句

3、备份所有数据库:

mysqldump -u root -p123456 --all-databases > all_databases.sql

4、导出mysql这个数据库的结构

mysqldump -u root -p123456 -d --add-drop-table mysql > mysql_define.sql

5、导出一个数据所有数据并用gz压缩

mysqldump -u root -p123456 mysql | gzip > mysql.sql.gz

可以这样将转储文件读回到服务器:

mysql db_name < backup-file.sql
mysql -e "source /path-to--backup/backup-file.sql" db_name

或者从gz文件中还原

gunzip -f < mysql.sql.gz | mysql -u root -p123456 test

二、SELECT...INTO OUTFILE

SELECT...INTO OUTFILE 'file_name'形式的SELECT可以把被选择的行写入一个文件中,该文件被创建到服务器主机上。

SELECT...INTO OUTFILE是LOAD DATA INFILE的补语;用于语句的exort_options部分的语法包括部分FIELDS和LINES子句,这些子句与LOAD DATA INFILE语句同时使用。

在下面的例子中,生成一个文件,各值用逗号隔开。这种格式可以被许多程序使用

SELECT * INTO OUTFILE '/tmp/result.txt'
FIELDS TERMINATED BY ','
OPTIONALLY ENCLOSED BY '"'
LINES TERMINATED BY '\n'
FROM mysql.user;

将mysql数据库的user表的数据导出到/tmp/result.txt

SELECT...INTO OUTFILE只能导出数据,不能导出结构,一般和load data联合使用。

三、LOAD DATA INFILE

LOAD DATA INFILE语句用于高速地从一个文本文件中读取行,并装入一个表中。文件名称必须为一个文字字符串。

由character_set_database系统变量指示的字符集被用于解释文件中的信息。

LOAD DATA LOCAL INFILE '/tmp/result.txt' INTO TABLE test.user
FIELDS TERMINATED BY ','
OPTIONALLY ENCLOSED BY '"'
LINES TERMINATED BY '\n'

把/tmp/result.txt的数据导入到test数据库的user表。

四、导入导出格式

FIELDS TERMINATED BY ',' 字段间分割符采用,号
OPTIONALLY ENCLOSED BY '"'     用"号将字段包围,对数值型无效
LINES TERMINATED BY '\n'       记录间隔符采用\n换行符

在CMD命令下导入与导出MYSQL数据库实例详解

1.导入数据库 (本地)

例如你安装xampp在本地D盘,(步骤都一样,注意位置)导入数据库步骤如下:

d:
cd xampp\mysql\bin\
xampp\mysql\bin\mysql -u数据库名 -p密码 //

mysql>use net2003; //找出要导入数据库

mysql>source D:\数据库位置 即可

--------------------------------------------------------------------------------------

2.导出数据库 (本地)

d:
cd xampp\mysql\bin\

mysql -h服务器 -u用户 -p密码 要导入的数据库名 <备份文件.sql
mysqldump -u数据库名 -p密码 数据库> net2003.sql 数据库 即可

然后运行 explorer . 表示打开已导出数据库的位置,找到导出的数据库

到这就全完工了.

--------------------------------------------------------------------------------------

导入时出现foreign key关联表问题,解决方法:

运行source file.sql前运行:
use databasename;后
SET FOREIGN_KEY_CHECKS = 0;
导入成功后运行:
SET FOREIGN_KEY_CHECKS = 1;

时间: 2025-01-25 12:11:16

mysqldump工具命令操作mysql备份导入导出实例的相关文章

MySQL数据导入导出实例教程手册

mysqldump是mysql自带的一个数据导入导出工具,其官方注释为: shell> mysqldump [options] db_name [tbl_name ...] shell> mysqldump [options] –databases db_name - shell> mysqldump [options] –all-databases 使用mysqldump命令将整个数据库导出  代码如下 复制代码 mysqldump -h 127.0.0.1 -P 3306 -u ro

MySQL数据导入导出方法与工具介绍(3-Exporting Data)

mysql|数据                MySQL数据导入导出方法与工具介绍(3-Exporting Data)                  导出数据的方法:Methods of Exporting Data 翻译声明:    本文内容来自Sam's Teach Yourself MySQL in 21 Days一书的部分内容,by Mark Maslakowski    英文原文版权属原作者所有,中文的部分翻译有略有增删;原书讲的过于清楚的地方有删,讲的不清楚的地方有增:如果有翻

MySQL数据导入导出方法与工具介绍(1- myslqimport utility)

mysql|数据             MySQL数据导入导出方法与工具介绍(1- myslqimport utility)              mysqlimport文本文件导入工具介绍 翻译声明:    本文内容来自Sam's Teach Yourself MySQL in 21 Days一书的部分内容,by Mark Maslakowski      英文原文版权属原作者所有,中文的部分翻译有略有增删;原书讲的过于清楚的地方有删,讲的不清楚的地方有增:如果有翻译的不妥或者不正确的地

MySQL数据导入导出方法与工具介绍(2-import from sql files)

mysql|数据    MySQL数据导入导出方法与工具介绍(2-import from sql files)          批处理导入文件,从sql文件导入数据到数据库中 翻译声明:    本文内容来自Sam's Teach Yourself MySQL in 21 Days一书的部分内容,by Mark Maslakowski    英文原文版权属原作者所有,中文的部分翻译有略有增删;原书讲的过于清楚的地方有删,讲的不清楚的地方有增:如果有翻译的不妥或者不正确的地方,请指正. 翻译者:D

mysql数据库导入导出

  mysql数据库导入导出: .sql文件导入mysql: 假如要导入的数据库文件位于: d:test.sql. 1,进入mysql命令行窗口 2,若test.sql文件中包含有create database ×××; 语句,则命令如下:mysql>source d:/test.sql; 若test.sql文件中没有包含create database ×××;语句,则又分两种方法: 1:mysql中存在某个数据库,如test, 则:mysql> use test; mysql>sour

mysql 数据库导入导出

mysql 数据库导入导出1.关掉binlog,2.所有要导入的表改为myisam3.修改max_allowed_package ,多大根据你的实际情况因为你已经dump好了,所以这些mysqldump的参数就改不了,记得有个批量插入的参数根据我的经历,你的7G数据导入时间缩短不止一半,30分钟以内搞定 使用下面的命令select  .. into outfileload data infile关闭binlog再调整max_allowed_packetinnodb_autoinc_lock_mo

MYSQL 数据库导入导出命令_Mysql

MySQL命令行导出数据库 1,进入MySQL目录下的bin文件夹:cd MySQL中到bin文件夹的目录 如我输入的命令行:cd C:\Program Files\MySQL\MySQL Server 4.1\bin (或者直接将windows的环境变量path中添加该目录) 2,导出数据库:mysqldump -u 用户名 -p 数据库名 > 导出的文件名 如我输入的命令行:mysqldump -u root -p news > news.sql   (输入后会让你输入进入MySQL的密码

MYSQL的导入导出与还原备份

  导入与导出主要牵扯到两个命令source和MySQLdump: 1:导入:进入MySQL命令行中,进入任意一个将要被导入的数据库,再导入.具体的命令如下:进入Windows的dos命令行'---------->mysql -u root -p------------->输入进入数据库的密码------>create database shujuku;------------>use shujuku;--------------->source 你要导入的数据库文件的绝对路

mysql常用导入导出数据的命令

1.导入导出 mysql常用导入数据的命令: 1.mysql命令  代码如下 复制代码    mysql -hhostname -uusername - ppassword databasename < backupfile.sql 2.source命令  代码如下 复制代码    mysql>source backupfile.sql 具体方法 1.mysql导出整个数据库  代码如下 复制代码 mysqldump -u 用户名 -p 数据库名 > 导出的文件名 mysqldump -