Ubuntu系统下MySQL读取文件数据ERROR解决
- 博文链接:http://haoyuanliu.github.io/2016/04/29/mysql/
- 对,我是来骗访问量的!O(∩_∩)O~~
在使用MySQL
进行文件数据读取的时候,在终端敲入命令行
mysql> LOAD DATA INFILE 'home/pinseng/mysql_learn/shiyanlou/sql6/in.txt' INTO TABLE employee;
会出现如下错误:
ERROR 13 (HY000): Can't get stat of '/var/lib/mysql/home/pinseng/mysql_learn/shiyanlou/sql6/in.txt' (Errcode: 2)
正如下图所示:
数据读取Bug解决方法
解决方法如下:
仔细观察报错信息发现MySQL
的默认路径应该是/var/lib/mysql
,如果我们使用home/pinseng/mysql_learn/shiyanlou/sql6/in.txt
进行数据的读取最终得到的路径组合为/var/lib/mysql/home/pinseng/mysql_learn/shiyanlou/sql6/in.txt
显然MySQL
是没有办法读出来的。
通过在终端内输入:
mv /home/pinseng/mysql_learn/shiyanlou/sql6/in.txt /var/lib/mysql/mysql_shiyan/
也就是将in.txt
文件移动到MySQL
的默认路径下,这时候再进行数据读入工作就可以正常进行了。在MySQL
中输入命令如下:
mysql> LOAD DATA INFILE 'in.txt' INTO TABLE employee;
代码流程如下图:
附带输入文件的数据库DROP(删除)方法
此时如果想要删除mysql_shiyan
这个数据库,因为我们之前在/var/lib/mysql/mysql_shiyan/
路径下添加了一个文件,所以将导致数据库删除失败,如下图所示:
错误代码如下:
ERROR 1010 (HY000): Error dropping database (can't rmdir './mysql_shiyan/', errno: 17)
此时,只要移除我们添加的in.txt
文件就可以成功完成数据库的删除了,结果如下:
原谅我截图粗糙了一点。。。