📅  最后修改于: 2023-12-03 15:27:23.039000             🧑  作者: Mango
当使用 MySQL 时,有时候需要从本地文件系统加载数据到数据库中。但是,在某些情况下,这个功能可能会被禁用。当出现此错误消息时,这意味着您尝试使用此功能时,MySQL 已禁用该功能。
错误消息如下所示:
ERROR 3948 (42000): LOAD DATA LOCAL is disabled; this must be enabled on both the client and server sides
此问题的原因在于 MySQL 默认情况下禁用了本地文件系统数据加载功能。MySQL 可能会禁用此功能作为安全措施以防止恶意数据加载。
如果您确实需要启用此功能,则可以使用以下两种方法之一:
方法一:在 MySQL 配置文件中启用该功能
将以下参数添加到 MySQL 配置文件中:
[mysqld]
local-infile=1
重启 MySQL 服务器,以使更改生效。这将启用 MySQL 服务器上的本地数据加载功能。
方法二:在客户端连接字符串中启用该功能
在连接到 MySQL 数据库时,可以在连接字符串中设置local-infile
参数。例如:
mysql -u username -p --local-infile=1 dbname
这将在客户端上启用本地数据加载功能。
注意:如果您选择在客户端上启用此功能,则必须将该功能在 MySQL 服务器上启用。否则,您仍将收到相同的错误消息。
这个错误消息告诉您 MySQL 禁用了本地文件系统数据加载功能。如果您确实需要使用此功能,则可以在 MySQL 配置文件中或客户端连接字符串中启用该功能。请注意,如果您在客户端上启用了该功能,则必须在 MySQL 服务器上启用该功能,否则您将继续收到相同的错误消息。