我在使用rails app上的ruby创建表时遇到问题。这让我疯狂!当我尝试创建表时返回以下内容:
错误1(HY000):无法创建/写入文件'/usr/local/mysql/data/test_development/users.MYI'(错误代码:2)
值得一提的是,我是个新手,顺便说一句。
答案 0 :(得分:9)
这forum post似乎处理同样的问题:
尝试以下方法:
- mkdir / var / lib / mysql / tmp
- chown mysql:mysql / var / lib / mysql / tmp
- 将以下行添加到[mysqld]部分:tmpdir = / var / lib / mysql / tmp
- 重新启动服务器
醇>
答案 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*