在windows下:
1.打开命令行(DOS)窗口,停止mysql服务: net stop mysql
2.在DOS下面进入mysql的安装路径下的 bin目录,如 D:\mysql\bin
3. 输入并执行命令: mysqld -nt --skip-grant-tables(注意mysqld和-nt之间有个空格)
(次命令执行后该窗口就停住了)
4.另外打开一个命令行窗口,执行mysql
>use mysql
>update user set password=password("new_pass") where user="root";
>flush privileges;
>exit
转自:http://czy4411741.blog.163.com/blog/static/3420312720081141524734/
在linux下:
LINUX
1>修改MySQL的登录设置:
1.# vi /etc/my.cnf
在[MySQLd]的段中加上一句:skip-grant-tables
例如:
Java代码
1.[MySQLd] 2.datadir=/var/lib/MySQL 3.socket=/var/lib/MySQL/MySQL.sock 4.skip-name-resolve 5.skip-grant-tables 6.[MySQLd] 7.datadir=/var/lib/MySQL 8.socket=/var/lib/MySQL/MySQL.sock 9.skip-name-resolve 10.skip-grant-tables
保存并且退出vi。
2>重新启动MySQLd
1.# /etc/init.d/MySQLd restart 2.Stopping MySQL: [ OK ] 3.Starting MySQL: [ OK ]
3>登录并修改MySQLroot密码
Xml代码
1.# /usr/bin/MySQL 2.. 3.MySQL> USE MySQL ; 4.MySQL> UPDATE user SET Password = password('new-password') WHERE User = 'root' ; 5.MySQL> flush privileges ; 6.MySQL> quit 7.# /usr/bin/MySQL 8.. 9.MySQL> USE MySQL ; 10.MySQL> UPDATE user SET Password = password('new-password') WHERE User = 'root' ; 11.MySQL> flush privileges ; 12.MySQL> quit 13.
4>将MySQL的登录设置修改回来
1.# vi /etc/my.cnf
将刚才在[MySQLd]的段中加上的skip-grant-tables删除
保存并且退出vi。
5>重新启动MySQLd
1.# /etc/init.d/MySQLd restart 2.Stopping MySQL: [ OK ] 3.Starting MySQL: [ OK ]
转自:http://database.51cto.com/art/201006/203988.htm