专注系统运维、网络架构,研究技术解决方案,记录我的思想轨迹、工作学习、生活和关注的领域
分类: Mysql/postgreSQL
2011-08-12 11:00:09
准备工作
在使用Mysql相关工具或Mysql命令来修改root密码之前请确保你已启动了Mysql服务,如果没有启动Mysql服务,请在DOS模式下输入
net start mysql |
即可。
Mysql修改root密码的常用工具
使用phpmyadmin来更改root密码
使用phpmyadmin来更改Mysql的root密码非常方便,安装配置好phpmyadmin后,首先登陆管理界面,点击右侧修改密码链接,输入你要修改的Mysql的root新密码,最后点击执行即可,如图:
这里需要注意phpmyadmin默认是不允许Mysql的root默认密码为空登陆的,如果不小心在修改密码界面选择了空密码,你需要修改 phpmyadmin的配置文件以便重新登录phpmyadmin来实现更改mysql root密码的功能。具体怎么修改下次我会说明。
使用Mysql服务配置工具修改root密码
Mysql5安装过程中有服务配置工具可以用来设置和修改root密码,即Mysql Server Instance Configuration,具体配置过程请参考一文。
Mysql修改root密码命令说明
除了使用phpmyadmin、Mysql服务配置工具来修改root密码之外,使用Mysql修改密码命令也可以更改root的密码。
进入Mysql数据库命令行方式有两种方式:
方式一:在Mysql开始菜单里包含Mysql命令行客户端,只要点击输入root的密码即可进入。
方式二:在DOS模式下(CMD模式)定位到Mysql安装目录下在子目录bin,调用mysql.exe进入,即
C:\Program Files\MySQL\MySQL Server 5.1\bin>mysql -u root -p Enter password: ****** |
使用mysqladmin.exe命令来修改Mysql的root密码
一般Mysql的root默认密码为空,如果你之前并没有设置过root密码就使用mysqladmin命令,你可以使用如下mysqladmin命令来修改root密码
3 | C:\Program Files\MySQL\MySQL Server 5.1\bin>mysqladmin -u root -p password 123456 Enter password: C:\Program Files\MySQL\MySQL Server 5.1\bin>mysql -u root -p123456 |
如上所述使用mysqladmin第一次修改root的默认密码时,Enter password回车即可,然后使用mysql.exe命令输入root及其密码即可进入Mysql命令行。
如果已设置了Mysql的root密码,现在需要修改并进入Mysql命令行模式,则输入
C:\Program Files\MySQL\MySQL Server 5.1\bin>mysqladmin -u root -p123456 password root C:\Program Files\MySQL\MySQL Server 5.1\bin>mysql -u root -proot |
即可。
知识点:这里使用了到了Mysql自带的两种命令mysqladmin.exe和mysql.exe,mysqladmin修改密码的命令格式如下
mysqladmin -u root -p[oldpass] password newpass |
注意oldpass(老密码)可选,如果root默认密码为空,则不需要输入,如果需要更改老密码,请注意老密码与-p之间不要有空格,否则会报错,另外password和newpass(新密码)之间以空格分隔。
mysql命令与mysqladmin命令格式大同小异,主要用来输入正确的用户名和密码后进入Mysql命令行模式,格式如下
mysql -u root -p[password] |
如果不输入password,回车后会出现Enter password的提示。如果root密码为空,也不需要输入password,出现Enter password提示后回车即可。
使用update命令来修改Mysql的root密码
使用Mysql update命令既可以修改root的老密码,也可设置root的密码为空,如果使用update命令更改root的密码,需要使用Mysql自带的加密 函数PASSWORD(string),该函数对一个明文密码进行加密,是不能解密的,专门用于mysql.user(用户权限表)中设置密码的。
使用update命令修改root密码的方法如下
mysql> use mysql Database changed mysql> update user set password=PASSWORD('123456') where user='root'; Query OK, 0 rows affected (0.00 sec) Rows matched: 1 Changed: 0 Warnings: 0 mysql> flush privileges; Query OK, 0 rows affected (0.00 sec) |
注意在使用update后,需要进一步输入flush privileges;语句,否则修改密码命令操作不会生效,如果需要设置Mysql的root密码为空,则不需要使用PASSWORD函数,直接
update user set password='' where user='root'; |
即可,其他的一样。
使用set password命令修改Mysql的root密码
mysql> use mysql Database changed mysql> set password for 'root'@'localhost'=PASSWORD('leapsoulcn'); |
使用set password命令时也需要使用PASSWORD函数,但不需要flush privileges;即可使修改密码的命令操作生效。使用set password命令修改root密码时请务必操作谨慎,容易出错导致无法登陆,
至此,常用的Mysql修改root密码的方法和命令就介绍完了,应该讲Mysql的root密码是非常重要的,如果忘记了root密码或被盗 用,会产生严重的后果,建议最好重命名root用户,或者在user(用户权限表)中新建一个其他用户,赋予常用的最低权限配置,以保证网站的安全性,也 方便今后重置或者更改root密码。
注:版权所有,转载时请以链接形式注明原始出处及本声明,谢谢。