當前位置:首頁 >  站長 >  數據庫 >  正文

MySQL修改賬號密碼方法大全 小結

 2020-12-23 16:52  來源: 腳本之家   我來投稿 撤稿糾錯

  域名預訂/競價,好“米”不錯過

這篇文章主要介紹了MySQL修改賬號密碼方法大全(小結),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧

前言:

在日常使用數據庫的過程中,難免會遇到需要修改賬號密碼的情景,比如密碼太簡單需要修改、密碼過期需要修改、忘記密碼需要修改等。本篇文章將會介紹需要修改密碼的場景及修改密碼的幾種方式。

1.忘記 root 密碼

忘記 root 密碼的場景還是比較常見的,特別是自己搭的測試環(huán)境經過好久沒用過時,很容易記不得當時設置的密碼。這個時候一般常用的方法是跳過權限驗證,然后更改 root 密碼,之后再啟用權限驗證。以 MySQL 5.7 版本為例簡單講下主要過程:

首先修改配置文件,在[mysqld]部分加上一句:skip-grant-tables ,加上此參數的目的是跳過權限驗證。然后重啟數據庫,數據庫再次啟動后,我們就可以不用密碼直接登錄數據庫修改密碼了。

# skip-grant-tables 模式下修改root密碼
[root@host ~]# mysql
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 16
Server version: 5.7.23-log MySQL Community Server (GPL)

Copyright (c) 2000, 2018, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

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

mysql> update mysql.user set authentication_string = password ('xxxxxx') where user = 'root' and host = 'localhost';
Query OK, 0 rows affected, 1 warning (0.00 sec)
Rows matched: 1 Changed: 0 Warnings: 1

mysql> flush privileges;
Query OK, 0 rows affected (0.01 sec)

修改完 root 密碼后,再次去除 skip-grant-tables 參數,然后重啟下數據庫即可。

2.幾種修改密碼的方法

除去忘記密碼,可能還有其他情景需要修改密碼,這時候就可以采取普通方式修改密碼了。還是以 MySQL 5.7 版本為例,介紹幾種常用的修改密碼的方法。

使用 alter user 修改

比如如果想更改 testuser 賬號的密碼,我們可以使用 root 賬號登錄,然后執(zhí)行 alter user 命令更改 testuser 賬號的密碼。

mysql> alter user 'testuser'@'%' identified by 'Password1';
Query OK, 0 rows affected (0.01 sec)

mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)

使用 SET PASSWORD 命令

使用 SET PASSWORD 修改密碼命令格式為 SET PASSWORD FOR 'username'@'host' = PASSWORD('newpass'); 同樣是使用 root 賬號可修改其他賬號的密碼。

mysql> SET PASSWORD FOR 'testuser'@'%' = PASSWORD('Password2');
Query OK, 0 rows affected, 1 warning (0.00 sec)

mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)

使用 mysqladmin 修改密碼

使用 mysqladmin 命令修改賬號密碼格式為 mysqladmin -u用戶名 -p舊密碼 password 新密碼

[root@host ~]# mysqladmin -utestuser -pPassword2 password Password3
mysqladmin: [Warning] Using a password on the command line interface can be insecure.
Warning: Since password will be sent to server in plain text, use ssl connection to ensure password safety.
[root@host ~]# mysql -utestuser -pPassword3
mysql: [Warning] Using a password on the command line interface can be insecure.
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 2388
Server version: 5.7.23-log MySQL Community Server (GPL)

Copyright (c) 2000, 2018, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

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

mysql>

直接 update user表

其實 MySQL 所以的賬號信息都存儲在 mysql.user 表里面,我們也可以直接通過 update user 表來修改密碼。

# 5.7及之后版本
mysql> update mysql.user set authentication_string = password ('Password4') where user = 'testuser' and host = '%';
Query OK, 1 row affected, 1 warning (0.06 sec)
Rows matched: 1 Changed: 1 Warnings: 1

mysql> flush privileges;
Query OK, 0 rows affected (0.01 sec)

# 5.6及之前版本
update mysql.user set password=password('新密碼') where user='用戶名' and host='host';

3.設置 login-path 本地快捷登陸

為了防止密碼暴露及忘記密碼,我們還可以設置 login-path 來實現在本地不輸密碼快捷登錄。

login-path 是 MySQL 5.6 開始支持的新特性。通過借助 mysql_config_editor 工具將登陸 MySQL 服務的認證信息加密保存在 .mylogin.cnf 文件(默認位于用戶主目錄)。MySQL 客戶端工具可通過讀取該加密文件連接 MySQL ,實現快捷登錄。

假設我們想配置 root 賬號在本地快捷登錄,可以這么做:

# 執(zhí)行回車后需要輸入一次root密碼
[root@host ~]# mysql_config_editor set --login-path=root -uroot -hlocalhost -p -P3306
Enter password:

# 配置完成后可以使用login-path登錄
[root@host ~]# mysql --login-path=root
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 2919
Server version: 5.7.23-log MySQL Community Server (GPL)

Copyright (c) 2000, 2018, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

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

mysql>

總結:

本篇文章主要介紹了修改數據庫賬號密碼的幾種方法,基本涵蓋了所有的場景。這里也提醒下各位,數據庫賬號最好限制ip段登錄,密碼盡量復雜些,最好能夠定期修改,特別是重要的環(huán)境不能有半點馬虎。年底了,安全才是王道。

到此這篇關于MySQL修改賬號密碼方法大全(小結)的文章就介紹到這了,更多相關MySQL修改賬號密碼內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

來源:腳本之家

鏈接:https://www.jb51.net/article/202411.htm

申請創(chuàng)業(yè)報道,分享創(chuàng)業(yè)好點子。點擊此處,共同探討創(chuàng)業(yè)新機遇!

相關標簽
mysql

相關文章

  • MySQL5.7 集群配置的步驟

    這篇文章主要介紹了MySQL5.7集群配置的步驟,幫助大家更好的理解和學習使用MySQL,感興趣的朋友可以了解下

    標簽:
    mysql
  • MySQL中觸發(fā)器和游標的介紹與使用

    這篇文章主要給大家介紹了關于MySQL中觸發(fā)器和游標的相關資料,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧

    標簽:
    mysql
  • MySQL中exists、in及any的基本用法

    這篇文章主要給大家介紹了關于MySQL中exists、in及any的基本用法,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧

    標簽:
    mysql
  • MySQL正確修改最大連接數的3種方案

    這篇文章主要給大家介紹了關于MySQL正確修改最大連接數的3種方案,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧

    標簽:
    mysql
  • 教你怎么在Windows系統(tǒng)上手動搭建MySql數據庫

    1.已經購買好的騰訊云輕量應用服務器。2.作者本次演示使用的系統(tǒng)是WindowsServer2019,其他windows版本也可以,操作流程大同小異。3.使用Windows遠程桌面連接騰訊云輕量服務器。

熱門排行

信息推薦