视频1 视频21 视频41 视频61 视频文章1 视频文章21 视频文章41 视频文章61 推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37 推荐39 推荐41 推荐43 推荐45 推荐47 推荐49 关键词1 关键词101 关键词201 关键词301 关键词401 关键词501 关键词601 关键词701 关键词801 关键词901 关键词1001 关键词1101 关键词1201 关键词1301 关键词1401 关键词1501 关键词1601 关键词1701 关键词1801 关键词1901 视频扩展1 视频扩展6 视频扩展11 视频扩展16 文章1 文章201 文章401 文章601 文章801 文章1001 资讯1 资讯501 资讯1001 资讯1501 标签1 标签501 标签1001 关键词1 关键词501 关键词1001 关键词1501 专题2001
mysql遇到loaddata导入文件数据出现1290错误的解决方案
2020-11-09 20:24:59 责编:小采
文档


错误出现情景

  在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服务会禁止导入和导出操作。

您可能感兴趣的文章:

  • Java利用MYSQL LOAD DATA LOCAL INFILE实现大批量导入数据到MySQL
  • MySQL中由load data语句引起死锁的解决案例
  • MySQL中使用load data命令实现数据导入的方法
  • mysql中Load Data记录换行问题的解决方法
  • mysql load data infile 的用法(40w数据 用了3-5秒导进mysql)
  • mysql中的Load data的使用方法
  • mysql 的load data infile
  • mysql Load Data InFile 的用法
  • 下载本文
    显示全文
    专题