mysql遇到load data导入文件数据出现1290错误的解决
错误出现情景
在cmd中使用mysql命令,学生信息表添加数据。使用load data方式简单批量导入数据。
准备好文本数据 xueshengxinxi.txt 文件 数据之间以tab键进行分割
执行 “load data infile 文本数据路径 into table tab_load_data” 弹出错误。
#load data (载入数据)语法,要载入数据如下 1 张三 男 江西 1 2 李四 男 四川 2 3 王五 男 上海 1 4 赵六 女 湖北 3 5 孙七 女 湖北 3 6 周八 男 湖南 1 #测试数据表 create table tab_load_data ( id int auto_increment primary key, name varchar(10), sex enum('男','女'), native varchar(10), f5 int );
使用load data 导入文件数据总是弹出错误(Error 1290.....)如下
ERROR 1290 (HY000): The MySQL server is running with the --secure-file-priv option so it cannot execute this statement
解决思路(过程)
1) 既然错误提示说明运行了secure-file-priv这个选项,不能执行load服务,那就找到MYSQL的配置文件"my.ini" 中该配置项。
2) 配置前,先关闭mysql服务
3) 打开my.ini,搜索关键字“secure-file-priv”找到这个选项后,直接注释掉这个选项,保存后,启动MYSQL服务
4) 结果还是一样的错误。说明注释没有效果。这是怎么回事了?
执行命令 “show variables like '%secure%'”发现原来我注释掉后,secure-file-priv的值为NULL,说明禁止导入导出。
这说明注释掉是不行的。不删配置文件条目,那只好修改目录好了。
5)修改路径,执行命令 “show variables like '%secure%'” 查看 , 重启MYSQL。
6)再执行load data, 执行成功
更复杂的load用法可以查看mysql手册。 到此,该问题解决。
三, 小结说明
从本错误中吸取
1) load data : 可以从一个外部的记事本文件中导入数据到某个表中。
该记事本中的数据通常要求“比较整齐”,一行文本对应一行数据,一行中用某种字符(如用tab符)来分割一个一个字段的值
2) secure-file-priv这个参数用来限制数据导入和导出操作的效果。
如执行LOAD,SELECT...INTO OUTFILE语句和LOAD_FILE()函数。这些操作需要file权限。
3)如果 secure-file-priv这个参数设为一个目录名,MYSQL服务只允许这个目录中执行文件的导入和导出操作。
这个目录必须存在,MYSQL服务不会创建它。
4) 如果secure-file-priv这个参数为NULL,MYSQL服务会禁止导入和导出操作。
编程语言
- 如何快速学会编程 如何快速学会ug编程
- 免费学编程的app 推荐12个免费学编程的好网站
- 电脑怎么编程:电脑怎么编程网咯游戏菜单图标
- 如何写代码新手教学 如何写代码新手教学手机
- 基础编程入门教程视频 基础编程入门教程视频华
- 编程演示:编程演示浦丰投针过程
- 乐高编程加盟 乐高积木编程加盟
- 跟我学plc编程 plc编程自学入门视频教程
- ug编程成航林总 ug编程实战视频
- 孩子学编程的好处和坏处
- 初学者学编程该从哪里开始 新手学编程从哪里入
- 慢走丝编程 慢走丝编程难学吗
- 国内十强少儿编程机构 中国少儿编程机构十强有
- 成人计算机速成培训班 成人计算机速成培训班办
- 孩子学编程网上课程哪家好 儿童学编程比较好的
- 代码编程教学入门软件 代码编程教程