Mohit Bhasi Mohit Bhasi - 3 months ago 19
MySQL Question

How should I tackle --secure-file-priv in MySQL?

I am learning MySQL and tried using a

LOAD DATA
clause. When I used it as below:

LOAD DATA INFILE "text.txt" INTO table mytable;


I got the following error:


The MySQL server is running with the --secure-file-priv option so it cannot execute this statement


How do I tackle this error?

I have checked another question on the same error message, but still can’t find a solution.

I am using MySQL 5.6

vhu vhu
Answer

It's working as intended. Your MySQL server has been started with --secure-file-priv option which basically limits from which directories you can load files using LOAD DATA INFILE.

You may use SHOW VARIABLES LIKE "secure_file_priv"; to see the directory that has been configured.

You have two options:

  1. Move your file to the directory specified by secure-file-priv.
  2. Disable secure-file-priv. This must be removed from startup and cannot be modified dynamically. To do this check your MySQL start up parameters (depending on platform) and my.ini.
Comments