« 上一篇下一篇 »

Mysql数据库中设置root密码以及修改root密码的常用方法

  大家都知道平常PHP连接 Mysql都是通过root用户名和密码连接,默认情况下在Mysql安装时root初始密码为空,在安装使用PHP开源系统时,都需要填写连接Mysql数据库的用户名和密码,此时当你忘记了Mysql的root密码或没有设置Mysql的root密码时,就必须要修改或设置Mysql的root密码,这个问题对于PHP入门学习者来说也是个头大的问题,其实修改Mysql的root密码有很多方法,可以利用Mysql工具,也可以使用Mysql更改root 密码的命令来实现。
准备工作

在使用Mysql相关工具或Mysql命令来修改root密码之前请确保你已启动了Mysql服务,如果没有启动Mysql服务,请在DOS模式下输入

   
net start mysql

 

使用phpmyadmin来更改Mysql的root密码非常方便,安装配置好phpmyadmin后,首先登陆管理界面,点击右侧修改密码链接,输入你要修改的Mysql的root新密码,最后点击执行即可,

使用phpmyadmin修改mysql的root密码

  这里需要注意phpmyadmin默认是不允许Mysql的root默认密码为空登陆的,如果不小心在修改密码界面选择了空密码,你需要修改 phpmyadmin的配置文件以便重新登录phpmyadmin来实现更改mysql root密码的功能。具体怎么修改下次我会说明。

使用Mysql服务配置工具修改root密码

  Mysql5安装过程中有服务配置工具可以用来设置和修改root密码,即Mysql Server Instance Configuration,具体配置过程请参考PHP环境搭建:Windows 7下安装配置PHP+Apache+Mysql环境教程一文。

  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密码

   
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(用户权限表)中设置密码的。
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密码。
 

补充知识:

以windows为例为大家详细介绍下MySQL修改root密码的4种方法,大家可以可以根据的自己的情况自由选择,希望对大家有所帮助

方法1: 用SET PASSWORD命令
首先登录MySQL。
格式:mysql> set password for 用户名@localhost = password('新密码');
例子:mysql> set password for root@localhost = password('123');

方法2:用mysqladmin
格式:mysqladmin -u用户名 -p旧密码 password 新密码
例子:mysqladmin -uroot -p123456 password 123

方法3:用UPDATE直接编辑user表
首先登录MySQL。
mysql> use mysql;
mysql> update user set password=password('123') where user='root' and host='localhost';
mysql> flush privileges;

方法4:在忘记root密码的时候,可以这样
以windows为例:
1. 关闭正在运行的MySQL服务。
2. 打开DOS窗口,转到mysql\bin目录。
3. 输入mysqld --skip-grant-tables 回车。--skip-grant-tables 的意思是启动MySQL服务的时候跳过权限表认证。
4. 再开一个DOS窗口(因为刚才那个DOS窗口已经不能动了),转到mysql\bin目录。
5. 输入mysql回车,如果成功,将出现MySQL提示符 >。
6. 连接权限数据库: use mysql; 。
6. 改密码:update user set password=password("123") where user="root";(别忘了最后加分号) 。
7. 刷新权限(必须步骤):flush privileges; 。
8. 退出 quit。
9. 注销系统,再进入,使用用户名root和刚才设置的新密码123登录。

 

以上就是关于root密码设置及修改的一些知识,希望对大家有所帮助,更多请关注数据吧资讯。