中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

windows下重置mysql的root密碼方法介紹

發布時間:2020-09-14 15:10:46 來源:腳本之家 閱讀:135 作者:woider 欄目:MySQL數據庫

今天發現 WordPress 連接不上數據庫,登錄 window server 服務器查看,所有服務均運行正常。

使用 root 賬號登錄 mysql 數據庫,結果提示密碼不匹配。我突然意識到,服務器可能遭受到 SQL注入 攻擊了……

至于事故發生的原因和之后所做的補救措施,以后有機會我會聊一聊的。這里我主要講一下 mysql 用戶密碼的重置步驟。

重置 root 密碼
在忘記 root 密碼的情況下,可以進入 mysql 的安全模式,重置 root 密碼。

1. 停止 MySQL 服務

打開命令提示符窗口,輸入 net stop mysql 關閉 MySQL 服務。

C:\Users\Administrator>net stop mysql57
MySQL57 服務正在停止..
MySQL57 服務已成功停止。

↑ 服務名稱不一定都是 mysql,比如我的就是 mysql57,57代表版本號為5.7

當然你也可以通過計算機管理面板關閉 MySQL 服務。

windows下重置mysql的root密碼方法介紹

2. 切換到 bin 目錄

在命令提示符窗口中,通過 cd 命令切換到 mysql 安裝目錄下的 bin 目錄。

C:\Users\Administrator>
cd C:\Program Files\MySQL\MySQL Server 5.7\bin
C:\Program Files\MySQL\MySQL Server 5.7\bin>

↑ 默認安裝目錄為 C:\Program Files\MySQL\MySQL Server

3. 進入安全模式

在 bin 目錄下輸入 mysqld --skip-grant-tables ,跳過權限檢查啟動 mysql。

如果你配置了 my.ini 文件,則需要將其引入: mysqld --defaults-file="../my.ini" --skip-grant-tables

[mysqld]

basedir = "C:\ProgramData\MySQL\MySQL Server 5.7"
datadir = "C:\ProgramData\MySQL\MySQL Server 5.7\Data"

↑ 我在 my.ini 文件中指定了數據的存放路徑,如果不引入配置文件,則會提示 No such file or directory 錯誤。

4. 重置賬戶密碼

打開另一個命令提示符窗口(別關閉安全模式窗口),同樣切換到 mysql \ bin 目錄,輸入 mysql 跳過權限驗證連接數據庫。

C:\Program Files\MySQL\MySQL Server 5.7\bin>mysql
Server version: 5.7.16 MySQL Community Server (GPL)
Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql>

↑ 也可以指定連接參數 mysql -u <用戶名> -p <密碼> -h <連接地址> -P <端口號> -D <數據庫>

執行 update mysql.user set authentication_string="" where user="root"; 重置 root 用戶的密碼(5.7 之前為 password 字段)。

mysql> update mysql.user set authentication_string="" where user="root";
Query OK, 1 row affected (0.00 sec)

mysql> select user,authentication_string from mysql.user\G
*************************** 1. row ***************************
         user: root
authentication_string:
*************************** 2. row ***************************
         user: mysql.sys
authentication_string: *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE

2 rows in set (0.00 sec)

↑ root 用戶的 authentication_string 字段已經被清空了

5. 刷新權限表

執行 flush privileges; 命令刷新權限表,密碼已經重置完成,輸入 quit 退出。

mysql> flush privileges;
Query OK, 0 rows affected (0.02 sec)
mysql> quit
Bye

關閉所有命令提示符窗口,通過任務管理器結束 mysqld.exe 進程。重啟 MySQL 服務,之后就可以直接登錄 root 賬號了。

修改 root 密碼

出于安全考慮,root 密碼不宜為空,所以需要在密碼重置之后,再重新設置一個密碼。

方法一:SET PASSWORD

SET PASSWORD FOR "username"=PASSWORD("new password");

以 root 身份登錄 mysql,再使用 set password 命令修改密碼:

mysql> set password for root@localhost = password("pswd");
Query OK, 0 rows affected, 1 warning (0.00 sec)

方法二:mysqladmin

mysqladmin -u "username" -p password "new password"

執行該命名之后會提示輸入原密碼,輸入正確后即可修改。

C:\Program Files\MySQL\MySQL Server 5.7\bin> mysqladmin -u root -p password pswd
Enter password: ****

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.

方法三:UPDATE TABLE

UPDATE mysql.user SET authentication_string=PASSWORD("new password") WHERE user="username";

在重置 root 密碼的同時,也可以設置默認密碼。不過密碼不能為明文,必須使用 password() 函數加密。

mysql> update mysql.user set authentication_string=password("pswd") where user="root";
Query OK, 1 row affected, 1 warning (0.00 sec)

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

總結

以上就是本文關于windows下重置mysql的root密碼方法介紹的全部內容,希望對大家有所幫助。感興趣的朋友可以繼續參閱本站:

MySQL數據庫設計之利用Python操作Schema方法詳解

mysql中使用instr進行模糊查詢方法介紹

MySQL中or語句用法示例

如有不足之處,歡迎留言指出。感謝朋友們對本站的支持!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

汾西县| 章丘市| 磐安县| 蓝山县| 大名县| 辽源市| 元谋县| 南召县| 汾阳市| 南阳市| 广河县| 崇明县| 武安市| 嵊泗县| 遂川县| 巫山县| 达孜县| 吐鲁番市| 多伦县| 韶山市| 麻城市| 澄江县| 台江县| 陆川县| 泸州市| 永城市| 锡林浩特市| 梅州市| 绥宁县| 白山市| 澎湖县| 宣汉县| 永修县| 土默特右旗| 文安县| 和顺县| 资中县| 黔西| 铜梁县| 满洲里市| 双流县|