我刚接手一个数据库,没有root密码,我按照网上的方法修改:
我是window2003系统1、进入cmd命令行,运行 net stop mysql5_pn (我的mysql服务的名称为啥是这个我不知道),系统提示停止服务成功2、在命令行进入到mysql的安装路径下的bin目录下使用mysqld-nt.exe启动:mysqld-nt --skip-grant-tables 3、另外打开一个命入令行窗口,在bin目录下执行mysql,此时无需输入密码即可进入
C:\Program Files\MySQL\MySQL Server 5.0\bin>mysql.exe 这样就进入了mysql>提示符,
mysql>use mysql
>update user set password=password("my23456") where user="root";
>flush privileges;
>quit(我不知道上面最后3行的提示符为啥不是“mysql>而是>”了)之后,我把两个cmd窗口都关闭了,又开了一个cmd,运行net start mysql5_pn,想重新启动服务,结果系统提示启动失败,我到控制面板的“服务”里面启动mysql5_pn,仍然提示失败,但是我通过phpmyadmin是可以通过用户名root和密码my23456登录的,表面上看root密码已经修改成功了。但是在phpmyadmin里很多操作都不能进行,比如要修改root密码,则提示在--skip-grant状态下不能修改面膜。但是为什么我之前停止了mysql服务,在我想重新启动失败的前提下,这里还能使用数据库呢?我看了一下window的系统进程,发现mysqld-nt这个进程,这是在修改root密码前启动的,看来是他在以--skip-grant模式启动着数据库服务,这种模式还是比较危险的,所以我杀掉这个进程,再次运行net start mysql5_pn ,提示启动成功。但是这下子那个my23456的密码又登录不了数据库了。无论是在phpmyadmin还是在mysql的控制台都登陆不了。这是怎么回事?我那里操作有问题吗?看网上很多人都似乎解决了问题,为什么我这里表面上看修改成功了,但是真正再次启动服务的时候密码 又不好使了呢?希望得到大家的帮助,急用,先谢谢谢谢!!!
我是window2003系统1、进入cmd命令行,运行 net stop mysql5_pn (我的mysql服务的名称为啥是这个我不知道),系统提示停止服务成功2、在命令行进入到mysql的安装路径下的bin目录下使用mysqld-nt.exe启动:mysqld-nt --skip-grant-tables 3、另外打开一个命入令行窗口,在bin目录下执行mysql,此时无需输入密码即可进入
C:\Program Files\MySQL\MySQL Server 5.0\bin>mysql.exe 这样就进入了mysql>提示符,
mysql>use mysql
>update user set password=password("my23456") where user="root";
>flush privileges;
>quit(我不知道上面最后3行的提示符为啥不是“mysql>而是>”了)之后,我把两个cmd窗口都关闭了,又开了一个cmd,运行net start mysql5_pn,想重新启动服务,结果系统提示启动失败,我到控制面板的“服务”里面启动mysql5_pn,仍然提示失败,但是我通过phpmyadmin是可以通过用户名root和密码my23456登录的,表面上看root密码已经修改成功了。但是在phpmyadmin里很多操作都不能进行,比如要修改root密码,则提示在--skip-grant状态下不能修改面膜。但是为什么我之前停止了mysql服务,在我想重新启动失败的前提下,这里还能使用数据库呢?我看了一下window的系统进程,发现mysqld-nt这个进程,这是在修改root密码前启动的,看来是他在以--skip-grant模式启动着数据库服务,这种模式还是比较危险的,所以我杀掉这个进程,再次运行net start mysql5_pn ,提示启动成功。但是这下子那个my23456的密码又登录不了数据库了。无论是在phpmyadmin还是在mysql的控制台都登陆不了。这是怎么回事?我那里操作有问题吗?看网上很多人都似乎解决了问题,为什么我这里表面上看修改成功了,但是真正再次启动服务的时候密码 又不好使了呢?希望得到大家的帮助,急用,先谢谢谢谢!!!
解决方案 »
- 如果硬盘速度跟内存速度一样快,IT业会有什么技术被淘汰
- 如何检查某列是否为空啊?
- mysql如何计算日期加减天数,再得到日期,急!!!
- 请大家不要把手册上的文章原封不动的发过来。
- 诚邀高手助拳:MySQL集群
- 关于LEFT JOIN的查询顺序
- 新手问题,vc 编译Mysql的例子程序时提示,提示Cannot open include file: 'my_alloc.h',在线等,立刻结贴
- MySQL用户加密问题
- 高分(我所有的分拉):求一个用OOP编写的PHP+MySQL应用的完整例子
- mysql8.0 字符集用utf8还是用utf8mb4
- 多表查询去除重复值
- MYSQL,有检查点这个概念吗?象oracle或informix,检查点写入磁盘等
再执行下述SQL语句,分号作为语句结束符
>update user set password=password("my23456") where user="root";
>flush privileges;
>quit
select * from user where user="root"; 应该是多条记录,你不应该全部修改。
当你用phpmyadmin登录后,show grants 一下,应该不是以root@localhost 账号。
yesuse mysql;
update user set password=password("my23456") where user="root";
...
另外,你说的“应该是多条记录,你不应该全部修改。”如果是真的,那么我该如何解决呢?
谢谢回帖的2位!