mysql导出数据
来源:互联网 发布:手机淘宝实名认证电话 编辑:程序博客网 时间:2024/06/05 17:08
如果是对MySQL整个表数据导出,可以参照文章:http://www.crazyant.net/1355.html
然而也会遇到的场景是,需要执行一个SQL语句,然后将SQL语句的结果输出到文件;
方法一:使用MySQL的select * into outfile ‘/tmp/rs.txt’ from tb_name句型
这是个不可行的方法;
举个例子,执行以下的SQL语句:
这个SQL总会报出下面的错误:
原因是这个语句并不是在MySQL客户端,而是在MySQL的服务器上执行的,通常用于服务器管理员在服务器机器上进行数据备份使用,由于MySQL客户端账号并没有访问服务器机器本身的权限,所以这个SQL执行不会成功。
方法2:直接将SQL执行的结果重定向到文件即可
执行下面的命令,能够将SQL语句执行的结果输出到文件:
mysql -h10.10.10.10 -ucrazyant -p123456 -P3306 -Ne "use test; select * from tb_test;" > /tmp/rs.txt
其中-Ne是执行这个SQL语句的选项,-N代表输出SQL语句执行结果中不带第一行的字段名称,-e表示要执行SQL语句;
执行下面的命令,则可以执行SQL文件,并把结果输出到文件:
新建一个文件,名称为runsql.sql,内容为:
然后这样执行命令:
其中-N命令仍然表示不输出表头字段说明(第一行),小于号表示输入重定向,runsql.sql的文件内容会被发送给mysql的命令,大于号则表示输出重定向,会将命令执行的结果输出到文件;
总结:
- select into outfile只能在MySQL服务器上执行,客户端上无法执行;
- mysql -Ne “sql” > rs.txt可以将SQL语句执行后输出为文件
- mysql -N < runsql.sql > rs.txt可以执行sql文件中的内容,然后将结果输出到文件;
- mysql -N的选项,表示输出时不带表头
有时候有excel打开的时候会出现乱码,
因为office默认的是gb2312编码,服务器端生成的很有可能是utf-8编码,可以在服务器端使用iconv来进行编码转换: iconv -futf8 -tgb2312 -otest2.xls test.xls
如果你没有服务器管理权限,可以用下面的方法解决乱码问题
先把test.xls下载下来,这个时候文件是utf-8编码的,用excel打开,乱码。
把test.xls以文本方式打开,然后另存为,在编码选择ansi编码,保存。
这样再用excel打开,乱码问题就解决了.
- MySQL数据导出命令
- MySQL--数据导入导出
- 导出导入MySql数据
- mysql导出、导入数据
- MySQL数据导出
- mysql 导出数据
- MySql数据导入、导出
- mysql 数据导入导出
- mysql数据导入导出
- mysql导出数据
- mysql数据导入导出
- mysql mysqldump导出数据
- mysql导出数据 命令
- mysql 导入 导出 数据
- MySQL导出数据
- MySQL数据导出
- MySQL导出数据总结
- mysql导出数据
- pes结构详解
- VueJs与ReactJS&AngularJS的差异对比
- [Unity&网格移动]NavMeshAgent寻路 怎么样使得角色移动的角速度不影响移动
- H3C 网络设备IOS版本升级
- LeetCode 72. Edit Distance
- mysql导出数据
- 二叉树的前序遍历
- POJ 1850 Code 笔记
- 写一个单例模式
- 【编程】牛客网第四次模拟笔试
- 使用Docker Toolbox 创建Swarm集群的问题-概念混淆导致
- kubernetes client-go包使用示例
- 链接重定位
- Android开发中常见的5大内存泄漏问题及解决办法