mysql 8 修改root密码忘记_忘记mysql8或者mariadb5及以上 的root密码如何更改
實驗環境
操作系統:lsb_release -a
No LSB modules are available.
Distributor ID:Ubuntu
Description:Ubuntu 20.04.1 LTS
Release:20.04
Codename:focal
mysql數據庫版本:mysql基本信息
具體步驟
1. 停止mysql (sudo?service mysqld stop 或者?kill -TERM mysqld)
2. 使用參數 --skip-grant-tables啟動mysql (? /usr/bin/mysqld_safe --skip-grant-tables &)
3. 需要看root用戶使用的身份驗證插件(這個步驟可以跳過)select host,user,plugin from mysql.user;
MariaDB [mysql]> select host,user,plugin from mysql.user ;
+-----------+-------------+-----------------------+
| Host? ? ? | User? ? ? ? | plugin? ? ? ? ? ? ? ? |
+-----------+-------------+-----------------------+
| localhost | mariadb.sys | mysql_native_password |
| localhost | root? ? ? ? | mysql_native_password |
| %? ? ? ? ?| root? ? ? ? | mysql_native_password |
+-----------+-------------+-----------------------+
3 rows in set (0.002 sec)
4. 使用修改root密碼的命令,如果你用的是高版本的mysql,使用update去設置mysql.user 的表則會遇到Column 'Password' is not updatable,應該使用下面修改root密碼的命令MariaDB [mysql]> set password for 'root'@'localhost'=password('123456');
Query OK, 0 rows affected (0.002 sec)
5.??如果遇到下面提示ERROR 1290 (HY000),則使用下面命令,先將數據庫設置為可寫,然后再設置為只讀ERROR 1290 (HY000): The MariaDB server is running with the --skip-grant-tables option so it cannot execute this statement
set global read_only=1;
FLUSH PRIVILEGES;
set password for 'root'@'localhost'=password('123456');
FLUSH PRIVILEGES;
set global read_only=0;
FLUSH PRIVILEGES;
引用
[MySQL 連接方式](https://blog.csdn.net/qinglingls/article/details/96864122)
[mysql8 參考手冊-- ALTER USER語句](http://www.1024sky.cn/blog/article/1214)
總結
以上是生活随笔為你收集整理的mysql 8 修改root密码忘记_忘记mysql8或者mariadb5及以上 的root密码如何更改的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: sarscape 将dem文件转化成st
- 下一篇: 技术面试问项目难题如何解决的_技术创新