[记录]MySQL 查询无法导出到文件

很多时候我们需要将数据导出到 xls文件, 然后交给数据分析师分析。

而这个查询数据+导出的动作,理应使用一个有只读权限的用户使用。

但查询某表时: select * from table ,此用户可以读取到数据,但将数据导出到文件时,发现mysql 提示用户权限不足:Access denied for user ‘selecter‘@‘%‘ 。

其实网上也有人遇到同样的问题:[MYSQL]关于执行SELECT * INTO OUTFILE FROM TBL时报ERROR 1045 (28000): Access denied for user ‘usr‘@‘%‘ 的问题。

其实就是 该用户没有 读写文件的(FILE)权限(更详细的权限说明请点击:Mysql用户密码设置修改和权限分配

只要为用户加上FILE权限即可,我这里使用 MySQL Workbench 加权限:

点击 安全管理(红框)打开后选中需要添加权限的用户,勾选 FILE 权限即可。

时间: 2024-08-24 12:51:17

[记录]MySQL 查询无法导出到文件的相关文章

百万级数据记录量优化查询以及导出EXCEL文件编程

通过对完整软件实例(工程设计流水管理系统)编程讲解,让学员熟悉完整软件布局架构及开发思路.比如从界面布局.登录验证.软件注册程序.到软件发布等知识点,贯穿知识点间联系,提升编程整合能力. 中文编程完整软件实例编程解析之工程设计流水管理系统(8课时) 第1课:整体布局.EXCEL表数据导入到软件数据库编程a.整体布局b.EXCEL表数据导入到软件数据库编程第2课:基本信息预先设置编程a.项目名称预设置 第3课:子项目工程日志流水编程解析a.工程日志流水编程 第4课:子项目设计费发放流水编程解析a.

mysql查询结果输出到文件

mysql查询结果导出/输出/写入到文件 方法一:直接执行命令:mysql> select count(1) from table  into outfile '/tmp/test.xls'; Query OK, 31 rows affected (0.00 sec)在目录/tmp/下会产生文件test.xls遇到的问题:mysql> select count(1) from table   into outfile '/data/test.xls';报错:ERROR 1 (HY000): C

oracle/mysql 将查询数据导出到文件中

一.将oracle 查询的数据导入到一个文本文件中方法一 :通过sql developer 工具导出到xls表中方法二:通过客户端sqlplus 到一个临时txt文件中再处理着重讲方法二(在使用场景下方便.快捷)SQL>spool d:sqlbak.txt;SQL>select * from table where a>x;SQL>spool off;这样刚查询的数据就好在d盘下的 sqlbak.txt 文件中,linux下同理: spool /tmp/sqlbak.txt 二.

Mysql查询结果导出为Excel的几种方法

具体原文找不到了,此篇是借鉴门户的一篇文章 方法一:查询语句直接输出语法格式: Example: select * into outfile '/data/var-3307/catid.xls' from help_cat where 1 order by cat_id desc limit 0,20; select * into outfile '导出文件存放目录' from 表面和查询条件等信息! 请注意权限问题,如果实在不行,放在/tmp 目录下 方法二:在shell命令行下把Excel以

mysql SQLyog导入导出csv文件

1.选择数据库表 --> 右击属性 --> 备份/导出 --> 导出表数据作为 --> 选择cvs --> 选择下面的“更改” --> 字段 --> 变量长度 --> 字段被终止 -->输入逗号,(这是重点,否则导出的csv文件内容都在一列中,而不是分字段分列)下面两个选项框取消. 2.导出csv文件后,使用UE编辑器打开,另存为,选择编码为utf-8格式,保存. 3.打开csv文件,这样中文为正确的显示,如果不转码保存的话,为中文乱码. 4.选择数据

mysql workbench 将查询结果导出 sql 文件

之前一直使用的是plsql,因为换了家公司所以改成mysql了,我使用的时候mysql免费的客户端工具 workbench, 因为之前没用过,所以有很多功能找不到. 这里将用到的功能记录一下: 1:将查询的结果集,导出成.sql 文件 一共三条数据集 最上方选项 Query->export ResultSet 默认导出的格式是CSV,  选择 formart ->SQL INSERT statements ok 这样就将查询的结果集导出成sql文件了,也可以点击 export 完成上面操作 查

mysql查询并导出指定数据,select from,where,into outfile导出,fields terminated by分隔导出数据

mysql -uxxx -pyyy use lottery; select count(id) from mop_bet_order_history where created_at < '2015-11-01'; 统计mop_order_history表中2015-11-01之前的数据条数 count(id)统计条数 select * from mop_bet_order_history where created_at < '2015-11-01' into outfile '/data/

Python 2.7_初试连接Mysql查询数据导出到exce_20161216

由于每天到公司都需要先执行一遍检测操作,观察数据是否导入完整,今天想到能否自动连接Mysql执行SQL并导出数据,每天到公司直接查看excel文件即可 时间紧,代码以及excel格式还没有调,初次试验,边摸索边学习吧.sql代码那句总想能不能用个变量代替,显得太冗长了 #coding:utf-8 import MySQLdb import xlsxwriter import datetime import os today = datetime.date.today() oldfile='dem

Navicat for Mysql查询结果导出无表名

在查询窗口用select语句按条件查出所需结果,然后用“导出向导”把查询结果导成sql文件,但是导出来的sql语句没有表名了. 导成的sql文件大致是这样的, INSERT INTO `` (`id`, `riskcode`, `riskname`) VALUES(1,'AAA','BBB'); 所有的INSERT INTO ``都是这样,表名不见了 解决问题: 最后就是一步到底,点击开始就ok了 原文地址:https://www.cnblogs.com/qxh-beijing2016/p/12