如何修改mysql root密码
忘记MySQL ROOT密码是在MySQ使用中很常见的问题,可是有很多朋友并不会重置ROOT密码,那叫苦啊,特写此文章与大家交流:
1、编辑MySQL的配置文件:my.ini
一般在MySQL安装目录下有my.ini即MySQL的配置文件。
在此配置文件的最后添加如下一行:
skip-grant-tables
保存退出编辑。
2、然后重启MySQL服务
在命令行下执行:
net stop MySQL
net start MySQL
3、设置新的ROOT密码
然后再在命令行下执行:
MySQL -u root -p MySQL或mysql -u root -p
直接回车无需密码即可进入数据库了。
此时,在命令行下执行 use mysql;
现在我们执行如下语句把root密码更新为:
update user set password=PASSWORD("root") where user='root';
(注意:此时不用使用mysqladmin -u root -p password '你的新密码'这条命令修改密码,因为'skip-grant-tables'配置,
不信的话,你可以试用一下,它肯定会报如下所示的错误:
F:\Documents and Settings\long>mysqladmin -u root -p password 'root'
Enter password:
Warning: single quotes were not trimmed from the password by your command
line client, as you might have expected.
mysqladmin:
You cannot use 'password' command as mysqld runs
with grant tables disabled (was started with --skip-grant-tables).
Use: "mysqladmin flush-privileges password '*'" instead)
exit 退出MySQL。
4、还原配置文件并重启服务
然后修改MySQL配置文件把刚才添加的那一行'skip-grant-tables'删除。
再次重起MySQL服务,密码修改完毕。
用新密码root试一下吧,又能登入重新进入mysql了?
附mysql修改密码的一些方法:
1. 用MYSQL的grant语句,例如
mysql -h hostname –u root 命令登录到mysqld server 用grant 命令改变口令:
mysql -h 192.168.1.101 -u root
上边的192.168.1.101 是偶的mysqld 运行机器,你换成自己的,这样登录上去,就可以修改密码了,
其实没必要这么麻烦,直接mysql -u root就可以了。
GRANT ALL ON *.* TO 'root'@'localhost' IDENTIFIED BY 'root' WITH GRANT OPTION
2. mysqladmin -u 用户名 -p 旧密码 password 新密码
例1:给root 加个密码root。首先进入cmd中,然后键入
以下命令,至于在CMD下能否使用mysqladmin,
就要看你的Windows环境变量PATH中是否添加“E:\Program Files\MySQL\MySQL Server 5.1\bin;”(请改为你自己的安装路径)了。)
mysqladmin -u root password root
注:因为开始时root 没有密码,所以-p 旧密码一项就可以省略了。
例2:再将root 的密码改为admin。
mysqladmin –u root -proot password admin(注意-p 不要和后面的密码分
开写,要写在一起,不然会出错,错误如下所示:
F:\Documents and Settings\long>mysqladmin -u root -p root password admin
Enter password: ****
mysqladmin: Unknown command: 'root')
当然你也可以这样写:mysqladmin –u root -p password admin回车,
然后再输入你的旧密码,这样也是完全也可以的,看你的爱好了.
例3:再将root用户的密码去掉.
F:\Documents and Settings\long>mysqladmin -u root -p password ;
Enter password: root
此时,root用户又没有密码了.可以通过下面的方法设置:
F:\Documents and Settings\long>mysql -u root
mysql>set password for 'root'@'localhost'=password('root');(语法:SET PASSWORD FOR '用户名'@'主机' = PASSWORD('密码'))
mysql>set password for 'root'@'%'=password('root');
//本条可选,这是在配置mysql数据库,如果你选择了允许root通过远程登录进来时,你在mysql数据库下的user表中,
use mysql;
select * from user;可以看到有两条记录,如果你没有配置这一项的话,只会第一条记录!
Host User Password
'localhost', 'root', '*9C9F4927129ECC3209D8550DC8B67156FDBF9418', ...
'%', 'root', '*81F5E21E35407D884A6CD4A731AEBFB6AF209E1B', ...
通过以上设置,root的密码将变为root这样就完成了根用户root密码的设置工作。
3. use mysql;
update user set password =password('yourpass') where user='root'
(注:下面的这些方法我本人没有试过,不知对不对,我只是转载了一下:)
下面的方法都在mysql提示符下使用,且必须有mysql的root权限:
方法4
mysql> INSERT INTO mysql.user (Host,User,Password)
VALUES('%','jeffrey',PASSWORD('biscuit'));
mysql> FLUSH PRIVILEGES
确切地说这是在增加一个用户,用户名为jeffrey,密码为biscuit。
在《mysql中文参考手册》里有这个例子,所以我也就写出来了。
注意要使用PASSWORD函数,然后还要使用FLUSH PRIVILEGES。
方法5
和方法三一样,只是使用了REPLACE语句
mysql> REPLACE INTO mysql.user (Host,User,Password)
VALUES('%','jeffrey',PASSWORD('biscuit'));
mysql> FLUSH PRIVILEGES
方法6
使用SET PASSWORD语句,
mysql> SET PASSWORD FOR jeffrey@"%" = PASSWORD('biscuit');
你也必须使用PASSWORD()函数,
但是不需要使用FLUSH PRIVILEGES。
方法7
使用GRANT ... IDENTIFIED BY语句
mysql> GRANT USAGE ON *.* TO jeffrey@"%" IDENTIFIED BY 'biscuit';
这里PASSWORD()函数是不必要的,也不需要使用FLUSH PRIVILEGES。
注:mysql 新设置用户或更改密码后需用flush privileges刷新MySQL的系统权限相关表,
否则会出现拒绝访问,还有一种方法,就是重新启动mysql服务器,来使新设置生效。
分享到:
相关推荐
### 忘记MySQL root密码恢复方法 在日常的数据库管理工作中,可能会遇到忘记MySQL root用户密码的情况。这对于数据库管理员来说是个不小的挑战,因为root权限对于进行数据库管理和维护至关重要。本文将详细介绍如何...
在数据库管理过程中,有时候我们需要重置MySQL的root用户密码,尤其是在忘记了当前密码或为了安全考虑需要更改密码时。本文将详细介绍如何通过命令行方式安全有效地修改MySQL的root用户密码。 #### 准备工作 在...
MySQL中root密码忘记的解决办法 当我们忘记了mysql中root密码时,不能正常登陆mysql数据库了。这时候,我们可以通过修改mysql的配置文件来跳过密码登陆。具体步骤如下: 1. 首先,打开mysql的配置文件`/etc/my.cnf...
在使用Windows操作系统时,如果忘记了MySQL数据库中root用户的密码,用户可能会陷入无法登录数据库的困境。这种情况对于数据库管理员来说尤其麻烦,因为没有密码意味着无法执行数据库管理任务,比如更新、查询等。...
MySQL 是一个广泛使用的关系数据库管理系统,然而,当我们忘记了 MySQL 的 root 密码时,会导致无法访问数据库,这将对我们的工作产生严重的影响。幸运的是,我们可以通过一些方法来恢复 root 密码,本文将介绍在 ...
MySQL 中修改 root 密码的四种方法 MySQL 是一种流行的关系数据库管理系统,广泛应用于各个领域。在实际应用中,MySQL 的 root 密码是非常重要的,因为它是 MySQL 的最高权限账户。如果我们忘记了 root 密码,将会...
在解决 MySQL 忘记 Root 密码的问题时,可能会出现以下错误提示: ``` ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2) ``` 这个错误提示表示 MySQL ...
在实际工作中,忘记了mysql的ROOT 密码,可就糟糕了,本教程分步骤教会你如何重置ROOT密码,绝对能用!放心下载,一看就会!!
本文介绍了MySQL修改root密码的多种方法,忘记密码时,管理员可以在服务器上修改ROOT密码,防止忘记密码导致数据无法导出或使用工具连接数据库。
新装MySQL不知道密码,忘记MySQL密码,都可以安装该方法改过来,在Ubuntu和CentOS上用过多次。
在使用 MySQL 数据库时,有时可能会遇到忘记数据库管理员(root)密码的情况,这会给数据库操作带来不便。对于在 Windows 操作系统上运行的 MySQL 8.0 版本,重置密码的过程是相对直接且安全的。以下是详细的操作步骤...
修改 Mysql 的 root 用户密码 MySQL 是一个流行的关系数据库管理系统,它的安全性至关重要。修改 Mysql 的 root 用户密码是维护数据库安全的重要步骤。在本文中,我们将详细讲解如何在 Linux、FreeBSD 和 Windows ...
该问题的出现可能是由于用户修改了MYSQL数据库的root密码,但是在连接MYSQL时却出现了“access denied for user 'root'@'localhost'”的错误信息。这种错误的出现可能是由于MYSQL的bin目录没有加入到PATH路径中所...
### MySQL 重装之后忘记Root密码的解决方法 在日常工作中,我们可能会遇到MySQL数据库重装后忘记root用户密码的情况。这种情况虽然让人头疼,但通过本文介绍的方法,我们可以有效地解决问题并恢复正常工作流程。 #...
这个命令会让MySQL服务暂时不加载权限表,从而可以在不知道当前密码的情况下修改ROOT用户的密码。执行该命令后,命令提示符窗口会保持开启状态,直到MySQL服务被关闭。 3. **连接到MySQL数据库** 在另一个命令...
在使用MySQL数据库时,有时可能会遇到忘记root用户密码的情况,这会阻碍我们对数据库的正常管理。对于Windows 7环境下安装的MySQL 5.6版本,解决这个问题有明确的步骤。以下是详细的重置root密码的方法: 1. **停止...
### Windows下忘记MySQL超级管理员root密码的解决办法 在日常工作中,我们可能会遇到忘记MySQL超级管理员root密码的情况,尤其是在Windows操作系统环境下。本文将详细介绍一种在Windows XP/2000/2003/NT系统中找回...
忘记MYSQL的情况下,重置root密码