环境
Mysql版本:5.7.12
操作系统:OSX 10.11
安装文件:.dmg文件
MySQL:mysql-5.7.12-osx10.11-x86_64.dmg(注意5.7跟之前的字段有些不同,下面会说)
Step 1
关闭mysql服务。无论你有没有开启mysql服务,保险起见都要运行一下以下命令。
sudo /usr/local/mysql/support-files/mysql.server stop
(注:我这里报错了:ERROR! MySQL server PID file could not be found! 我直接在 系统偏好设置-->其他(在最下面)中进入MySQL-->关闭就够了,第二步一样的)
Step 2
安全模式启动mysql。
sudo /usr/local/mysql/bin/mysqld_safe --skip-grant-tables
(第二步貌似还是不好使,按照下面:
1、在终端中输入添加MySQL路径的命令:
PATH="$PATH":/usr/local/mysql/bin 注:只要发现 这种报错 mysql: command not found 就用PATH这行代码,再接着输入你之前报错命令行就可以了
2、得到管理员权限
sudo su (输入你笔记本的密码)
3、越过权限表,直接登陆MySQL
mysqld_safe --skip-grant-tables --skip-networking &
)
安全模式下,可以直接打开mysql命令行窗口,而不需要密码。
Step 3
新建一个终端,修改root密码,
此处注意,5.7较之之前的版本,mysql.user表里面的password字段改成了:authentication_string
逐一输入以下命令,修改root密码并退出。如果还接着用password,会报错,找不到这个字段,新密码:12345
mysql -u root
UPDATE mysql.user SET authentication_string=PASSWORD('12345') WHERE User='root';
FLUSH PRIVILEGES;
q
将my-new-password
换成你的新密码。运行完以上命令后,root的密码就修改成你设置的密码了。
测试
运行以下命令测试密码是否修改成功。
mysql -u root -p
然后输入你新设置的密码。
如果输入无误,应该会出现mysql命令行窗口,如下:
mysql>
提示
- 通过.dmg文件安装mysql后,会在系统设置里面出现mysql图标,提供GUI服务,用来打开和关闭mysql服务。
- 命令行打开和关闭mysql服务
sudo /usr/local/mysql/support-files/mysql.server start
sudo /usr/local/mysql/support-files/mysql.server stop
- 1
- 2
参考
Reset MySQL root Password in OSX
Mac如何启动MySQL:
http://jingyan.baidu.com/article/48a42057e2b2b9a9242504a2.html
MySQL无法登陆root用户解决方法