首页 > 数据库 > MySQL > 正文

mysql导入导出命令解析

2024-07-24 13:07:48
字体:
来源:转载
供稿:网友

这篇文章主要介绍了mysql导入导出命令解析,有需要的朋友可以参考下

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

一、mysqldump:数据库备份程序

有3种方式来调用mysqldump:

 

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

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

1、备份一个数据库.

 

 
  1. mysqldump -uroot -p123456 mysql > mysql_backup.sql 

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

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

 

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


3、备份所有数据库:生成的sql文件有创建database mysql和test的语句

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


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

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


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

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


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

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


或者从gz文件中还原

 

 
  1. 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语句同时使用。

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

 

 
  1. SELECT * INTO OUTFILE '/tmp/result.txt' 
  2. FIELDS TERMINATED BY ',' 
  3. OPTIONALLY ENCLOSED BY '"' 
  4. LINES TERMINATED BY '/n' 
  5. FROM mysql.user; 

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

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

三、LOAD DATA INFILE

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

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

 

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

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

四、导入导出格式

 

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

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

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表