Mysql密码忘记了?好吧,下面我来说下mysql修改密码的方法,教你两招重置root密码!
LINUX
1.使用mysqladmin修改mysql密码
[root@localhost]#mysqladmin -u root -p password newpass
Enter password: oldpass
-----------------------------------------
2.重置root密码
[root@localhost]#/usr/bin/mysqld_safe --skip-grant-tables & 重启mysql服务,这时的mysql不需要密码即可登录数据库
[root@localhost]#mysql -u root
mysql>use mysql;
mysql>update user set password=password('newpass') where user='root';
mysql>flush privileges;
3.更改/etc/my.cnf 在[mysqld]配置段添加 skip-grant-tables
重新启动mysql
WINDOWNS
1.使用mysqladmin修改mysql密码
C:\>mysqladmin -u root -p password newpass
Enter password: oldpass
当然用此命令的前提是你把mysql加入了环境变量,如果没有加入环境变量的话那只能在命令行下cd到mysqladmin所在的目录下与此那个次命令了!
-----------------------------------------
2.重置root密码
方法一:
在my.ini的[mysqld]字段加入:
skip-grant-tables
重启mysql服务,这时的mysql不需要密码即可登录数据库
然后进入mysql
mysql>use mysql;
mysql>update user set password=password('新密码') where user='root';
mysql>flush privileges;
运行之后最后去掉my.ini中的skip-grant-tables,重启mysqld即可。
修改mysql密码方法二:
不使用修改my.ini重启服务的方法,通过非服务方式加skip-grant-tables运行mysql来修改mysql密码
停止mysql服务
打开命令行窗口,在bin目录下使用mysqld-nt.exe启动,即在命令行窗口执行: mysqld-nt --skip-grant-tables
然后另外打开一个命令行窗口,登录mysql,此时无需输入mysql密码即可进入。
按以上方法修改好密码后,关闭命令行运行mysql的那个窗口,此时即关闭了mysql,如果发现mysql仍在运行的话可以结束掉对应进程来关闭。
启动mysql服务
方法三
找到一个和你安装相同版本的mysql机子(当然,root帐号和密码你肯定要知道),找到安装目录里的data文件夹
(如:C:\Program Files\MySQL\MySQL Server 5.0\,data文件夹下的mysql是系统数据库,
帐号信息都存放在mysql文件夹里的user表,也就是这三个文件user.MYD,user.frm,user.MYI。),
然后到你自己的机子上面停止mysql服务,把上面三个文件覆盖掉你机子上面的这三个文件,启动mysql服务。
在开始菜单里运行cmd,进入到mysql安装目录里的bin文件夹(如:C:\Program Files\MySQL\MySQL Server 5.0\bin),
然后通过mysql -u root -p命令进入,运行user mysql进入mysql数据库,
最后再用命令:update user set User='yeer',Password=password('123456')更新你要的用户名和密码。
最后重起一下mysql服务就搞定了
###############################好东西#######################################