Rumah > Soal Jawab > teks badan
P粉3168908842023-08-30 00:09:36
Jika ciri LOCAL dilumpuhkan pada pelayan atau bahagian klien, pelanggan yang cuba mengeluarkan kenyataan LOAD DATA LOCAL akan menerima mesej ralat berikut:
ERROR 3950 (42000): Loading local data is disabled; this must be enabled on both the client and server side
Saya menghadapi masalah yang sama apabila saya ingin memuatkan fail teks pet.txt ke dalam jadual haiwan peliharaan mengikut tutorial Mysql: https://dev.mysql.com/doc/refman/8.0/en/loading-tables html
Selepas mencari dalam talian, saya membetulkannya dengan langkah berikut:
mysql> SET GLOBAL local_infile=1; Query OK, 0 rows affected (0.00 sec)
mysql> quit Bye
mysql --local-infile=1 -u root -p1
Pembolehubah ini mengawal kefungsian TEMPATAN sebelah pelayan bagi pernyataan LOAD DATA. Bergantung pada tetapan local_infile, pelayan menafikan atau membenarkan klien dengan LOCAL didayakan pada klien untuk memuatkan data setempat. Untuk secara eksplisit menyebabkan pelayan menafikan atau membenarkan LOAD DATA LOCAL kenyataan (tidak kira bagaimana program klien dan pustaka dikonfigurasikan pada masa binaan atau masa jalan), mulakan mysqld dengan local_infile dilumpuhkan atau didayakan, masing-masing. local_infile juga boleh ditetapkan semasa runtime.
mysql> use menagerie Database changed mysql> load data local infile '/path/pet.txt' into table pet; Query OK, 8 rows affected, 7 warnings (0.00 sec)
Adakah ia berkesan?
Rujukan:
https://dev.mysql. com/doc/refman/8.0/en/load-data-local-security.html https://dev.mysql.com/doc /refman/8.0/en/source-configuration-options.html#option_cmake_enabled_local_infile https://dev.mysql.com/doc /refman/8.0/en/server-system-variables.html#sysvar_local_infile