Jika MySQL Debian-7 minimal tidak dapat digunakan local_infile
, lihat sekeliling semua file make yang digunakan untuk kompilasi untuk melihat apakah itu dinonaktifkan secara default atau jika local_infile
diaktifkan untuk Debian-7.
Sebelum mengambil waktu semacam itu, silakan jalankan yang berikut:
SHOW GLOBAL VARIABLES LIKE 'local_infile';
SET GLOBAL local_infile = 'ON';
SHOW GLOBAL VARIABLES LIKE 'local_infile';
Seharusnya menggema sebagai berikut:
mysql> SHOW GLOBAL VARIABLES LIKE 'local_infile';
+---------------+-------+
| Variable_name | Value |
+---------------+-------+
| local_infile | OFF |
+---------------+-------+
1 row in set (0.00 sec)
mysql> SET GLOBAL local_infile = 'ON';
Query OK, 0 rows affected (0.06 sec)
mysql> SHOW GLOBAL VARIABLES LIKE 'local_infile';
+---------------+-------+
| Variable_name | Value |
+---------------+-------+
| local_infile | ON |
+---------------+-------+
1 row in set (0.00 sec)
mysql>
Jika masih mengatakan 'OFF'
, lihat ke dalam pengaturan kompiler untuk mengaktifkannya.
Jika diatur ke 'ON'
, Anda OK.
Harap dicatat saya tidak mengatakannya
SET GLOBAL local_infile = 1;
Saya katakan digunakan
SET GLOBAL local_infile = 'ON';
The pilihan local_infile adalah Boolean, tidak numerik .
Jika mengatur ini dalam my.cnf
[mysqld]
local_infile=ON
dan me-restart mysql juga tidak berfungsi, Anda harus memulai mysql dengan sesuatu seperti ini:
echo "SET GLOBAL local_infile = 'ON';" > /var/lib/mysql/init_file.sql
chown mysql:mysql /var/lib/mysql/init_file.sql
service mysql stop
service mysql start --init-file=/var/lib/mysql/init_file.sql
rm -f /var/lib/mysql/init_file.sql
atau mungkin menambahkan ini ke my.cnf
[mysqld]
init-file=/var/lib/mysql/init_file.sql
kemudian restart mysql.
Cobalah !!!
local_infile | ON
. Tampaknya masalahnya bukan mysql, tetapiPHP
atau mungkin konektor / driver mysql-PHP (mysqli).$con = mysqli_init(); $con->options(MYSQLI_OPT_LOCAL_INFILE, true);
mysqli.allow_local_infile = On
baik untuk saya karenaGLOBAL local_infile = 'ON';
sudah aktif.