一:停止mysql服务。
cd /usr/local/mysql/support-files/
./mysql.server stop
二:终端进入mysql bin目录。
cd /usr/local/mysql/bin/
三:获取管理员权限 。
sudo su
四:禁止mysql 验证功能,输入后mysql会重启。
./mysqld_safe --skip-grant-tables &
五:输入 ./mysql 直接登录mysql (需要获取管理员权限,否则会失败)。
输入 FLUSH PRIVILEGES; 刷新MySQL的系统权限相关表。
输入 SET PASSWORD FOR 'root'@'localhost'='新密码'; 设置你的mysql密码
(SET PASSWORD FOR 'root'@'localhost' = PASSWORD ('123456'); 命令不支持了)
六: 密码设置完重启mysql服务就可以在 终端 使用新密码登录了,MySQLWorkbench, navicat 等连接不上。
使用--skip-grant-tables选项和此命令启动mysqld守护进程
sudo /usr/sbin/mysqld --skip-grant-tables --skip-networking & (在获取管理员权限下输入)
MySQLWorkbench, navicat 等就可以连接上了。