mysql导出数据

0 前言
数据预处理的时候,统一处理成sql数据。以后要什么形式的数据,再从sql里导出就可以了。
因为用的比较简单,所以随便在网上搜了一下。

 

1 sql导出数据
需要联合几张关系表导出一些数据,空格分割字段,用双引号包围字段值,用\n作为一条记录的结束。

select s.name, t.tongueZhiId, t.tongueTaiId, t.pulseId, p.name
from multiSymptom s join treatment t on t.multiSymptomId = s.id
join prescription p on p.id = t.prescriptionId order by t.id 

into outfile '/var/lib/mysql-files/treatment' 
fields terminated by ' ' 
enclosed by '"'
lines terminated by '\n'

但是发现报错了

The MySQL server is running with the --secure-file-priv option so it cannot execute this statement”

 

2 只能导出到固定目录
mysql为了安全起见,只允许把数据导出到特定的目录,而这个目录只能用root访问。
查看得到这个目录,然后尝试导出数据到这个目录,成功。

show variables like "secure_file_priv";
select * from medicine into outfile 'var/lib/mysql-files/medicine'

 

3 转移文件

导出完成后,su进入root,然后把var/lib/mysql-files/里的文件移到自己的主目录下就可以了。

su root 
cd /var/lib/mysql-files
mv * /home/liaohuqiang

 

4 mysqldump

另外,有个mysqldump指令可以导入导出数据库数据。

posted @ 2017-07-31 20:38  PilgrimHui  阅读(371)  评论(0编辑  收藏  举报