问题描述
今天在MAC上安装完MYSQL后,MYSQL默认给分配了一个默认密码,但当自己在终端上使用默认密码登录的时候,总会提示一个授权失败的错误:ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)
解决方案:
既然现在没法登录到数据库中,改密码和添加用户等操作也无从谈起。好在MySQL中还提供了一种免去密码校验进入数据库的方法,我们就先使用这种方法登入到数据库中。然后将默认密码替换掉,上面的问题就可以解决掉啦~具体操作如下:
1、打开系统偏好设置,找到mysql,点进去关闭mysql服务。
2、打开一个终端,输入以下命令
$ cd /usr/local/mysql/bin
$ sudo su
然后便可以看到终端命令变成这个开头: sh-3.2#
输入以下命令
$ ./mysqld_safe --skip-grant-tables &
之后边可以以安全模式进入数据库了。
3、现在打开一个新的终端 ,输入以下命令:
$ mysql -u -root
然后便会发现你不需要密码就进入数据库了。
4. 修改密码,输入以下命令
$ update mysql.user set authentication_string=password('123456') where user=‘root';flush privileges;
5、然后输入exit,再重新登入,输入新密码就可以登录成功了