修改資料庫密碼和新增資料庫使用者許可權

2021-08-25 21:29:48 字數 2907 閱讀 5963

一、mysql修改密碼方法總結

首先要說明一點的是:一般情況下,修改mysql密碼是需要有mysql裡的root許可權的,這樣一般使用者是無法更改密碼的,除非請求管理員幫助修改。

方法一使用phpmyadmin (圖形化管理mysql資料庫的工具),這是最簡單的,直接用sql語句修改mysql資料庫庫的user表,不過別忘了使用password函式,插入使用者用insert命令,修改使用者用update命令,刪除用delete命令。在本節後面有資料表user欄位的詳細介紹。

方法二使用mysqladmin。輸入

mysqladmin -u root -p oldpassword newpasswd

執行這個命令後,需要輸入root的原密碼,這樣root的密碼將改為newpasswd。同樣,把命令裡的root改為你的使用者名稱,你就可以改你自己的密碼了。 當然如果你的mysqladmin連線不上mysql server,或者你沒有辦法執行mysqladmin,那麼這種方法就是無效的,而且mysqladmin無法把密碼清空。

下面的方法都在mysql提示符下使用,且必須有mysql的root許可權:

方法三mysql> insert into mysql.user (host,user,password) values (』%』,』system』, password(』manager』));

mysql> flush privileges

確切地說這是在增加乙個使用者,使用者名為system,密碼為manager。注意要使用password

函式,然後還要使用flush privileges來執行確認。

方法四和方法三一樣,只是使用了replace語句

mysql> replace into mysql.user (host,user,password)

values(』%』,』system』,password(』manager』));

mysql> flush privileges

方法五使用set password語句

mysql> set password for system@"%" = password(』manager』);

你也必須使用password()函式,但是不需要使用flush privileges來執行確認。%指任意的主機名

方法六使用grant ... identified by語句,來進行授權。

mysql> grant usage on *.* to system@"%" identified by 』manager』;

這裡password()函式是不必要的,也不需要使用flush privileges來執行確認。

注:password()函式作用是為口令字加密,在程式中mysql自動解釋。

二、mysql中訪問限制的設定方法

我們採用兩種方法來設定使用者。

進入到mysql執行目錄下(通常是c:mysqlin)。輸入mysqld-shareware.exe,輸入mysql --user=root mysql ,不然不能新增新使用者。進入到mysql>提示符下進行操作。

假設我們要建立乙個超級使用者,使用者名為system,使用者口令為manager。

方法一用grant 命令授權,輸入的**如下:

mysql>grant all privileges on *.* to system@localhost identified by 』manager』 with grant option;

應顯示:query ok, 0 rows affected (0.38 sec)

方法二對使用者的每一項許可權進行設定:

mysql>insert into user values(』localhost』,』

system』,password(』manager』), 』y』,』y』,』y』,』

y』,』y』,』y』,』y』,』y』,』y』,』y』,』y』,』

y』,』y』,』y』);

對於3.22.34版本的mysql,這裡共14個"y",其相應的許可權如下(按欄位順序排列):

許可權 表列名稱 相應解釋 使用範圍

select select_priv 只有在真正從乙個表中檢索時才需要select許可權 表

insert insert_priv 允許您把新行插入到乙個存在的表中 表

update update_priv 允許你用新值更新現存表中行的列 表

delete delete_priv 允許你刪除滿足條件的行 表

create create_priv 允許你建立新的資料庫和表 資料庫、表或索引

drop drop_priv 拋棄(刪除)現存的資料庫和表 資料庫或表

reload reload_priv 允許您告訴伺服器再讀入授權表 伺服器管理

shutdown shutdown_priv 可能被濫用(通過終止伺服器拒絕為其他使用者服務) 伺服器管理

process process_priv 允許您察看當前執行的查詢的普通文字,包括設定或改變口令查詢 伺服器管理

file file_priv 許可權可以被濫用在伺服器上讀取任何可讀的檔案到資料庫表 伺服器上的檔案訪問

grant grant_priv 允許你把你自己擁有的那些許可權授給其他的使用者 資料庫或表

references references_priv 允許你開啟和關閉記錄檔案 資料庫或表

index index_priv 允許你建立或拋棄(刪除)索引 表

alter alter_priv 允許您改變**,可以用於通過重新命名表來推翻許可權系統 表

如果建立使用者時只有select、insert、update和delete許可權,則允許使用者只能在乙個資料庫現有的表上實施操作.

下面就可以建立我們要用到的資料庫了,我們直接輸入. 例如:我們要建立資料庫名為xinxiku,可用如下**:

mysql>create database xinxiku;

應顯示:

query ok, 1 row affected (0.00 sec)

修改資料庫密碼全集

現在的密碼越來越多,我們經常會忘記一些密碼,比如資料庫的,找回資料庫密碼那麼就變的很重要。下面有部分我是從網際網路上收集的,在這裡主要做乙個標記,方便以後查詢 一.postgresql 管理員密碼修改 如果你忘記了postgresql的管理員密碼,在linux環境下,你只需要登入到postgres,...

mysql 修改資料庫密碼

首先登入mysql。格式 mysql set password for 使用者名稱 localhost password 新密碼 例子 mysql set password for root localhost password 123 格式 mysqladmin u使用者名稱 p舊密碼 passw...

如何修改資料庫密碼

第一步 以管理員身份執行命令提示符 第二步 找到mysql當前目錄,複製 如我的路徑是 c program files mysql mysql server 5.5 bin 第三步 通過輸入命令 cd 路徑 進入mysql的bin目錄 第四步 輸入命令 mysql u root p 指定使用者登入m...