2011-10-17 142 views
20

我在Win7上使用MySQL 5.5.16 noinstall Zip Archive。MySQL:错误1227(42000):访问被拒绝 - 无法创建用户

我启动服务器后,命令show databases向我显示了2个数据库的列表:information_schematest。后者是空的。

user在哪里?

我试图创建通过这个命令create user newUser;一个新用户,并得到了以下错误消息:ERROR 1227 (42000): Access denied; you need (at least one of) the CREATE USER privilege(s) for this operation

我应该怎么做来创建,数据库,表,并尽一切我想要做的操作?我不知道我使用的事实MySQL 5.5.16 noinstall Zip Archive与错误消息有什么关系?

回答

80

做的第一件事就是运行这个命令:

SHOW GRANTS; 

你很快就会看到你被分配到的匿名用户进行身份验证到MySQL。

而不是记录到MySQL与

mysql 

登录这样的:

mysql -uroot 

默认情况下,根@本地拥有所有的权利,没有密码。

如果你不能以root没有密码登录,请执行下列操作:

步骤01)添加两个选项中的my.ini的mysqld的部分:

[mysqld] 
skip-grant-tables 
skip-networking 

步骤02)重启MySQL

net stop mysql 
<wait 10 seconds> 
net start mysql 

步骤03)连接到MySQL

mysql 

步骤04)创建一个从根@本地密码

UPDATE mysql.user SET password=password('whateverpasswordyoulike') 
WHERE user='root' AND host='localhost'; 
exit 

步骤05)重启MySQL

net stop mysql 
<wait 10 seconds> 
net start mysql 

步骤06)以root身份登录,密码

mysql -uroot -p 

你应该从那里好。

CAVEAT:Please remove anonymous users !!!

+1

谢谢大家!它现在有效! – cProg

+1

my.ini是什么? –

+3

@CharlieParker'my.ini'是MySQL/Windows的配置文件。我提到'my.ini',因为问题以'我在Win7上使用MySQL 5.5.16 noinstall Zip Archive'开头'。 – RolandoMySQLDBA