ЗАГРУЗИТЬ ИНФИЛЬ ДАННЫХ не работает

Я запускаю MySQL на моем компьютере с Ubuntu . Я проверил файл /etc/mysql/my.cnf , он показывает временный каталог моей базы данных:

...
basedir     = /usr
datadir     = /var/lib/mysql
tmpdir      = /tmp
...

Как видно, временный каталог моего сервера MySQL - / tmp .

У меня есть файл student.dat , содержимое этого файла выглядит следующим образом:

...
30  kate    name
31  John    name
32  Bill    name
33  Job     name
...

Я скопировал указанный выше файл student.dat в / tmp каталог. Затем я запускаю следующую команду, чтобы загрузить данные из файла student.dat в таблицу student в моей базе данных:

LOAD DATA INFILE '/tmp/students.dat'
            INTO TABLE school_db.students
            FIELDS TERMINATED BY '\t'
            LINES TERMINATED BY '\n'
            (student_id, name, attribute)

Но я получил сообщение об ошибке в консоли MySQL:

ERROR 29 (HY000): File '/tmp/students.dat' not found (Errcode: 13)

Почему mysql не может найти файл student.dat , хотя файл находится во временном каталоге mysql?

PS

Таблица студентов выглядит следующим образом (до выполнения запроса LOAD DATA INFILE ... ] в таблице уже есть 4 записи):

mysql> describe students;

    +-------------------+--------------+------+-----+---------+-------+
    | Field             | Type         | Null | Key | Default | Extra |
    +-------------------+--------------+------+-----+---------+-------+
    | student_id        | int(11)      | YES  |     | NULL    |       |
    | name              | varchar(255) | YES  | MUL | NULL    |       |
    | attribute         | varchar(12)  | YES  | MUL | NULL    |       |
    | teacher_id        | int(11)      | YES  |     | NULL    |       |
    +-------------------+--------------+------+-----+---------+-------+
    4 rows in set (0.00 sec)
7
задан Mellon 12 December 2011 в 08:43
поделиться