Nếu tối thiểu MySQL Debian-7 không thể sử dụng local_infile
, hãy xem xung quanh tất cả các tệp tạo được sử dụng để biên dịch để xem liệu nó bị tắt theo mặc định hay nếu local_infile
được bật cho Debian-7.
Trước khi sử dụng loại thời gian đó, vui lòng chạy như sau:
SHOW GLOBAL VARIABLES LIKE 'local_infile';
SET GLOBAL local_infile = 'ON';
SHOW GLOBAL VARIABLES LIKE 'local_infile';
Nó sẽ lặp lại như sau:
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>
Nếu nó vẫn nói 'OFF'
, thì hãy nhìn sâu vào bên trong các cài đặt trình biên dịch để kích hoạt nó.
Nếu nó được đặt thành 'ON'
, bạn ổn.
Xin lưu ý tôi không nói
SET GLOBAL local_infile = 1;
Tôi nói sử dụng
SET GLOBAL local_infile = 'ON';
Các tùy chọn local_infile là Boolean, không số .
Nếu đặt cái này trong my.cnf
[mysqld]
local_infile=ON
và khởi động lại mysql cũng không hoạt động, bạn sẽ phải khởi động mysql bằng một cái gì đó như thế này:
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
hoặc có lẽ thêm nó vào my.cnf
[mysqld]
init-file=/var/lib/mysql/init_file.sql
sau đó khởi động lại mysql.
Hãy thử một lần !!!
local_infile | ON
. Có vẻ như vấn đề không phải là mysql, màPHP
có lẽ là trình kết nối / trình điều khiển mysql-PHP (mysqli).