1、報錯資訊
error 1290 (hy000): the mysql server is running with the --secure-file-priv option so it cannot execute this statement
2、 報錯原因: mysql檔案的匯入和匯出路徑有預設的設定,即 secure-file-priv,當傳入的csv檔案路徑與預設的路徑衝突時就會報錯。
secure-file-priv的值有三種情況:
secure_file_prive=null ---限制mysqld 不允許匯入匯出
secure_file_priv=/path/ ---限制mysqld的匯入匯出只能發生在預設的/path/目錄下
secure_file_priv=' ' ---不對mysqld 的匯入 匯出做限制
3、 檢視secure-file-priv設定
mysql> show variables like '%secure%';
| variable_name | value |
| require_secure_transport | off |
| secure_auth | on |
| secure_file_priv | null |
4、修改配置
從上面可以看到預設的配置時限制匯入匯出的,直接在mysql中執行命令,把限制設定為空,但是有報錯:
mysql> set global secure_file_priv='';
error 1238 (hy000): variable 'secure_file_priv' is a read only variable
這是因為這個是唯讀引數,所以只能修改配置檔案,然後重啟服務去做修改
修改配置檔案
vim /etc/my.cnf
[mysqld]
# 設定為空
secure_file_priv = ''
或者# 設定匯入匯出的目錄
secure_file_priv = /data/file
重啟mysql,之後檢視是否生效。
mysql匯入csv檔案出錯解決辦法
將 csv檔案匯入mysql可使用load data infile,概要寫法 load data in file 對於本地檔案,使用 load data local infile d filename.csv 語法 具體語法使用可參照 如果乙個表中只有英文本元則匯入不出現問題,寫法也極其簡單 loa...
Mysql 匯入csv檔案
mysql load data infile命令可以把csv平面檔案中的資料匯入到資料庫中。linux下 load data infile home test dump ip location.csv into table ip location character set utf8 fields ...
CSV檔案匯入MySQL
1 首先看一下我本次匯入的資料,比較簡單 1 在資料庫中首先建立了乙個名為 test 的資料庫,在test資料庫下建立了乙個名為 student 的 屬性如下 column name datatype note idint 11 primary key,not null name varchar 4...