2009-11-10 92 views

回答

1

以root身份登录,然后运行下面的MySQL命令:

GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost'; 
FLUSH PRIVILEGES; 
+0

错误 SQL查询: 授予*上的所有特权。 *到'root'@'localhost'; MySQL说:文档 #1045 - 访问被拒绝用户'root'@'localhost'(使用密码:YES) – Steven 2009-11-10 15:40:51

+0

当您运行此操作时,您是否以root用户身份登录到mysql,是否正确? – 2009-11-10 15:47:53

+0

我想知道你是否需要设置密码,也许能够授予: 授予所有特权*。*到'root'@'localhost'IDENTIFIED BY'some_password'授予选项; – 2009-11-10 15:51:44

15

这为我工作在Ubuntu:

停止MySQL服务器:

/etc/init.d/mysql stop 

开始从命令行的MySQL :

/usr/sbin/mysqld 

在另一端输入mysql和问题:

grant all privileges on *.* to 'root'@'%' with grant option; 

您可能还需要添加

grant all privileges on *.* to 'root'@'localhost' with grant option; 

,并选择使用密码。

flush privileges; 

然后退出MySQL提示符,然后杀死在前台运行的mysqld服务器。与

/etc/init.d/mysql start 
7

重新启动如果您面对的授予权限访问被拒绝的问题,您可以尝试mysql_upgrade来解决这个问题:

/usr/bin/mysql_upgrade -u root -p 

以root身份登录:

mysql -u root -p 

运行此命令:

mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost'; 
mysql> FLUSH PRIVILEGES; 
相关问题