一、只导出数据

在 MySQL 中如果只要导出数据的话,我们可以使用 SEELCT…INTO OUTFILE 语句将查询的数据导出到指定的磁盘文件中。语法如下:

select colum1,colum2...columN from table_name into outfile '导出文件完整路径'
fileds terminated by '输出文件中的字段分隔符'
enclosed by '输出文件中的字段值封闭符'
lines terminated by '输出文件中的行间隔符';

在使用 select … into outfile 语句导出数据时如果提示 –secure-file-priv option so it cannot execute this statement ,就需要去设置 secure_file_priv ,secure_file_priv 取值如下:

  1. null :表示不允许导入导出;
  2. 空 :表示没有任何限制;
  3. 指定路径:表示导入导出只能在指定路径下完成。

二、只导出数据和列名

通常我们使用 mysql 命令连接数据库,mysql 命令有一个 -e 选项,可以执行指定的 SQL 语句,再结合 ODS 的重定向操作符 > 可以将查询结果导出到文件。语法如下:

mysql -h mysql数据库地址 -u 用户名 -p -D 要操作的数据库 -e "select 语句" > 导出文件完整路径

三、导出数据和结构

mysqldump 是 MySQL 用于转存数据库的实用程序,它主要产生一个 SQL 脚本,其中包含创建数据库、表以及插入数据等所必须的 SQL 语句。如法如下:

# 导出数据库(包含数据)
mysqldump -h mysql数据库地址 -u 登录名 -p 导出的数据库 > 导出文件完整路径

# 导出数据库(不包含数据)
mysqldump -h mysql数据库地址 -u 登录名 -p 导出的数据库 --no-data > 导出文件完整路径

# 导出指定的表
mysqldump -h mysql数据库地址 -u 登录名 -p 导出的数据库 表名 > 导出文件完整路径

# 导出数据库,并忽略某个表
mysqldump -h mysql数据库地址 -u 登录名 -p 导出的数据库 --ignore-table 导出的数据库.忽略的表 > 导出文件完整路径