MySQL 使用者密碼管理

2021-09-08 14:35:18 字數 3068 閱讀 7003

mysql使用者密碼管理

這是乙個非常經典的mysql管理問題

當初次在機器上安裝完mysql時,你可以匿名進行訪問資料庫或者以不帶口令的root身份進入資料庫.另外如果你是乙個管理員,你還要進行一些使用者的建立及授權,這又涉及到設定密碼的問題.

下面我們就討論一下如何設定密碼:

首先我們應該知道mysql資料庫中的口令儲存必須用password()函式加密它.因為在user表中是以加密形式儲存口令,而不是作為純文字.如果你沒有加密,直接在資料庫中執行以下語句:

use mysql

insert into user (host,user,password) values('%','user_name','your password');

flush privileges;

相信結果不會讓你滿意.因為伺服器比較的是加密的值,所以伺服器連線一定失敗.

這裡需要說明的是

你也可以在shell下直接用mysqladmin -u root reload或者mysqladmin -u root flush-privileges來實現過載授權表.

在mysql環境下,你可以使用以下語句進行設定密碼:

1.insert into user(host,user,password) values('%','user_name',password('your password');

2.set password for user_name = password('your password')

以上兩種方法都必須進行過載授權表.

3.當然你也可以在建立乙個使用者時直接設定密碼,grant語句將為你自動加密口令.

如 :grant all on *.* to user_name@'%' identified by 'your password';

另外你也可以在shell環境下用mysqladmin程式來設定密碼

如:mysqladmin -u root password 'your password';

忘記mysql使用者密碼怎麼辦?破解本地的mysql使用者名稱和密碼?如何修改遺失的mysql的root使用者密碼

windows:

1.用系統管理員登陸系統。

2.停止mysql的服務。

3.進入命令視窗,然後進入mysql的安裝目錄,比如我的安裝目錄是c:\mysql,進入c:\mysql\bin

4.跳過許可權檢查啟動mysql,

c:\mysql\bin>;mysqld-nt --skip-grant-tables

5.重新開啟乙個視窗,進入c:\mysql\bin目錄,設定root的新密碼

c:\mysql\bin>;mysqladmin -u root flush-privileges password "newpassword"

c:\mysql\bin>;mysqladmin -u root -p shutdown

將newpassword替換為你要用的root的密碼,第二個命令會提示你輸入新密碼,重複第乙個命令輸入的密碼。

6.停止mysql server,用正常模式啟動mysql

7.你可以用新的密碼鏈結到mysql了。

unix&linux:

1.用root或者執行mysqld的使用者登入系統;

2.利用kill命令結束掉mysqld的程序;

3.使用--skip-grant-tables引數啟動mysql server

shell>;mysqld_safe --skip-grant-tables &

4.為root@localhost設定新密碼

shell>;mysqladmin -u root flush-privileges password 'newpassword'

5.重啟mysql server

如果忘記mysql 的root 密碼,可以用以下方法重新設定:

1. kill掉系統裡的mysql程序;

2. 用以下命令啟動mysql,以不檢查許可權的方式啟動;

mysqld_safe -skip-grant-tables &

3. 然後用空密碼方式使用root使用者登入 mysql;

mysql -u root

4. 修改root使用者的密碼;

mysql> update mysql.user set password=password('新密碼') where user='root';

mysql> flush privileges;

mysql> quit

5. 重新啟動mysql,就可以使用新密碼登入了。

修改mysql使用者密碼三法

在mysql中修改乙個使用者(比如叫\"hunte\")的密碼,可以用如下3個辦法:

>>>

#在控制台上輸入

bash$ mysql -u root mysql

#用mysql客戶程式

mysql> update user set password=password('new password') where user='hunte';

mysql> flush privileges;

mysql> quit

<<<

>>>

#在控制台上輸入

bash$ mysql -u root mysql

mysql> set password for hunte=password('new password');

mysql> quit

<<<

>>>

#直接在控制台上輸入

bash$ mysqladmin -u root 'old password' 'new password'

<<<

Mysql使用者 許可權 密碼管理

預設 使用者root 建立使用者 usemysql create user alex 192.168.193.200 identified by 123456 建立了alex使用者,密碼為123456,只能在ip192.168.193 200上連線 create user egon 192.168....

MySQL使用者管理 密碼修改 使用者授權

注 下面sql語句都是在mysql庫下執行的 create user username host identified by password 引數說明 username 建立的使用者名稱 host 指定該使用者在哪個主機上登陸,本地登入可用localhost,任意遠端主機登陸,可用萬用字元 某ip...

mysql 使用者管理 MySQL使用者管理

一 mysql使用者管理的必要性 如果我們只能使用root使用者,這樣安全隱患,這時,我們需要使用mysql的使用者管理技術.一次獲得 分配許可權user db tables priv columns priv 許可權範圍一次遞減,全域性許可權覆蓋區域性許可權。換句話說user表中的每個許可權都代表...