当我尝试登录Mysql时,这让我发疯了。
TanTengluns-MacBook:~ tantan$ cd /usr/local/mysql/bin
TanTengluns-MacBook:bin tantan$ ./mysql -u root -p
Enter password:
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)
TanTengluns-MacBook:bin tantan$ ./mysql
ERROR 1045 (28000): Access denied for user 'tantan'@'localhost' (using password: NO)
有人会帮忙吗?三江源!!
答案 0 :(得分:1)
我想,你输错了密码...... 在我的情况下,如果我把错误的密码放错了,就像这样表示。
jonghan@jonghan-MS-7817:~$ /usr/bin/mysql -uroot -p
Enter password:
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)
在第二种情况下是同一个问题。
如果您忘记了密码,我建议您重置mysql root密码。
首先,你必须停止mysql服务。
#sudo service mysql stop
其次,在my.conf或my.cnf文件中添加'skip-grant-tables'。
就我而言(MySQL v5.7.17),mysqld.cnf位于'/etc/mysql/mysql.conf.d'中。
几乎my.conf / my.cnf文件显示如下。
[mysqld]
user = mysql
pid-file = /var/run/mysqld/mysqld.pid
socket = /var/run/mysqld/mysqld.sock
port = 3306
basedir = /usr
datadir = /var/lib/mysql
tmpdir = /tmp
lc-messages-dir = /usr/share/mysql
skip-external-locking
skip-grant-tables /*** You Add this code! ***/
接下来,重启mysql服务。
#sudo service mysql start
然后,打开你的mysql服务。在你的情况下,
$ cd /usr/local/mysql/bin
$ ./mysql -u root
然后,您无需验证即可登录。
接下来,您应该更改“root”的密码。
mysql> UPDATE user SET password=PASSWORD('yourpassword') WHERE user='root';
毕竟,恢复my.conf / my.cnf / mysqld.cnf等等。 (删除'skip-grant-tables')
最后,重新启动mysql服务。
$ sudo service mysql restart
如果按照这些步骤无法访问mysql,我建议重新设置Mysql。
谢谢!