MySQL的>创建数据库测试; ERROR 1006(HY000):无法创建数据库'test'(错误号:2)

时间:2013-10-01 15:56:21

标签: mysql

我在root帐户下登录mysql后无法创建数据库。我是否必须创建管理员帐户才能这样做?此外,由于某种原因,我的StartUp文件没有安装(出现错误)。当我在我的终端输入“mysql”时,我不确定这是否会影响其他任何事情,因为mySQL启动了。

当我输入

mysql> SELECT Host, User FROM mysql.user;
+---------------------+------+
| Host                | User |
+---------------------+------+
| 127.0.0.1           | root |
| ::1                 | root |
| myname-mac.att.net  |      |
| myname-mac.att.net  | root |
| localhost           |      |
| localhost           | root |
+---------------------+------+

我没有得到。我似乎有多个root用户,我不知道:: 1的含义。

编辑:我的数据库目前看起来像这样。

mysql> SHOW DATABASES;
+--------------------+
| Database           |
+--------------------+
| information_schema |
+--------------------+
1 row in set (0.02 sec)

我输入的数据库名称并不重要。我甚至试着称它为“苹果”。

3 个答案:

答案 0 :(得分:7)

可能是空间问题。 按照这个

  1. /var/lib/mysql
  2. 检查.err日志
  3. 如果日志说的话 “[错误]无法启动服务器:无法创建PID文件:设备上没有剩余空间”

  4. df -hk /var

  5. 检查/ var大小
  6. 如果使用的是100%,那么你必须找到填充的文件。

  7. 中查找大文件

    find /var/ -type f -size +100000k -exec ls -lh {} \; | awk '{ print $9 ": " $5 }'
  8. 查看您可以删除的文件,然后通过

  9. 重新启动mysql进程
  10. /etc/init.d/mysql restart
  11. 让我知道这是否有效:)

答案 1 :(得分:2)

您有多个域的一个root用户。这意味着您可以从指定的域连接并运行该数据库上的查询。

如果您只想显示一个,请为该域指定'%'并删除所有其他域,但不建议这样做。仅从roothost保存root用户的运行权限,并为从外部运行查询创建有限的用户。

对于测试数据库错误,它会在全新安装时发生。只需重新启动mysql服务器(停止/启动过程)或计算机。

此外,请确保您拥有完整的权利

GRANT ALL PRIVILEGES ON *.* TO 'root'@'thedomainyourunfrom/localhost/%' WITH GRANT OPTION;

这将为您的root用户提供服务器中所有数据库的完整权限

osx manual http://dev.mysql.com/doc/mysql-macosx-excerpt/5.0/en/macosx-installation.html

答案 2 :(得分:1)

作为额外资源,您可以尝试另外两件事:

  1. 找出MySQL的数据文件夹并“chown”它,以便mysql可以正确地写入它。例如,如果你的MySQL的数据文件夹是/usr/local/mysql/data/,你可以通过输入命令chown -R mysql:mysql /usr/local/mysql/data/

  2. 来“chown”它。
  3. 如果您刚刚安装了MySQL服务器,请尝试重新启动计算机。有时,安装程​​序无法提供对程序

  4. 的正确文件访问权限

    我希望有所帮助!