[MySQL]如何修改mysql root密码

如何修改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 [email protected]"%" =
PASSWORD(‘biscuit‘);
你也必须使用PASSWORD()函数,
但是不需要使用FLUSH PRIVILEGES。

方法7
使用GRANT ... IDENTIFIED BY语句
mysql> GRANT USAGE ON *.* TO
[email protected]"%" IDENTIFIED BY ‘biscuit‘;
这里PASSWORD()函数是不必要的,也不需要使用FLUSH
PRIVILEGES。

注:mysql 新设置用户或更改密码后需用flush
privileges刷新MySQL的系统权限相关表,
否则会出现拒绝访问,还有一种方法,就是重新启动mysql服务器,来使新设置生效。

[MySQL]如何修改mysql root密码,布布扣,bubuko.com

时间: 2024-12-11 13:35:26

[MySQL]如何修改mysql root密码的相关文章

Mac 修改终端root密码

解决问题: Mac修改终端root密码? 前提: 知道账户密码. 解决过程: 1. 以普通用户名登录系统,并打开terminal终端,输入: sudo bash Password:****(当前用户的密码) 成功后进入bash-3.2#的命令模式. 2. 在bash-3.2#命令模式下,输入: sudo passwd root New password:*** Retype new password:*** 修改密码成功! 原文地址:https://www.cnblogs.com/mungerz

MySQL数据库自动生成并修改随机root密码的脚本

在MySQL数据库部署的过程中,在安装了MySQL软件,并配置了my.cnf配置文件后,需要创建MySQL实例. MySQL 5.5实例创建完成了,默认会有登陆用户名和密码为空的用户,一般需要修改root用户密码,并删除无效用户,然后才能提供给应用使用. 这个过程可以通过shell脚本自动完成实例创建,启动,自动生成密码,修改root用户密码,删除无效用户. shell脚本有多种编写方法,我编写的shell脚本如下: #!/bin/bash # this scripts used to init

使用C#修改MySQL数据库用户的root密码

前言 利用C#调用CMD窗口实现修改数据库密码 实现思路: 先通过odbc连接数据库,获取到Mysql的根目录.根据根目录的路径调用CMD,连接MySQL,实现修改MySQL数据库密码. 1 private void modifyPath_Click(object sender, EventArgs e) 2 { 3 bool isD = true; 4 string MysqlPath = string.Empty; 5 try 6 { 7 //获取MySQL安装路径 8 DataTable

MySQL修改数据库root密码方法

方法1: 用SET PASSWORD命令 mysql -u root mysql> SET PASSWORD FOR 'root'@'localhost' = PASSWORD('newpass'); 方法2:用mysqladmin mysqladmin -u root password "newpass" 如果root已经设置过密码,采用如下方法 mysqladmin -u root password oldpass "newpass" 方法3: 用UPDA

Mysql修改设置root密码的命令及方法

方法一:使用SQL语句命令UPDATE 需用到Mysql自带的加密函数PASSWORD(string),该函数对一个明文密码进行加密,但不能解密.专门用于mysql.user(用户权限表)中设置密码,命令如下: mysql> use mysql Database changed mysql> update user set password=password('123456') where user='root'; Query OK, 1 row affected (0.00 sec) Row

Mysql数据库中设置root密码的命令及方法

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

mysql 数据库修改用户名和密码

因为经常修改数据库密码,也找到了几种修改数据库密码的方式,在这里给大家介绍下供大家参考通过navicat 管理数据库客户端来修改数据库密码: 选择数据库 --- 点击导航条的用户  --- 编辑用户 --- 即可修改数据库. 命令行修改数据库密码: 1.打开mysql.exe和mysqld.exe所在的文件夹,复制路径地址 2.打开cmd命令提示符,进入上一步mysql.exe所在的文件夹. 3.输入命令  mysqld --skip-grant-tables  回车,此时就跳过了mysql的用

mysql 5.7 设置root密码方法

操作系统: [[email protected] ~]# cat /etc/redhat-release CentOS Linux release 7.1.1503 mysql 版本5.7.9 mysql> select version() -> ; +-----------+ | version() | +-----------+ | 5.7.9 | +-----------+ 1 row in set (0.00 sec) 安装mysql的yum repo 源: rpm -ivh http

mysql的设置更改root密码、连接、常用命令

13.1 设置更改root密码 更改环境变量PATH ,增加mysql绝对路径首次直接使用mysql会提示'该命令不存在',原因是还没有将该命令加入环境变量,如果要使用该命令,需要使用其绝对路径:/usr/local/mysql/bin/mysql,为了方便,先将其加入系统环境变量: [[email protected] ~]# export PATH=$PATH:/usr/local/mysql/bin/ mysql命令路径暂时加入环境变量,系统重启后该变量会失效,若要永久生效,需要将其加入环