linux上外部执行sql语句,并把结果重定向到文件

在项目中在spark处理过数据之后把结果写到mysql中,需要使用到把结果表结果输出到文件中,我懒得再写java程序,想着mysql能不能有这种类似的功能支持,结果发现还是有的,下面我找到的一些方式:
1:mysql -h 主机 -u账号 -p’密码’ -e “select * from 数据库表” > 结果文件路径,下面是一个demo,大家可以直接copy改:
mysql -h localhost -uroot -p’123456’ -e “select * from test.user” > /test/result.xls
但是大家也一定要记得,语句是在mysql外部执行的!!!,不要在进入mysql后执行!!!
2:这种实际上是继承第一种,主要用于sql比较复杂的场景,把sql写成一个sql脚本,再去执行脚本:
mysql -h localhost -uroot -p123456 < t.sql > /res/result.xls
脚本内可以这样写:
user test;
select * from user;

另外我在网上还看到了一种流传的方式,但是在我这行不通,有兴趣的朋友可以研究一下,语句如下:
select user, host, password from test.user into outfile ‘/tmp/user.xls’;

猜你喜欢

转载自blog.csdn.net/qq_39719415/article/details/96430273
今日推荐