一、只导出数据
在 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 取值如下:
- null :表示不允许导入导出;
- 空 :表示没有任何限制;
- 指定路径:表示导入导出只能在指定路径下完成。
二、只导出数据和列名
通常我们使用 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 导出的数据库.忽略的表 > 导出文件完整路径