无法将数据导入 MySQL table

Unable to import data into MySQL table

我们在将条目导入 MySQL 版本 8.0.27-0 的 table 时遇到问题。我已经能够通过一个简单的示例重现该问题。请注意,所有权限已授予用户。

首先我创建了以下 table:

CREATE TABLE people
(
  id  INT UNSIGNED  NOT NULL AUTO_INCREMENT,
  name  CHAR(40) NOT  NULL DEFAULT '',
  age  INT NOT NULL  DEFAULT 0,
  PRIMARY KEY (id)
);

然后我创建了文件 /tmp/people.txt,其中包含以下条目:

1   William 25
2   Mary    37

文件的权限没有问题,因为 system '/tmp/people.txt' 给出以下输出:

mysql> system cat '/tmp/people.txt'
1   William 25
2   Mary    37

然而,当我尝试

LOAD DATA INFILE '/tmp/people.txt' INTO TABLE people;

我收到以下错误:

mysql> LOAD DATA INFILE '/tmp/people.txt' INTO TABLE people;
ERROR 29 (HY000): File '/tmp/people.txt' not found (OS errno 13 - Permission denied)

文件 /tmp/people.txt 的权限为 777,所以我不确定发生了什么。


当我从 /tmp 目录尝试 mysqlimport soverflow people.txt 时,出现以下错误:

mysqlimport: Error: 13, Can't get stat of '/var/lib/mysql/soverflow/people.txt' (OS errno 2 - No such file or directory), when using table: people

通过将文件用户和组更改为 mysql.

,我们能够使 mysql导入和加载数据 INFILE 工作