mysql导入导出数据报错The MySQL server is running with the --secure-file-priv option解决办法

报错原因:直接能看出来是需要配置ecure-file-priv参数。

2019-12-13

1.参数值对应限制。

mysql>SHOW VARIABLES LIKE "secure_file_priv";

secure_file_prive=null   -- 限制mysqld 不允许导入导出

secure_file_priv=/tmp/   -- 限制mysqld的导入导出只能发生在/tmp/目录下

secure_file_priv=‘ ‘         -- mysqld 允许导入导出

2.更改secure_file_pri的值

  2.1找到自己mysql的对应配置文件

  比如我的在服务器上就是这个位置

  然后在根据这个目录,查看配置文件在哪里了(路径后面加上 --verbose --help|grep -A 1 ‘Default options‘),就会出现以下信息。

   

  这个信息的意思是:

  服务器首先读取的是/etc/my.cnf文件,如果前一个文件不存在则继续读/etc/mysql/my.cnf文件,如果还不存在依次向后查找。

  找到配置文件以后就可以根据需要修改配置文件。

  2.2修改

  在/etc/my.cnf里面添加,重启mysql服务器即可。

    

secure_file_priv=‘‘

  

3.导入导出数据

-- sql导入csv文件 
load data local infile ‘/Users/jojo/dumps/train.csv‘ --文件目录
into table new_table -- 这里导入csv会出错,具体解决方法见"问题解决" 
fields terminated by‘,‘optionally enclosed by ‘"‘ escaped by ‘"‘ 
-- 字段之间以逗号分隔,字符串以半角双引号包围,字符串本身的双引号用两个双引号表示 
lines terminated by‘\r\n‘ -- 数据行之间以\r\n分隔

eg:

select * from table_name
into outfile ‘mntdisk1/mysql/xx.csv‘
FIELDS TERMINATED BY ‘,‘   
OPTIONALLY ENCLOSED BY ‘"‘   
LINES TERMINATED BY ‘/n‘

原文地址:https://www.cnblogs.com/singsong-ss/p/12036867.html

时间: 2024-11-09 00:05:36

mysql导入导出数据报错The MySQL server is running with the --secure-file-priv option解决办法的相关文章

解决mysql导入导出数据乱码问题

最近在linux上面用mysqldump导出数据,放在windows系统中导入就会出现中文乱码,然后就会导致出现: Unknown MySQL server host和Can't connect to the server的错误.解决mysql导入导出数据乱码问题就是统一导入导出的编码,linux默认的是utf8编码,而windows是gbk编码,所以会出现上面的乱码问题. 解决mysql导入导出数据乱码问题 首先要做的是要确定你导出数据的编码格式,使用mysqldump的时候需要加上--def

mysql导入导出csv文件

问题:为什么要导入导出为csv文件呢? (1)所谓大数据处理,仅仅关心某些列的数据,而非整个表结构,这些数据就需要保存为csv通用的存储格式,不仅可以在widows下作为文本文件进行处理:也可以在hadoop分布式系统上上进行处理: (2)mysql 数据库 迁移为 Oracle .SQLServer数据库,或者反过来,由于各自的设计不同,不能直接的导入导出为dmb sql等格式的文件,可能需要数据的导出导入为csv,而数据表结构的设计可能得通过其它途径. 一:MYSQL如何导出文本文件  (备

[转]Mysql导入导出工具Mysqldump和Source命令用法详解

Mysql本身提供了命令行导出工具Mysqldump和Mysql Source导入命令进行SQL数据导入导出工作,通过Mysql命令行导出工具Mysqldump命令能够将Mysql数据导出为文本格式(txt)的SQL文件,通过Mysql Source命令能够将SQL文件导入Mysql数据库中,下面通过Mysql导入导出SQL实例详解Mysqldump和Source命令的用法. 在PHP网站开发中,时常遇到Mysql数据库备份或数据库迁移工作,这时Mysql怎么导入导出数据库中的数据就非常关键,M

MySQL导入文件报错并且乱码

实施从客户那里导出数据库给我,我在本机用sqlyog 导入时出现乱码并报错.报错内容为no selected database.但是我数据库确实选择了. 最后问实施的哥们,他说他用sqlyog导出的时候也报错,所以它用Navicat for MySQL.我最后也下载了一个Navicat for MySQL并安装后就好了.花了我好几个小时去找错,因为之前几个库都是没问题的. 下面是错误截图: 顺便报个料,下面是我们实际数据库的编码设置: 连接MySQL的语句: jdbc:mysql://127.0

mysql导入导出文本文件

MySQL导入出文本文件只能到处数据,不能到处结构,不过也算备份数据一种方法. 导入文本文件 在此像导入csv文件 也是类似 load data local infile 'd:/insert.txt' into table test; 文本文件,注意:默认字段之间的用 tab键做空格,如果字段为空用  \N 代替 李四 \N \N 45 导出文本文件 在导出时可能存在问题: 提示错误[Error Code] 1290 - The MySQL server is running with the

第18章 mysql 导入导出

2015-10-24 目录 参考资料 [1] 唐汉明.深入浅出MySQL 数据库开发.优化与管理维护(第2版)[M].北京:人民邮电出版社,2014 [2] Schwartz.高性能MySQL(第3版)[M].北京:电子工业出版社,2013 [3] mysql mysqldump只导出表结构或只导出数据的实现方法 [4] MySQL数据导出与导入 [5] MySQL数据导入导出方法与工具介绍 [6] MYSQL 数据库导入导出命令 [7] Mysql导入导出工具Mysqldump和Source命

mysql 导入导出

mysql导入导出sql文件 window下 1.导出整个数据库mysqldump -u 用户名 -p 数据库名 > 导出的文件名mysqldump -u dbuser -p dbname > dbname.sql 2.导出一个表mysqldump -u 用户名 -p 数据库名 表名> 导出的文件名mysqldump -u dbuser -p dbname users> dbname_users.sql 3.导出一个数据库结构mysqldump -u dbuser -p -d --

mysql导入导出数据中文乱码解决方法小结

inux系统中 linux默认的是utf8编码,而windows是gbk编码,所以会出现上面的乱码问题. 解决mysql导入导出数据乱码问题 首先要做的是要确定你导出数据的编码格式,使用mysqldump的时候需要加上--default-character-set=utf8, 例如下面的代码: 复制代码 代码如下: mysqldump -uroot -p --default-character-set=utf8 dbname tablename > bak.sql 那么导入数据的时候也要使用--

Mysql导入导出大量数据的方法、备份恢复办法

经常使用PHP+Mysql的朋友一般都是通过phpmyadmin来管理数据库的.日常的一些调试开发工作,使用phpmyadmin确实很方便.但是当我们需要导出几百兆甚至几个G的数据库时,phpmyadmin就会很卡.甚至如果你是想导入大量数据,则phpmyadmin完全无法完成.因为phpmyadmin是基于PHP网页的,无法上传太大的sql文件.其实mysql官方给了我们很好的解决方案:mysqldump. 下面介绍,如何在Windows环境下,使用mysqldump导出数据库: 找到你mys