1

我刚刚通过 Homebrew 在 OS X Lion 上安装了 MySQL,并按照安装后的说明进行操作。现在我需要创建一个数据库:

$ mysql -u peeja
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 22
Server version: 5.5.25a Source distribution

Copyright (c) 2000, 2011, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> CREATE DATABASE `new_db` DEFAULT CHARACTER SET `utf8` COLLATE `utf8_unicode_ci`;
ERROR 1044 (42000): Access denied for user ''@'localhost' to database 'new_db'

怎么了user ''@'localhost'?为什么不user 'peeja'@'localhost'呢?为什么这个 Just Work™ 不适合安装用户?这不是 Homebrew 应该如何设置的吗?

还是我做错了什么?

4

2 回答 2

1

没有peeja没有密码的用户,因此它会将您记录为匿名用户。如果该用户存在,则登录为:

mysql -u peeja -p mypassword

或者

mysql -u peeja -p
于 2012-09-20T15:05:58.430 回答
1

您以匿名用户身份连接 - ''@'localhost'。此用户是在您的服务器上创建的。而且您还没有创建用户'peeja'@'localhost'。默认情况下 MySQL 连接使用匿名帐户。

因此,以 root 身份连接并创建用户 -

CREATE USER 'peeja'@'localhost';

然后授予您需要的权限并重新连接为 'peeja'@'localhost'。

于 2012-09-20T15:09:36.123 回答