myql数据导出汇总

1. Navicat可视化工具数据导出

  • 示例
    pass

2. mysql命令行导出

select into outfile
  • 示例

    SELECT * FROM table into outfile ‘/tmp/demo.txt’
    select * from _TABLE into outfile ‘_FILE_NAME.csv’ fields terminated by ‘,’ optionally enclosed by ‘"’ escaped by ‘"’;"

  • 可选参数:

    • fields terminated by ‘str’:设置字段之间的分隔符,默认值是"\t"。
    • fields enclosed by ‘char’:设置包括住字段的值的符号,如单引号、双引号等,默认情况下不使用任何符号。
    • fields optionally enclosed by ‘char’:设置括住CHAR、VARCHAR和TEXT等字符型字段的分隔符,默认情况下不使用任何符号。
    • fields escaped by ‘char’:设置转义字符,默认值为""。
    • lines starting by ‘str’:设置每行数据开头的字符,可以为单个或多个字符。默认情况下不使用任何字符。
    • lines terminated by ‘char’:设置每行数据结尾的字符,可以为单个或多个字符。默认值是"\n"。
  • 注意: 如果出现 secure_file_priv 字眼的报错

    • show variables like ‘%secure_file_priv%’ ; 查看当前会话此变量的值
    • show global variables like ‘%secure_file_priv%’ ; 查看全局此变量的值
      • secure_file_priv的值为null ,表示限制mysqld 不允许导入|导出

      • secure_file_priv的值为/tmp/ ,表示限制mysqld 的导入|导出只能发生在/tmp/目录下

      • secure_file_priv的值没有具体值时,表示不对mysqld 的导入|导出做限制

3. shell 调用 mysql命令导出(不常用)

  • 示例
    在-e参数中实际使用了两条命令,一条是设置字符集,另一条是select语句,通过管道把每一行数据都通过正则来处理。
    正则中把字段之间的TAB键换为“,”,然后把字段值中的null替换为空字符
    mysql -e “set names gbk;select * from newsdb.t_hk_stock_news where news_time > ‘2019-03-31 23:59:59’ limit 5” |sed -e “s/\t/,/g” -e “s/NULL/ /g” -e “s/\n/\r\n/g” > /db/test.csv

    mysql --host=_HOSTNAME --user=_USER --password=_PASSWORD -Bse “SELECT * FROM _TABLE” | sed 's/\t/","/g;s/^/"/;s/$/"/;s/\n//g' > _FILE_NAME.csv

  • 1.shell执行: mysql -uroot -proot test -e “select * from demo” > test_demo.txt

  • 2.Mysql命令行执行: select count(1) from table into outfile ‘/tmp/test.xls’;

4. mysqldump命令导出

1. 导出指定库所有数据(有创建库的语句)
  • mysqldump -h -u -p --database databasename > databasename.sql
2.其他
  • 常用命令
    • mysqldump -h -u -p -d databasename > path: 导出数据库所有表结构不导出数据
    • mysqldump -h -u -p -t databasename > path: 导出数据库所有表数据不导入结构(无建表)
    • mysqldump -h -u -p databasename > path: 导出数据库所有表表结构和数据
    • mysqldump -h -u -p databasename [–table] tablename > path: 导出数据库-特定表结构及数据 + -d 导出结构 -t 导出数据
    • mysqldump -u root -p --all-databases > xx.sql: 导出所有数据库数据
  • 显示指定某些特殊参数(不常用)
    • mysqldump -h172.19.6.63 -uroot -pipanel --quote-names --skip-opt --add-locks --extended-insert --disable-keys --set-charset --create-options --single-transaction -q --no-autocommit -R --set-gtid-purged=OFF --default-character-set=utf8 --master-data=2 test >test.sql
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值