Jika kemampuan LOKAL dinonaktifkan, baik di sisi server atau klien, klien yang mencoba mengeluarkan pernyataan LOAD DATA LOCAL menerima pesan galat berikut:
ERROR 3950 (42000): Loading local data is disabled; this must be
enabled on both the client and server side
Saya menemui masalah yang sama ketika saya ingin memuat file teks pet.txt ke tabel pet mengikuti tutorial Mysql:https://dev.mysql.com/doc/refman/8.0/en/loading-tables.html
Setelah mencari secara online, saya memperbaikinya dengan langkah-langkah ini:
- atur variabel global dengan menggunakan perintah ini:
mysql> SET GLOBAL local_infile=1;
Query OK, 0 rows affected (0.00 sec)
- keluar dari server saat ini:
mysql> quit
Bye
- hubungkan ke server dengan variabel sistem file-lokal :
mysql --local-infile=1 -u root -p1
Variabel ini mengontrol kemampuan LOKAL sisi server untuk pernyataan LOAD DATA. Bergantung pada pengaturan local_infile, server menolak atau mengizinkan pemuatan data lokal oleh klien yang mengaktifkan LOKAL di sisi klien. Untuk secara eksplisit menyebabkan server menolak atau mengizinkan pernyataan LOAD DATA LOCAL (terlepas dari bagaimana program dan pustaka klien dikonfigurasikan saat pembuatan waktu atau runtime), mulai mysqld dengan local_infile dinonaktifkan atau diaktifkan, masing-masing. local_infile juga dapat diatur saat runtime.
- gunakan Database Anda dan muat file ke dalam tabel:
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)
Apakah itu berhasil?
Referensi:
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