在mysql 8.0.22 运行load data local 从本地文本导入数据时,报错:"ERROR 3948(42000): Loading local data is disabled - this must be enabled on both the client and server sides".
结合官方文档和Stack Overflow上的解释,得到以下最佳的解决方案,如下:
step1.首先,检查一个全局系统变量 'local_infile' 的状态:
show global variables like 'local_infile';
如果得到如下显示 Value=OFF,则说明这是不可用的
step2.要把这个值变为 ON
1).在mysql客户端输入:
set global local_infile=1;
2).然后退出quit 退出mysql。再次进入时,便会出现 Value=ON
3).重启mysql服务器后,同样会得到预期的结果
问题解决
如果没解决:
step3.在进入数据库的命令行要加上 --local_infile=1 这个配置,具体如下:
mysql --local_infile=1 -u <username> -p