Apabila cuba mengeksport hasil skrip MySQL ke fail teks menggunakan INTO OUTFILE, anda mungkin menghadapi ralat berikut:
ERROR 1290 (HY000): The MySQL server is running with the --secure-file-priv option so it cannot execute this statement
Ralat ini berlaku kerana pilihan secure_file_priv pelayan MySQL mengehadkan penulisan kepada direktori tertentu.
Kenal pasti Direktori Tulis Dibenarkan:
mysql> SELECT @@GLOBAL.secure_file_priv;
Tulis ke Direktori Dibenarkan:
mysql> SELECT * FROM train INTO OUTFILE '/var/lib/mysql-files/test.csv' FIELDS TERMINATED BY ',';
Kenal pasti Direktori Tulis Dibenarkan:
mysql> SELECT @@GLOBAL.secure_file_priv;
Nilai NULL:
Jika hasilnya NULL, cipta fail ~/.my.cnf:
$ vi ~/.my.cnf [mysqld_safe] [mysqld] secure_file_priv="/Users/russian_spy/"
Nilai Bukan NULL:
Ubah suai fail /etc/my.cnf:
[mysqld] secure_file_priv="/Users/russian_spy/"
Mulakan semula MySQL dan Sahkan:
mysql> SELECT @@GLOBAL.secure_file_priv;
Eksport Jadual ke Fail CSV:
mysql> SELECT * FROM train INTO OUTFILE '/Users/russian_spy/test.csv' FIELDS TERMINATED BY ',';
Atas ialah kandungan terperinci Bagaimana untuk Menyelesaikan Ralat MySQL 1290 (HY000) --secure-file-priv Issue?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!