这里写自定义目录标题
登陆MySQL时报错
使用 mysql -u root -p 输入密码后报错
Access denied for user 'root'@'localhost' (using password: YES)
报错原因
Mac安装mysql时自动创建了一个默认密码,可能由于某些原因数据库中的密码被加密了。
解决办法
cd /usr/local/mysql/data/
,找到data这个文件夹- 直接访问是不行的,需要对该文件夹授予访问权限,这里为了方便直接授予所有权限(实际操作根据个人需要)
sudo chmod -R 777 /usr/local/mysql/data
- 进入该文件夹内部,找到ib_logfile0 和 ib_logfile1两个文件,直接删除
rm -f ib_logfile0 rm -f ib_logfile1
- 在系统偏好设置中找到mysql,停止服务
- 进入终端输入:
cd /usr/local/mysql/bin/
回车后 登录管理员权限sudo su
回车后输入以下命令来禁止mysql验证功能./mysqld_safe --skip-grant-tables &
回车后mysql会自动重启(偏好设置中mysql的状态会变成running) - 输入命令 ./mysql 回车后执行(5.6以后的版本适用)
update MySQL.user set authentication_string=password('新的密码') where user='root' ;
刷新权限flush privileges;
7.做完后,退出,然后用新设置的密码重新登陆mysql
8.进入mysql后执行一下show databases;
- 可能会出现让你再次设置密码的操作,这时候执行
ALTER USER 'root'@'localhost' IDENTIFIED BY '你的新密码';
即可大功告成