mysql SELECT INTO OUTFILE ,can't create file (转)
原文 http://blog.sina.com.cn/s/blog_6a5e34ad0100zfbi.html (转)
命令行模式进入mysql
#mysql -uroot -p12345
#select * from test.test where id = 1 into outfile "/home/share_user/text.txt"; //运行时提示can't create file....
#exit //退出mysql
#sudo chmod 777 -R /home/share_user
然后再次进行mysql,运行上面的命令,同样提示不能创建文件,
原来是因为mysqld进程的权限问题,
下面开始修改:
#sudo vim /etc/apparmor.d/usr.sbin.mysqld //这个文件控制mysqld进程的权限,
在文件中加入
/home/share_user/ rw, ####这行控制目录的权限
/home/share_user/** rwk, ####这行控制目录下的所有文件的权限,应该是这样..........
然后重启apparmor
#sudo /etc/init.d/apparmor restart
然后再运行mysql ... into outfile ..命令 ,应该就不提示错误了.
----------------------以下是原文-----------------------
很明显,这是由于权限问题导致的,最主要的问题是搞清楚权限是如何设置的。
Ubuntu 使用 AppArmor 作为程序权限限制, Fedora 使用 selinux 作为程序权限限制.在linux中,以往的权限管理,是通过用户绑定的,现在还有一种权限机制,设置程序的访问权限,如:
sudo mysqldump --T db;如果不起动程序权限管理,mysqldump获得root权限,可以在任何文件中进行操作。
sudo mysqldump -T db;如果ubuntu中启用apparmor,即使是root权限,他也会根据程序的访问权限进行限定。
所以我们可以将需要访问的目录添加到AppArmor的配置文件中:
sudo gedit /etc/apparmor.d/usr.sbin.mysqld
添加下面内容
/data/* rw,
然后,sudo /etc/init.d/apparmor restart
mysql SELECT INTO OUTFILE ,can't create file (转)的更多相关文章
- Mysql select into outfile 命令
[1]Mysql select into outfile命令 在Mysql中,与load data infile命令作用相反的一个命令是select into outfile命令 select int ...
- MySQL select into outfile用法
select into outfile用法 SELECT ... FROM TABLE_A INTO OUTFILE "/path/to/file" FIELDS TERMINAT ...
- MySQL select into outfile 和 load data infile数据跨库转移
select into outfile用法 SELECT ... FROM TABLE_A INTO OUTFILE "/path/to/file" FIELDS TERMINAT ...
- MySQL Errcode 13 with SELECT INTO OUTFILE Can't create/write to file
这是由于权限问题导致的,最主要的问题是搞清楚权限是如何设置的.Ubuntu 使用 AppArmor 作为程序权限限制, Fedora 使用 selinux 作为程序权限限制. 在linux中,以往的权 ...
- 使用MySQL的SELECT INTO OUTFILE ,Load data file,Mysql 大量数据快速导入导出
使用MySQL的SELECT INTO OUTFILE .Load data file LOAD DATA INFILE语句从一个文本文件中以很高的速度读入一个表中.当用户一前一后地使用SELECT ...
- Mysql备份--mysqldump&outfile
1.备份工具mysqldump 客户端和服务器端都能用select outfile 只能写到服务器端 2.按表单位备份 a.单个表备份 mysqldump -uusername -p database ...
- MySQL select into 和 SQL select into
现在有张表为student,我想将这个表里面的数据复制到一个为dust的新表中去,虽然可以用以下语句进行复制,总觉得不爽,希望各位帮助下我,谢谢. answer 01: create table d ...
- mysql load data infile的使用 和 SELECT into outfile备份数据库数据
LOAD DATA [LOW_PRIORITY | CONCURRENT] [LOCAL] INFILE 'file_name.txt' [REPLACE | IGNORE] INTO TABLE t ...
- MySQL运维之---mysqldump备份、select...into outfile、mysql -e 等工具的使用
1.mysqldump备份一个数据库 mysqldump命令备份一个数据库的基本语法: mysqldump -u user -p pwd dbname > Backup.sql 我们来讲解一下备 ...
随机推荐
- 教程-(SQL DBE、ADO连接)+(Firebird火鸟+DbExpress)+(VF DBF数据库)+(DB Paradox)
DBE 连接SQL Server显然用ADO或DBEXPRESS更有优势,起码连接起来比较方便. BDE的话可以用如下方法:(以下以Delphi7为例,其它版本的DELPHI请自己摸索一下,不过基本相 ...
- 检查REDO日志相关信息并生成HTML文件的脚本
生成HTML格式的文件 内容有: 检查数据库版本.REDO日志组情况, 最近20次日志切换频率检查--日志间的归档时间间隔, 这对查看数据库的IO繁忙时段 统计指定日期当天每小时的归档日志产生量--日 ...
- DevExpress GridControl 显示行号、设置行号宽
显示行号类 /// <summary> /// GridView 显示行号 设置行号列的宽度 /// </summary> /// <param name="g ...
- 为什么Form.Timer的event handler在Form被Dispose之后还是被调到了?
博客搬到了fresky.github.io - Dawei XU,请各位看官挪步.最新的一篇是:为什么Form.Timer的event handler在Form被Dispose之后还是被调到了?.
- Redis: OOM command not allowed when used memory > ‘maxmemory
Redis: OOM command not allowed when used memory > ‘maxmemory’ 解决方式: $ vim /etc/redis/6903.conf ma ...
- Android Fragment之间传值
首先来介绍的是我们的默认的布局 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" ...
- powerDesigner的初步使用
今天初步学习了PowerDesigner,主要学习的内容有以下几个方面: 1.powerDesigner的功能之一是建立一个数据库的关系图,这里选用的数据库是MySql,基本的建立过程是这样的: a. ...
- ThinkPHP3.1新特性:Action参数绑定
Action参数绑定功能提供了URL变量和操作方法的参数绑定支持,这一功能可以使得你的操作方法定义和参数获取更加清晰,也便于跨模块调用操作方法了.这一新特性对以往的操作方法使用没有任何影响,你也可以用 ...
- OpenWRT加入 crontab开机默认运行
[转载请注明出处:钱国正专栏 http://blog.csdn.net/qianguozheng/article/details/37666829] OpenWRT系统默认已经加入了crond,仅仅是 ...
- [Javascript] Adding Shapes to Maps with Leaflet and GeoJSON
<!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8&quo ...