昨天晚上,看[PHP程序设计]一书,刚好看到第8章”数据库”,就启动了早先装上去的MySql,然后用Mysql Administator去登录,结果却将密码忘记了,怎么也登录不上去了,郁闷了一下.于是上网搜索相关资料,找到了如下的办法:
在windows下:
打开命令行窗口,停止mysql服务:Net stop mysql
到mysql的安装路径启动mysql,在bin目录下使用mysqld-nt.exe启动,在命令行窗口执行:mysqld-nt –skip-grant-tables
然后另外打开一个命入令行窗口,执行mysql,此时无需输入密码即可进入。
>use mysql
>update user set password=password(“new_pass”) where user=”root”;
>flush privileges;
>exit
使用任务管理器,找到mysqld-nt的进程,结束进程!
在重新启动mysql-nt服务,就可以用新密码登录了。
在linux下:
如果 MySQL 正在运行,首先杀之: killall -TERM mysqld。
启动 MySQL :bin/safe_mysqld –skip-grant-tables &
就可以不需要密码就进入 MySQL 了。
然后就是
>use mysql
>update user set password=password(“new_pass”) where user=”root”;
>flush privileges;
重新杀 MySQL ,用正常方法启动 MySQL 。
然而我安装的MySql是mysql-5.1.41, 里面没有mysqld-nt.exe,只有mysqld.exe.
呵呵,就是这个啦!
于是按着操作:
1- 通过任务管理器,关闭MySql服务
2- 到MySql安装的目录下的Bin子目录下,在命令行窗口运行:mysqld –skip-grant-tables
3- 后面的相同,照做:
>use mysql
>update user set password=password(“new_pass”) where user=”root”;
>flush privileges;
>exit
注意,这样一来,你的密码就成了”new_pass”(不含引号)
于是,现次用命令行来重设一下密码:
D:\MySQL\MySQL Server 5.1\bin>mysqladmin.exe -uroot -p password “你的密码”
请再次留意,这里的”你的密码”,你如果不想你的密码含有引号,则不用带上,操作如:
D:\MySQL\MySQL Server 5.1\bin>mysqladmin.exe -uroot -p password 123456789
您好!我非常想感谢一个巨大的帮助您的网站。此代码对我帮助很大,谢谢!