MySQL错误1(HY000)无法创建文件Errcode 2

时间:2009-06-11 13:20:02

标签: mysql database-table

我在使用rails app上的ruby创建表时遇到问题。这让我疯狂!当我尝试创建表时返回以下内容:

错误1(HY000):无法创建/写入文件'/usr/local/mysql/data/test_development/users.MYI'(错误代码:2)

值得一提的是,我是个新手,顺便说一句。

5 个答案:

答案 0 :(得分:9)

forum post似乎处理同样的问题:

  

尝试以下方法:

     
      
  1. mkdir / var / lib / mysql / tmp
  2.   
  3. chown mysql:mysql / var / lib / mysql / tmp
  4.   
  5. 将以下行添加到[mysqld]部分:tmpdir =   / var / lib / mysql / tmp
  6.   
  7. 重新启动服务器
  8.   

答案 1 :(得分:1)

我希望你能解决这个问题,因为它已经过了一年。但我刚遇到同样的问题并成功解决了。此错误是因为mysql没有权限修改/ usr / local / mysql / data中的文件。为了绕过使用这个目录,这是将/ usr / local / mysql / support-files中提供的一个cnf复制到〜/ .my.cnf中。我用了my-medium.cnf。然后我在[mysqld]部分下添加了变量tmpdir = / tmp。我选择了/ tmp,因为我在那里有读写权限。记得启动并重新启动mysql服务器。

答案 2 :(得分:1)

我在Windows中遇到此错误,我发现我同样重命名了我的数据库名称。它解决了我的问题。希望这会有所帮助。

答案 3 :(得分:0)

尝试以下方法:

1)mkdir / var / lib / mysql / tmp

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

3)将以下行添加到my.cnf的[mysqld]部分:       tmpdir = / var / lib / mysql / tmp

4)重启服务器

答案 4 :(得分:0)

无需重启服务器

以下内容可行,值得一试: 使用root权限,搜索/ tmp以查找名为#sql_d5_0.MYD的文件 如果找到,只需移动或删除即可。这样你就释放了阻止mysql访问你的数据的锁。 It's

sudo rm /tmp/\#sql*