Heim > Datenbank > MySQL-Tutorial > mysql导入导出命令解析_MySQL

mysql导入导出命令解析_MySQL

WBOY
Freigeben: 2016-05-30 17:11:28
Original
1043 Leute haben es durchsucht

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

一、mysqldump:数据库备份程序
 有3种方式来调用mysqldump:

mysqldump [options] db_name [tables]
mysqldump [options] ---database DB1 [DB2 DB3...]
mysqldump [options] --all--database
Nach dem Login kopieren

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

1、备份一个数据库.

mysqldump -uroot -p123456 mysql > mysql_backup.sql
Nach dem Login kopieren

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

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

mysqldump -u root -p123456 --database mysql test > my_databases.sql
Nach dem Login kopieren

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

3、备份所有数据库:

mysqldump -u root -p123456 --all-databases > all_databases.sql
Nach dem Login kopieren

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

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


Nach dem Login kopieren

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

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


Nach dem Login kopieren

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

mysql db_name < backup-file.sql
mysql -e "source /path-to--backup/backup-file.sql" db_name
Nach dem Login kopieren

或者从gz文件中还原

gunzip -f < mysql.sql.gz | mysql -u root -p123456 test
Nach dem Login kopieren

二、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;
Nach dem Login kopieren

将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'
Nach dem Login kopieren

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

四、导入导出格式

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

以上就是关于mysql导入导出命令的全部介绍,希望对大家熟练掌握mysql命令有所帮助

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage