CleverCode发现一个导出mysql数据成csv格式的简单方法。
1)mysql -e使用简介
使用说明:执行一个sql语句并且退出。
格式样例:
1)mysql -uroot -p123456 -h 192.168.10.210 -P 3306 db_logs -e "show databases;"
2)mysql -uroot -p123456 -h 192.168.10.210 -P 3306 db_logs -e "select cdate,uid,clientip,createtime from user_login_log limit 1;"
说明:
-u:root为用户名;
-p:123456为密码
-h:mysql服务器ip
-P:3306mysql服务器端口
db_logs:执行语句所在的数据库
-e:需要执行的语句。
2)直接执行语句
# mysql -uroot -p123456 -h 192.168.10.210 -P 3306 db_logs -e "select cdate,uid,clientip,createtime from user_login_log limit 1;"
3)保存执行语句到文件
# mysql -uroot -p123456 -h 192.168.10.210 -P 3306 db_logs -e "select cdate,uid,clientip,createtime from user_login_log limit 1;" > log.txt
# cat log.txt
可以看到保存的结果是\t分隔的。
4)保存执行语句到文件,使用awk替换\t成逗号
# mysql -uroot -p123456 -h 192.168.10.210 -P 3306 db_logs -e "select cdate,uid,clientip,createtime from user_login_log limit 1;" | awk ‘{print $1",",$2","$3","$4}‘ > log.csv
# cat log.csv