Ошибка MySQL 1 (HY000) Ошибка создания файла Errcode 2 - PullRequest
2 голосов
/ 11 июня 2009

У меня проблемы с созданием таблицы для моего приложения ruby ​​on rails. Это сводит меня с ума! При попытке создать таблицу возвращается следующее:

ОШИБКА 1 (HY000): невозможно создать / записать в файл '/usr/local/mysql/data/test_development/users.MYI' (код ошибки: 2)

Стоит отметить, что я новичок, кстати.

Ответы [ 5 ]

9 голосов
/ 11 июня 2009

Это сообщение на форуме , похоже, решает ту же проблему:

Попробуйте следующее:

  1. mkdir / var / lib / mysql / tmp
  2. chown mysql: mysql / var / lib / mysql / tmp
  3. Добавьте следующую строку в раздел [mysqld]: tmpdir = / var / lib / mysql / tmp
  4. Перезагрузите сервер
1 голос
/ 26 февраля 2016

Я получил эту ошибку в Windows и обнаружил, что я переименовываю имя моей БД аналогичным образом. это решило мою проблему. Надеюсь, это поможет.

1 голос
/ 11 декабря 2010

Надеюсь, вы решили эту проблему, так как это был год. Но я столкнулся с этой же проблемой и успешно ее решил. Эта ошибка вызвана тем, что mysql не имеет прав на изменение файлов в / usr / local / mysql / data. Чтобы обойти использование этого каталога, нужно было скопировать один из предоставленных cnf в / usr / local / mysql / support-files в ~ / .my.cnf Я использовал my-medium.cnf. Затем я добавил переменную tmpdir = / tmp в раздел [mysqld]. Я выбрал / tmp, потому что у меня есть права на чтение и запись. Не забудьте запустить и перезапустить ваш сервер MySQL.

0 голосов
/ 02 декабря 2013

Нет необходимости перезагружать сервер

Может работать следующее, и стоит попробовать: Используя привилегии root, найдите / tmp для файла с именем вроде # sql_d5_0.MYD Если найдено, просто переместите или удалите. Таким образом, вы снимаете блокировку, которая не дает mysql получить доступ к вашим данным. Подмигнул

sudo rm /tmp/\#sql*
0 голосов
/ 10 января 2013

попробуйте следующее:

1) mkdir / var / lib / mysql / tmp

2) chown mysql: mysql / var / lib / mysql / tmp

3) Добавьте строку ниже в раздел [mysqld] my.cnf: tmpdir = / var / lib / mysql / tmp

4) Перезагрузите сервер

...