站長資訊網
最全最豐富的資訊網站

mysql的密碼放在哪里

mysql的密碼放在user權限表的authentication_string字段中。user表是MySQL中最重要的一個權限表,用來記錄允許連接到服務器的賬號信息;修改用戶密碼時,實際就是修改user表中authentication_string字段的值,語法為“SET PASSWORD FOR 'username'@'hostname'=PASSWORD ('新密碼')”。

mysql的密碼放在哪里

本教程操作環境:windows7系統、mysql8版本、Dell G3電腦。

mysql的密碼放在user權限表的authentication_string字段中。

MySQL user權限表的用戶列

MySQL 在安裝時會自動創建一個名為 mysql 的數據庫,mysql 數據庫中存儲的都是用戶權限表。用戶登錄以后,MySQL 會根據這些權限表的內容為每個用戶賦予相應的權限。

user 表是 MySQL 中最重要的一個權限表,用來記錄允許連接到服務器的賬號信息。需要注意的是,在 user 表里啟用的所有權限都是全局級的,適用于所有數據庫。

mysql的密碼放在哪里

user 表中的字段大致可以分為 4 類,分別是用戶列、權限列、安全列和資源控制列。

其中用戶列存儲了用戶連接 MySQL 數據庫時需要輸入的信息。

需要注意的是 MySQL 5.7 版本不再使用 Password 來作為密碼的字段,而改成了 authentication_string。

MySQL 用戶列如表 1 所示。

表 1:user 表的用戶列
字段名 字段類型 是否為空 默認值 說明
Host char(60) NO 主機名
User char(32) NO 用戶名
authentication_string text YES 密碼

用戶登錄時,如果這 3 個字段同時匹配,MySQL 數據庫系統才會允許其登錄。創建新用戶時,也是設置這 3 個字段的值。修改用戶密碼時,實際就是修改 user 表的 authentication_string 字段的值。因此,這 3 個字段決定了用戶能否登錄。

使用SET語句修改普通用戶的密碼

在 MySQL 中,只有 root 用戶可以通過更新 MySQL 數據庫來更改密碼。使用 root 用戶登錄到 MySQL 服務器后,可以使用 SET 語句來修改普通用戶密碼。語法格式如下:

SET PASSWORD FOR 'username'@'hostname' = PASSWORD ('newpwd');

其中,username 參數是普通用戶的用戶名,hostname 參數是普通用戶的主機名,newpwd 是要更改的新密碼。

注意:新密碼必須使用 PASSWORD() 函數來加密,如果不使用 PASSWORD() 加密,也會執行成功,但是用戶會無法登錄。

如果是普通用戶修改密碼,可省略 FOR 子句來更改自己的密碼。語法格式如下:

SET PASSWORD = PASSWORD('newpwd');

示例 1

首先創建一個沒有密碼的 testuser 用戶,SQL 語句和運行結果如下:

mysql> CREATE USER 'testuser'@'localhost'; Query OK, 0 rows affected (0.14 sec)

root 用戶登錄 MySQL 服務器后,再使用 SET 語句將 testuser 用戶的密碼修改為“newpwd”,SQL 語句和運行結果如下:

mysql> SET PASSWORD FOR 'testuser'@'localhost' = PASSWORD("newpwd"); Query OK, 0 rows affected, 1 warning (0.01 sec)

由運行結果可以看出,SET 語句執行成功,testuser 用戶的密碼被成功設置為“newpwd”。

下面驗證 testuser 用戶密碼是否修改成功。退出 MySQL 服務器,使用 testuser 用戶登錄,輸入密碼“newpwd”,SQL 語句和運行結果如下:

C:Usersleovo>mysql -utestuser -p Enter password: ****** Welcome to the MySQL monitor.  Commands end with ; or g. Your MySQL connection id is 15 Server version: 5.7.29-log MySQL Community Server (GPL)   Copyright (c) 2000, 2020, 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.

由運行結果可以看出,testuser 用戶登錄成功,修改密碼成功。

示例 2

使用 testuser 用戶登錄 MySQL 服務器,再使用 SET 語句將密碼更改為“newpwd1”,SQL 語句和運行結果如下所示:

mysql> SET PASSWORD = PASSWORD('newpwd1'); Query OK, 0 rows affected, 1 warning (0.00 sec)

由運行結果可以看出,修改密碼成功。

贊(0)
分享到: 更多 (0)
網站地圖   滬ICP備18035694號-2    滬公網安備31011702889846號
国产精品自在在线午夜出白浆| 日韩a级一片在线观看| 久久亚洲精品成人| 日韩一级电影在线观看| 久久久久久午夜精品| 91精品国产三级在线观看| 精品久久国产一区二区三区香蕉| 精品午夜久久网成年网| 久久国产亚洲精品| 91亚洲精品麻豆| 国产午夜精品视频| 久久久精品无码专区不卡| 亚洲免费日韩无码系列| 国产精品老熟女露脸视频| 久久久久国产精品人妻| 国产精品无码无片在线观看| 大伊香蕉精品一区视频在线 | 亚洲AV午夜福利精品一区二区| 日韩精品午夜视频一区二区三区| 午夜精品久久久久成人| 国产精品专区第二| 精品一区二区三区在线播放视频| 国产成人精品AA毛片| 国产精品一区三区| 日韩美女18网站久久精品| 国产精品二区在线| 国产亚洲精品仙踪林在线播放| 亚洲精品无码日韩国产不卡av| 999精品视频在线观看热6| 久久99久久精品视频| 国语自产精品视频在线观看| 精品一区二区三区免费毛片| 国产精品va无码免费麻豆| 国产精品午夜爆乳美女视频| 国产精品一区二区AV麻豆| 国产亚洲精品美女久久久久| 精品日产卡一卡二卡三入口| 国产乱码精品一区二区三区四川人 | 热久久视久久精品18| 四虎亚洲精品高清在线观看| 亚洲色精品VR一区区三区 |