个人解决方法:结束mysqld-nt进程,而后再打开navicat链接数据库就行了mysql
别人完整的方法:sql
首先中止正在运行的MySQL进程
Linux下,运行 killall -TERM mysqld
Windows下,若是写成服务的 能够运行: net stop mysql
,如未加载为服务,可直接在进程管理器中进行关闭。
二、以安全模式启动MySQL
Linux下,运行 mysqld_safe --skip-grant-tables & 数据库
Windows下,在命令行下运行 X:/MySQL/bin/mysqld-nt.exe --skip-grant-tables // 我这里使用的是mysqld.exe 程序(看有的地方可能须要加配置文件的路径 --defaults-file="C:\Program Files\MySQL\MySQL Server 5.1\my.ini" --console,我这里没用能够)
三、完成之后就能够不用密码进入MySQL了
Linux下,运行 mysql -u root -p
Windows下,运行 X:/MySQL/bin/mysql -u root -p// 不用密码登陆便可进入
四、更改密码 // 依旧是最上面的3步
>use mysql
>update user set password=password("新密码") where user="root";
>flush privileges; 安全
另一个方法:命令行
Windows:
1. 管理员登录系统,中止mysql服务或者结束mysqld-nt进程
2. 进入命令行,来到mysql的安装目录.假设安装目录为 d:\mysql\ , CMD进入命令行
3. 运行 d:\mysql\bin\mysqld-nt --skip-grant-tables 启动mysql,关闭权限的检查
4. 运行 d:\mysql\bin\mysqladmin -u root flush-privileges password "newpassword" 重设root密码
5. 从新启动mysql服务进程