在對 mysql 的日常管理和實際操作中,為了避免使用者惡意冒名使用 root 賬號控制資料庫,通常需要建立一系列具備適當許可權的賬號,應該盡可能地不用或少用 root 賬號登入系統,以此來確保資料的安全訪問。
可以使用 create user 語句來建立乙個或多個 mysql 賬戶,並設定相應的口令。
語法格式:
create user 《使用者名稱》
[ identified ] by [ password ]
《口令》
語法說明如下:
1 《使用者名稱》
指定建立使用者賬號,格式為 『user_name』@『host_name』。這裡user_name是使用者名稱,host_name為主機名,即使用者連線 mysql 時所在主機的名字。若在建立的過程中,只給出了賬戶的使用者名稱,而沒指定主機名,則主機名預設為「%」,表示一組主機。
2 password
可選項,用於指定雜湊口令,即若使用明文設定口令,則需忽略password關鍵字;若不想以明文設定口令,且知道 password() 函式返回給密碼的雜湊值,則可以在口令設定語句中指定此雜湊值,但需要加上關鍵字password。
3 identified by子句
用於指定使用者賬號對應的口令,若該使用者賬號無口令,則可省略此子句。
4 《口令》
指定使用者賬號的口令,在identified by關鍵字或passwoed關鍵字之後。給定的口令值可以是只由字母和數字組成的明文,也可以是通過 password() 函式得到的雜湊值。
使用 create user 語句應該注意以下幾點:
如果使用 create user 語句時沒有為使用者指定口令,那麼 mysql 允許該使用者可以不使用口令登入系統,然而從安全的角度而言,不推薦這種做法。
使用 create user 語句必須擁有 mysql 中 mysql 資料庫的 insert 許可權或全域性 create user 許可權。
使用 create user 語句建立乙個使用者賬號後,會在系統自身的 mysql 資料庫的 user 表中新增一條新記錄。若建立的賬戶已經存在,則語句執行時會出現錯誤。
新建立的使用者擁有的許可權很少。他們可以登入 mysql,只允許進行不需要許可權的操作,如使用 show 語句查詢所有儲存引擎和字符集的列表等。
如果兩個使用者具有相同的使用者名稱和不同的主機名,mysql 會將他們視為不同的使用者,並允許為這兩個使用者分配不同的許可權集合。
使用 create user 建立乙個使用者,使用者名稱是 james,密碼是 tiger,主機是 localhost。輸入的 sql 語句和執行過程如下所示。
mysql> create user 'james'@'localhost'
-> identified by 'tiger'
;query ok,
0 rows affected (
0.12 sec)
在 windows 命令列工具中,使用新建立的使用者 james 和密碼 tiger 登入資料庫伺服器,如下所示。
c:\users\user>mysql -h localhost -u james -p
enter password:**
***welcome to the mysql monitor. commands end with ; or \g.
your mysql connection id is 5
server version:
5.7.20
-log mysql community server (gpl)
2000
,2017
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 建立使用者指令碼 Mysql使用者建立指令碼
我試圖自動化mysql使用者建立過程。我想到建立乙個包含mysql使用者建立語句的臨時檔案,那麼我會這樣稱呼 mysql u root proot 這裡是我的臨時檔案的內容 drop database if exists mytestdatabase create database mytestda...
mysql 建立使用者
mysql grant all privileges on to root identified by with grant option query ok,0 rows affected 0.02 sec 表示是所有的外部機器,如果指定某一台機,就將 改為相應的機器名 mysql grant al...
MYSQL 建立使用者
一,建立使用者 命令 create user username host identified by password 說明 username 你將建立的使用者名稱,host 指定該使用者在哪個主機上可以登陸,如果是本地使用者可用localhost,如果想讓該使用者可以從任意遠端主機登陸,可以使用萬...