无法将数据导入 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 工作
我们在将条目导入 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 工作