MySQL查询结果写入到文件总结

本文介绍三种将Mysql查询结果导出到文件的方法:直接执行导出命令、更改查询输出方式及跳出命令行执行。包括解决权限问题及如何追加到文件。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Mysql查询结果导出/输出/写入到文件

方法一:
直接执行命令:

mysql> select count(1) from table  into outfile '/tmp/test.txt';
Query OK, 31 rows affected (0.00 sec)
在目录/tmp/下会产生文件test.txt,文件格式最好是文本格式,其他格式有时候出现乱码。
遇到的问题:
mysql> select count(1) from table   into outfile '/data/test.txt';
报错:
ERROR 1 (HY000): Can't create/write to file '/data/test.txt' (Errcode: 13)
原因:mysql没有向/data/下写的权限 

方法二:
查询都自动写入文件:使用pager [cmd]  更改mysql的查询输出,cmd为linux的标准命令.
mysql> pager cat >> /tmp/test.txt ;
PAGER set to 'cat >> /tmp/test.txt'
之后的所有查询结果都自动写入/tmp/test.txt',并追加到文件后面。
mysql> select * from table ;
10 rows in set (0.39 sec)
在框口不再显示查询结果
回到标准输出stdout:  mysql>nopager;


方法三:
跳出mysql命令行
[root@TEST ~]# mysql -h 127.0.0.1 -u root -p XXXX -P 3306 -e "select * from table"  >> /tmp/test.txt

或者写好一个sql脚本执行,比如 /tmp/test.sql文件,文件路径使用双引号。

[root@TEST ~]# mysql -h 127.0.0.1 -u root -p XXXX -P 3306 <"/tmp/test.sql"  >> /tmp/test.txt

转载于:https://www.cnblogs.com/suke99/p/5948852.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值