MySQL:如何将数据从mysql导出到txt?

时间:2017-11-23 10:12:06

标签: mysql

我想将数据从mysql导出到txt。

我用

从users2选择*到outfile'C:\ ProgramData \ MySQL \ MySQL Server 5.7 \ Uploads \ 1.txt'

但是有一个错误:

ERROR 1290(HY000):MySQL服务器正在运行--secure-file-priv选项,因此无法执行此语句

我尝试解决: 显示'%secure%'等变量; 结果是:

+ -------------------------- + ------------------- ----------------------------- + | Variable_name |价值| + -------------------------- + ---------------------- -------------------------- + | require_secure_transport |关闭| | secure_auth | ON | | secure_file_priv | C:\ ProgramData \ MySQL \ MySQL Server 5.7 \ Uploads \ | + -------------------------- + ---------------------- -------------------------- +

我在上面使用的路径。 所以我不知道如何解决它。

1 个答案:

答案 0 :(得分:0)

您可能想要查看有关此问题的MySQL文档,here

文档引用了以下几点:

  

secure_file_priv可以设置如下:

     
      
  • 如果为空,则变量无效。这不是一个安全的设置。
  •   
  • 如果设置为目录名称,则服务器会将导入和导出操作限制为仅适用于该目录中的文件。目录必须存在;服务器不会创建它。
  •   
  • 如果设置为NULL,则服务器会禁用导入和导出操作。从MySQL 5.7.6。
  • 起允许此值   

根据以上所述,您必须在my.cnf中明确指定此内容,如下所示:

  • 可以使用""
  • 设置secure_file_priv=""
  • 可以使用NULL
  • 设置secure_file_priv=NULL
  • 特定文件夹值可以与secure_file_priv=My_Specific_Output_Folder
  • 一起使用

这样,您可能希望决定可用的选项,并在my.cnf文件中进行必要的更改并重新启动MySQL服务器服务。重新启动服务后,您应该能够从查询中导出数据。

希望这有帮助!