mysql修改数据库root密码

mysql修改数据库root密码:

方法1: 用SET PASSWORD命令

首先登录MySQL。
格式:mysql> set password for 用户名@localhost = password(‘新密码’);
例子:

MariaDB [(none)]> set password for root@localhost = password('123');
Query OK, 0 rows affected (0.00 sec)

方法2:用mysqladmin

格式:mysqladmin -u用户名 -p旧密码 password 新密码
例子:

[root-mysql-]# mysqladmin -uroot -p456 password 123

方法3:用UPDATE直接编辑user表

首先登录MySQL。

MariaDB [(none)]> use mysql;
MariaDB [mysql]> update user set password=password('123123') where user='root' and host='localhost';
MariaDB [mysql]> flush privileges;   # 刷新MySQL,使更改马上生效

方法4:在忘记root密码的时候,登录时跳过数据库权限验证,修改user表。

CentOS7忘记mysql的root密码_处理方法.
登录时跳过数据库权限验证,修改user表。

1、打开mysql的配置文件:
vi /etc/my.cnf
在配置文件中[mysqld]下添加一行:skip-grant-tables 使其登录时跳过权限检查 wq 保存退出,如下:

[root-mysql-]# vi /etc/my.cnf

[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
...
skip-grant-tables
#跳过数据库权限验证

2、重启mysql

[root-mysql-]# service mysqld stop     
[root-mysql-]# service mysqld start    
#或者
systemctl restart  mariadb

3、用户无密码登录模式

[root-mysql-]# mysql -uroot -p     
#回车   会提示输入密码,这里不用输入,密码为空,直接回车。

4、进入mysql库

#将数据库切换至mysql库
MariaDB [mysql]> use mysql;

5、重新修改root密码
MariaDB [mysql]> UPDATE user SET password=PASSWORD(‘newpasswd’)WHERE user=‘root’;
实例:

#修改密码
MariaDB [mysql]> UPDATE user SET password=PASSWORD('newpasswd')WHERE user='root';
#查看user表字段
MariaDB [mysql]> select host,user,password from user;

6、执行 flush privileges;

#刷新MySQL权限相关的表
MariaDB [mysql]> flush privileges;

7、退出数据库

MariaDB [mysql]> exit;

8、重新进入my.cnf配置文件,把之前添加的skip-grant-tables删除并保持

9、再次重启mysql数据库

systemctl restart  mariadb
#或者
service mysqld stop/start

10、再次进入数据库

mysql -uroot -q     回车,输入新密码,正常登陆数据库。

修改密码命令测试展示(参考):

UPDATE user SET password=PASSWORD(‘qwe’)WHERE user=‘root’;

#进入mysql库
MariaDB [(none)]> use mysql
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A

Database changed
MariaDB [mysql]>
#修改user表root用户密码
#UPDATE user SET password=PASSWORD('qwe')WHERE user='root'; 修改生效,密码qwe
MariaDB [mysql]> UPDATE user SET password=PASSWORD('qwe')WHERE user='root';
Query OK, 3 rows affected (0.00 sec)
Rows matched: 3  Changed: 3  Warnings: 0
#显示user表
MariaDB [mysql]> select host,user,password from user;
+-----------+------+-------------------------------------------+
| host      | user | password                                  |
+-----------+------+-------------------------------------------+
| localhost | root | *BBAE266E0E1E92B3A857E20260D41B7BC259297F |
| 127.0.0.1 | root | *BBAE266E0E1E92B3A857E20260D41B7BC259297F |
| ::1       | root | *BBAE266E0E1E92B3A857E20260D41B7BC259297F |
+-----------+------+-------------------------------------------+
3 rows in set (0.00 sec)
#刷新MySQL权限相关的表
MariaDB [mysql]> flush privileges;
Query OK, 0 rows affected (0.00 sec)
#退出mysql
MariaDB [mysql]> exit
Bye
#登录测试
#qwe 密码生效
[root@docker-server2 bin]# mysql -uroot -pqwe
Welcome to the MariaDB monitor.  Commands end with ; or \g.
Your MariaDB connection id is 4
Server version: 5.5.68-MariaDB MariaDB Server

Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

MariaDB [(none)]> 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值