使用命令导入导出mysql数据表的记录
(2009-12-06 11:53:57) 标签: 杂谈 |
1、导出
a、使用默认的路径
使用命令 select * from 数据表名 into outfile '文本名.txt';
b、指定存放的路径
使用命令 select * from 数据表名 into outfile 'd:\文本名.txt';
c、导出数据表指定的字段
使用命令 select 字段名1,字段名2··· from 数据表名 into outfile '文本名.txt';
2、导入
a、记录包含数据表所有字段
使用命令 load data infile '文本名.txt的路径' into table 数据表名; 导入记录包含所有字段
b、记录包含数据表指定阻断
使用命令
自定义存放的路径时可能会遇到以下错误:
mysql> select * from patent into outfile '/home/a';
ERROR 1 (HY000): Can't create/write to file '/home/a' (Errcode: 13)
再引用个解决方案:
MySQL Errcode 13 with SELECT INTO OUTFILE
(2011-11-25 11:11:56)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
jesse@jesse-desktop:/var/log/mysql$