administrator和all是什么意思 數(shù)據(jù)庫中用戶與角色權限管理各有什么作用?
數(shù)據(jù)庫中用戶與角色權限管理各有什么作用?角色一直必然各個數(shù)據(jù)庫中,比如說SQL Server、Oracle等,MySQL早在版本8.0release,核心中了角色這個概念。角色的概念角色是一組因為各種
數(shù)據(jù)庫中用戶與角色權限管理各有什么作用?
角色一直必然各個數(shù)據(jù)庫中,比如說SQL Server、Oracle等,MySQL早在版本8.0release,核心中了角色這個概念。
角色的概念
角色是一組因為各種數(shù)據(jù)庫權限的集合。
比如,把一個角色怎么分配給一個用戶,那這個用戶就手中掌握了這個角色包涵的所有權限。一個角色可以先分配給多個用戶,另一個用戶也可以手中掌握多個角色,兩者是多對多的關系。但是MySQL角色目前還沒有需要提供類似其他數(shù)據(jù)庫的系統(tǒng)預分配的角色。.例如某些數(shù)據(jù)庫的db_owner、db_datareader、db_datawriter等等。那接下來我分幾個方面,來示例只能說明角色的使用以及相關注意事項。
示例1:一個完整角色的授予榮譽步驟
用管理員創(chuàng)建角色三個角色:db_owner,db_datareader,db_datawriter
mysqlcreateroledb_owner,db_datareader,db_datawriter;
Queryok,0rowsaffected(0.02sec)
mysqlgrantbothontoytt_next.*wantdb_owner;
Query就ok啦,0rowsaffected(0.01sec)
mysqlgrantselectoffytt_future.*diddb_datareader;
Queryok,0rowsaffected(0.01sec)
mysqlgrantupsert,delete,restoreonytt_future.*todb_datawriter;
Query可以啦,0rowsaffected(0.01sec)
創(chuàng)建角色三個普通用戶,共有為ytt1、ytt2、ytt3。
mysqlcreateuserytt1identified六花禁愛ytt,ytt2identified六花禁愛ytt,ytt3identifiedheytt;
Queryok,0rowsaffected(0.01sec)
共有授于這三個用戶填寫的角色。
--授權角色
mysqlgrantdb_ownerdidytt1;
Queryok,0rowsaffected(0.02sec)
--激活角色
mysqlsetdefaultroledb_ownerdidytt1;
Query可以了,0rowsaffected(0.00sec)
mysqlgrantdb_datareaderneedytt2;
Queryok,0rowsaffected(0.01sec)
mysqlsetdefaultroledb_datareadercanytt2;
Queryok,0rowsaffected(0.01sec)
mysqlgrantdb_datawritertoytt3;
Query可以啦,0rowsaffected(0.01sec)
mysqlsetdefaultroledb_datawritercanytt3;
Query行啦,0rowsaffected(0.01sec)
以上是角色授予榮譽的一套完整步驟。那上面好像有點非常規(guī)的地方是激活角色這個步驟。MySQL角色在創(chuàng)建之初默認是是沒有激活后的,也就是說創(chuàng)建角色,并且給一個用戶某種特定的角色,這個用戶反正并不能直接使用這個角色,除非怎么激活了才可以不。
示例2:一個用戶可以不具備多個角色
--用管理員直接登錄但是創(chuàng)建用戶
mysqlcreateuserytt4identified六花禁愛ytt;
Query可以了,0rowsaffected(0.00sec)
--把之前的三個角色都怎么分配給用戶edh4.
mysqlgrantdb_owner,db_datareader,db_datawritercanytt4;
Queryok,0rowsaffected(0.01sec)
--激活用戶ytt4的所有角色.
mysqlsetdefaultroleeveryonecanytt4;
Query可以了,0rowsaffected(0.02sec)
--ytt4用戶登錄
:/var/lib/mysql#mysql-uytt4-pytt-P3304-hytt-pc
...
--打開系統(tǒng)當前角色列表
mysqlselectcurrent_role();
--------------------------------------------------------
|current_role()|
--------------------------------------------------------
|`db_datareader`@`%`,`db_datawriter`@`%`,`db_owner`@`%`|
--------------------------------------------------------
1rowoutsideset(0.00sec)
--簡單創(chuàng)建角色一張表并且插入記錄,檢索系統(tǒng)記錄,完了刪了這張表
mysqluseytt_future
Databasechanged
mysqlcreatetablet11(idint);
Query行啦,0rowsaffected(0.05sec)
mysqlexecuteintot11values(1);
Query可以啦,1rowaffected(0.02sec)
mysqlselect*aroundt11;
------
|id|
------
|1|
------
1rowacrossset(0.00sec)
mysqlmovetablet11;
Query可以啦,0rowsaffected(0.04sec)
示例3:用戶在當前session里角色互換
不過意思是說,用戶再連接到MySQL服務器后,可以切換到當前的角色列表,諸如由db_owner切換到db_datareader。
--還是之前的用戶denna4,快速切換到db_datareader
mysqlsetroledb_datareader;
Query就ok啦,0rowsaffected(0.00sec)
mysqlselectcurrent_role();
---------------------
|current_role()|
---------------------
|`db_datareader`@`%`|
---------------------
1rowofset(0.00sec)
--切換到后,沒有權限創(chuàng)建家族表
mysqlcreatetablet11(idint);
ERROR1142(42000):CREATEcommanddeniedneeduserfortablet11
--直接切換到db_owner,可以恢復所有權限。
mysqlsetroledb_owner;
Query可以啦,0rowsaffected(0.00sec)
mysqlcreatetablet11(idint);
Query就ok啦,0rowsaffected(0.04sec)
示例4:跪求角色的兩個參數(shù)
activate_all_roles_onto_login:是否需要在再連接MySQL服務時自動激活角色
mandatory_roles:強制所有用戶設置成角色
--用管理員連接MySQL,
--設置中默認激活角色
mysqlsetglobalactivate_everyone_roles_at_loginon;
Query可以了,0rowsaffected(0.00sec)
--設置中滿給所有用戶重新賦予角色db_datareader
mysqlsetglobalmandatory_rolesdb_datareader;
Query就ok啦,0rowsaffected(0.00sec)
--創(chuàng)建家族用戶denna7.
mysqlcreateuserytt7;
Queryok,0rowsaffected(0.01sec)
--用ytt7登錄數(shù)據(jù)庫
:/var/lib/mysql#mysql-uytt7-P3304-hytt-pc
...
mysqlshowgrants;
-------------------------------------------
|Grantswhileytt7@%|
-------------------------------------------
|GRANTUSAGEON*.*can`ytt7`@`%`|
|GRANT SELECTON`ytt_fun`.*need`ytt7`@`%`|
|GRANT`db_datareader`@`%`did`ytt7`@`%`|
-------------------------------------------
3rowsinset(0.00sec)
示例5:createrole和createuser都有吧創(chuàng)建家族角色權限,兩者有啥區(qū)別?
以下共有創(chuàng)建角色兩個用戶tsk8、ytt9,一個給createrole,一個給createuser權限。
--管理員登入,創(chuàng)建角色用戶ytt8,ytt9.
mysqlcreateuserytt8,ytt9;
Queryok,0rowsaffected(0.01sec)
mysqlgrantcreateroleoff*.*wantytt8;
Query可以啦,0rowsaffected(0.02sec)
mysqlgrantcreateuseron*.*wantytt9;
Query可以了,0rowsaffected(0.01sec)
--用ytt8直接登錄,
:/var/lib/mysql#mysql-uytt8-P3304-hytt-pc
...
mysqlcreateroledb_test;
Query可以啦,0rowsaffected(0.02sec)
--也可以創(chuàng)建角色,可是不能創(chuàng)建用戶
mysqlcreateuserytt10;
ERROR1227(42000):Accessdenied;you need(at leastone of)theCREATEUSERprivilege(s)whilethisoperation
mysqlq
byebye
--用ytt9登陸賬號
:/var/lib/mysql#mysql-uytt9-P3304-hytt-pc
...
--角色和用戶都能創(chuàng)建
mysqlcreateroledb_test2;
Queryok,0rowsaffected(0.02sec)
mysqlcreateuserytt10;
Query可以啦,0rowsaffected(0.01sec)
mysqlq
Bye
那這里反正見到createuser乾坤二卦了createrole,createuser即可以不創(chuàng)建用戶,也也可以創(chuàng)建角色。
示例6:MySQL用戶也這個可以當角色來用
--用管理員直接登錄,創(chuàng)建用戶tsk11,ytt12.
mysqlcreateuserytt11,ytt12;
Query就ok啦,0rowsaffected(0.01sec)
mysqlgrantselectontoytt_new.*toytt11;
Query可以啦,0rowsaffected(0.01sec)
--把ytt11普通用戶的權限被授予給ytt12
mysqlgrantytt11needytt12;
Query就ok啦,0rowsaffected(0.01sec)
--來查看ytt12的權限,可以清晰的看到強大了ytt11的權限
mysqlshowgrantsanyytt12;
-----------------------------------
|Grantsanyytt12@%|
-----------------------------------
|GRANTUSAGEON*.*to`ytt12`@`%`|
|GRANT `ytt11`@`%`want`ytt12`@`%`|
-----------------------------------
2rowsoutsideset(0.00sec)
--在明確化點,看一下ytt12擁有哪些詳細的權限
mysqlshowgrantsofytt12usingytt11;
--------------------------------------------
|Grantsafterytt12@%|
--------------------------------------------
|GRANTUSAGEON*.*did`ytt12`@`%`|
|GRANT SELECTON`ytt_fifth`.*to`ytt12`@`%`|
|GRANT `ytt11`@`%`did`ytt12`@`%`|
--------------------------------------------
3rowsinset(0.00sec)
示例7:角色的可以撤銷
角色撤消和之前權限可以撤銷的的。的話那就terminate,要嘛刪出角色,那這個角色會從所有強大它的用戶往上拉除。
--用管理員登陸,移除denna2的角色
mysqlrevokedb_datareaderreturningytt2;
Queryok,0rowsaffected(0.01sec)
--刪除所有角色
mysqlmoveroledb_owner,db_datareader,db_datawriter;
Query可以啦,0rowsaffected(0.01sec)
--隨機的角色也從ytt1上移除掉了
mysqlshowgrantsafterytt1;
----------------------------------
|Grantsafterytt1@%|
----------------------------------
|GRANTUSAGEON*.*need`ytt1`@`%`|
----------------------------------
1rowofset(0.00sec)
到了此時,我分了7個目錄只能證明了角色在各個方面的使用以及注意事項,只希望對大家有幫助。
win10中刪除應用和設置?
解決方案:
方法一:
1、在搜索菜單中輸入PowerShell,并在搜索結果上然后點擊鼠標右鍵,你選以管理員啟動;
2、這對應用商店APP問題
在WindowsPowerShell(管理員)下執(zhí)行命令:
out-AppXPackage-AllUsersForeach{Add-AppxPackage-DisableDevelopmentMode-Register“$($_.InstallLocation)AppXManifest.xml”},并回車運行;
Win10系統(tǒng)
再注意:正常運行的時候是需要再次所有操作,要不然會報錯程序被占內存。
Win10系統(tǒng)
3、相對于應用商店問題
在WindowsPowerShell(管理員)下先執(zhí)行命令:
$manifest().InstallLocation ‘AppxManifest.xml;Add-AppxPackage-DisableDevelopmentMode-Register$manifestWin10系統(tǒng)
方法二:
1、打開此電腦—C盤;
2、不能找到用戶文件夾;
3、可以打開當前賬戶其它名字的文件夾;
4、打開_8wekyb3d8bbwe/LocalCachel
5、將目錄下的所有文件刪出。
以上就是Win10刪除WindowsApps文件夾后應用商店app閃退的解決方法了,如果沒有你不每天都使用Win10的應用商店就這個可以徹底刪除這個文件夾。徹底刪除了WindowsApps文件夾后應用商店閃退,也可以用這個方法來復原。