daily_sql

作者: 焉知非鱼 | 来源:发表于2017-10-18 10:46 被阅读23次

查看表名中含有 scene 的数据库表:_sql

mysql -utestwx -p'verycomplexpassword' -h10.0.0.91 --database=sparkr -e"show tables" | grep scene

awk 过滤某个区间的行:

awk 'NR>26150025  {print $0}' /var/log/redis_to_mysql.log

数据库导出为 csv:

mysql -uusernamet -h10.0.0.117 -p'verycomplexpassword' --database=test -e"select sid,title from ald_cms_scene;" | sed "s/\t/,/g" > scene.csv

导出的 csv 格式如果打开为乱码, 可以用 iconv 将 csv 的编码转换为 GB18030:

mysql -uusernamet -h10.0.0.117 -p'verycomplexpassword' --database=test -e"select sid,title from ald_cms_scene;" | sed "s/\t/,/g"  | iconv -f UTF8 -t GB18030 > /tmp/scene.csv 

可以改造下,把上面的代码保存为 shell 脚本, 把 sql 语句作为参数传进去:

mysql -uusernamet -h10.0.0.117 -p'verycomplexpassword' --database=test -e"$1" | sed "s/\t/,/g"  | iconv -f UTF8 -t GB18030 > /tmp/scene.csv 

mac 下 csv 乱码的假觉方法:

iconv -f UTF8 -t GB18030 yw.csv > b.csv

mysqldump

安装 mysqldump:

sudo apt-get install mysql-client

mysqldump 可以导出某个表的部分数据, 使用 where 条件即可:

mysqldump -uxxxxx -p'abc123' -h10.0.0.190 test table_name --where=" day='2018-01-14'" > /tmp/20180104.sql

相关文章

  • daily_sql

    查看表名中含有 scene 的数据库表:_sql awk 过滤某个区间的行: 数据库导出为 csv: 导出的 cs...

网友评论

      本文标题:daily_sql

      本文链接:https://www.haomeiwen.com/subject/xpusuxtx.html