数据控制语言(DCL)语法合集
生活随笔
收集整理的這篇文章主要介紹了
数据控制语言(DCL)语法合集
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
目錄
- 用戶的創建、刪除、查詢和改密
- 授權:授予與回收
- 數據庫角色
- 上述語句實戰
用戶的創建、刪除、查詢和改密
創建用戶
語法格式: create user '用戶名'@ '允許登錄的位置' identified by '密碼';例:創建一個U1用戶本地登錄,用戶的密碼是123 create user 'U1'@ 'localhost' identified by '123';此處的"localhost",是指該用戶只能在本地登錄,不能在另外一臺機器上遠程登錄。 如果想遠程登錄的話,將"localhost"改為"%",表示在任何一臺電腦上都可以登錄。也可以指定某臺機器可以遠程登錄。刪除用戶
語法格式: drop user '用戶名'@'允許登錄的位置';查詢所有用戶
select user,host from mysql.user;查看用戶的權限
show grants for 用戶名;更改用戶密碼
--方法1,密碼實時更新 set password for 用戶名 =password('密碼'); --方法2,需要刷新 update mysql.user set password=password('密碼') where user='用戶名' flush privileges; # 刷新授權:授予與回收
授予權限
語法格式: grant <權限>[,<權限>].... on<對象類型><對象名>[,<對象類型><對象名>]... to<用戶>[,<用戶>]... [with grant option];如果指定了with grant option子句, 則獲得某種權限的用戶還可以把這種權限再授予其他的用戶。 如果沒有指定with grant option子句,則獲得某種權限的用戶只能使用該權限,不能傳播該權限。 SQL標準允許具有with grant option的用戶把相應權限或其子集傳遞授予其他用戶, 但不允許循環授權,即被授權者不能把權限再授回給授權者或其祖先。回收權限
revoke <權限>[,<權限>].... on <對象類型> <對象名>[,<對象類型> <對象名].... from <用戶>[,<用戶>].........[cascade | restrict];數據庫角色
數據庫角色是被命名的一組與數據庫操作相關的權限,角色是權限的集合。
因此,可以為一組具有相同權限的用戶創建創建一個角色,使用角色來管理數據庫權限可以簡化授權的過程。
創建角色
創建角色的語法格式: create role <角色名>給角色授權
語法格式: grant <權限> [,<權限>]..... to <對象類型> 對象名 to <角色>[,<角色>].......將一個角色授予其他的角色或用戶
語法格式: grant <角色1>[,[角色2]]..... to <角色3>[,<用戶>]...... [with admin option]角色權限的收回
語法格式: revoke <權限>[,<權限>]...... on <對象類型><對象名> from<角色>[,<角色>].......用戶可以收回角色的權限,從而修改角色的權限。上述語句實戰
創建一個用戶名為hui 密碼為 123 的本地用戶 創建一個用戶名為xiao 密碼為 123 登錄位置省略的用戶目的: 查看用戶創建語句默認的登錄方式是什么?
由上述圖片你會發現,當我們創建一個用戶如果省略登錄位置,
則默認表示在任何一臺電腦上都可以登錄。
出現上述報錯是因為沒有指明該用戶的登錄方式。
如果是任意的登錄方式就不用指明用戶的登錄方式。
如下圖所示:
總結
以上是生活随笔為你收集整理的数据控制语言(DCL)语法合集的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 数据库视图的概念和相关操作合集
- 下一篇: 用漫画的方式理解共享锁和排他锁