$ ./mysqladmin -u root -p 'redacted' 输入密码。
mysqladmin: connect to server at ' localhost' failed error: '拒绝访问用户'root'@'localhost'(使用密码:YES)'
我怎样才能解决这个问题?
1.打开& 编辑/etc/my.cnf
或/etc/mysql/my.cnf
,取决于你的发行版。
2.在[mysqld]
下添加skip-grant-tables
。
3.重新启动Mysql
4.现在你应该能够使用下面的命令 "mysql -u root -p "登录到mysql。
5.运行mysql> flush privileges;
。
6.通过ALTER USER 'root'@'localhost'IDENTIFIED BY 'NewPassword';
设置新密码。
7.回到/etc/my.cnf,删除/注释 skip-grant-tables
8.重新启动Mysql
9.现在你将能够用新的密码mysql -u root -p
登录。
我这样做是为了在OSx中初始设置MySQL时设置我的根密码。打开一个终端。
sudo sh -c 'echo /usr/local/mysql/bin > /etc/paths.d/mysql'
关闭终端并打开一个新的终端。 以下是在Linux中设置root密码的方法。
sudo /usr/local/mysql/support-files/mysql.server stop
sudo mysqld_safe --skip-grant-tables
(sudo mysqld_safe --skip-grant-tables :这在第一次时对我不起作用。但第二次尝试,就成功了)。)
然后登录到MySQL
mysql -u root
FLUSH PRIVILEGES;
现在更改密码。
ALTER USER 'root'@'localhost' IDENTIFIED BY 'newpassword';
重新启动MySQL。
sudo /usr/local/mysql/support-files/mysql.server stop
sudo /usr/local/mysql/support-files/mysql.server start