mysql面試指南-使用者相關
阿新 • • 發佈:2022-01-06
如何在給定場景下為某使用者授權?
-
如何定義mysql資料賬號?
- 使用者名稱@可訪問控制列表。(5.7之前只有16個位元組。5.8之後32個位元組)
- %:代表可以從所有外部主機訪問
- 192.168.1.%:表示可以從192.168.1網段訪問
- localhost:db伺服器本地訪問
- 使用CREATE USER命令建立使用者
- 使用者名稱@可訪問控制列表。(5.7之前只有16個位元組。5.8之後32個位元組)
-
mysql常用的使用者許可權
-
admin
- Create User 建立新的使用者許可權
- Grant ooption 為其他使用者授權許可權
- super 管理伺服器的許可權
-
DDL
- Create 新建資料庫,表的許可權
- Alter 修改表結構的許可權
- Drop 刪除資料庫和表的許可權
- Index 建立和刪除索引的許可權
-
DML
- Select 查詢表中資料的許可權
- Insert 向表中插入資料的許可權
- Update 更新表中資料的許可權
- Delete 刪除表中資料的許可權
- Execure 執行儲存過程的許可權
(檢視mysql的許可權表。 show privileges;)
-
-
如何為使用者授權?
- 遵循著小許可權原則
- 使用grant 命令對使用者授權
- grant select, insert, update, delete on db.tb to user@ip;-----給許可權
- revoke delete on db.tb from user@ip; ----收回許可權
如何保證資料庫賬號的安全?
-
資料庫使用者管理流程規範
-
最小許可權原創
-
密碼強度策略
-
密碼過期原則
(5.7限制了密碼過期時間)
(5.8限制了密碼使用次數)
-
限制歷史密碼重用原則
-
如何從一個例項遷移資料庫賬號到另一個例項?
解決思路
- 匯出使用者建立及授權語句
- Pt-show-grants u=root,p=123,h=localhost