尝试使用dblink连接到另一个库:-createdatabaselink创建公共数据库链接名称使用(description(address_list(addressss(protocoltcp)(hostip)(portport))(connect_data(service_namesid))连接到由密码标识的用户;使用时可以使用select×fromtbnam
:的两种方法-方法1。更新表2设置表2。c(从表1中选择b,其中表1。一张桌子。a)存在位置(从表1中选择1,其中表1。一张桌子。a)。-使用(表2)中的表1将方法2合并到表2中。一张桌子。a)-假设a是相同的,当匹配时,则更新集合表2。c表1。b-匹配时更新。
角色一直存在于各种数据库中,如sqlserver、oracle等。自8.0版本发布以来,mysql已经引入了角色的概念。
角色的概念
角色是对各种数据库的一组权限。
例如,如果将某个角色分配给某个用户,该用户将拥有该角色中包含的所有权利。一个角色可以分配给多个用户,另一个用户可以有多个角色,这是多对多的关系。但是,mysql角色还没有提供类似于其他数据库的系统预分配角色。比如一些数据库的db_owner、db_datareader、db_datawriter等等。然后我会从几个方面来说明角色的使用以及相关的注意事项。
示例1:完整角色的授予步骤
使用管理员创建三个角色:db_owner、db_datareader和db_datawriter。
mysqlgt创建角色db_owner、db_datareader、db_datawriter
查询正常,0行受影响(0.02秒)
我的sqlgtgrantallonytt_new。*致数据库所有者
查询正常,0行受影响(0.01秒)
ytt_new上的mysqlgtgrantselect。*到db_datar:/var/lib/mysql#mysql-uytt4-pytt-p3304-hytt-pc
...
-查看当前角色列表
mysqlgtselectcurrent_role()
-
|当前角色()|
-
|`db_datareader`@`%`,`db_datawriter`@`%`,`db_owner`@`%`|
-
集合中的1行(0.00秒)
-只需创建一个表,插入记录,检索记录,然后删除表。
mysqlgt使用ytt_new
数据库已更改
mysqlgt创建表t11(idint)
查询正常,0行受影响(0.05秒)
mysqlgt插入t11值(1)
查询正常,1行受影响(0.02秒)
mysqlgtselect*fromt11
-
|id|
-
|1|
-
集合中的1行(0.00秒)
mysqlgt删除表t11
查询正常,0行受影响(0.04秒)
示例3:当前会话中的用户角色交换。
实际上是指用户连接mysql服务器后可以切换当前角色列表,比如从db_owner切换到db_datareader。
-还是之前的用户ytt4,切换到db_datareader。
mysqlgt设置角色db_datareader
查询正常,0行受影响(0.00秒)
mysqlgtselectcurr:创建命令
-切换到db_owner并恢复所有权限。
mysqlgt设置角色db_owner
查询正常,0行受影响(0.00秒)
mysqlgt创建表t11(idint)
查询正常,0行受影响(0.04秒)
示例4:关于角色的两个参数
activate_all_roles_on_login:连接mysql服务时是否自动激活角色。
mandatory_roles:强制所有用户使用默认角色。
-将mysql与管理员连接,
-设置默认激活角色
mysqlgt设置全局activat:/var/lib/mysql#mysql-uytt7-p3304-hytt-pc
...
mysqlgt显示授权
-
ytt7@%|
-
|在*上授权使用。*到;ytt7`@`%`|
|授权选择“ytt_new”。*到;ytt7`@`%`|
|将`db_datareader`@`%`授予`ytt7`@`%`|
-
集合中的3行(0.00秒)
示例5:createrole和cr:/var/lib/mysql#mysql-uytt8-p3304-hytt-pc
...
mysqlgt创建:访问被拒绝您需要(至少一个)创建用户权限来执行此操作
mysqlgtq
再见
-用ytt9登录。
:/var/lib/mysql#mysql-uytt9-p3304-hytt-pc
...
-可以创建角色和用户。
mysqlgt创建角色db_test2
查询正常,0行受影响(0.02秒)
mysqlgt创建用户ytt10
查询正常,0行受影响(0.01秒)
mysqlgtq
再见
这里,我们实际上看到创建用户包含创建角色,它可以创建用户和角色。
例6:mysql用户也可以作为角色。
-以管理员身份登录,创建用户ytt11、ytt12。
mysqlgt创建用户ytt11,ytt12
查询正常,0行受影响(0.01秒)
ytt_new上的mysqlgtgrantselect。*至ytt11
查询正常,0行受影响(0.01秒)
-将ytt11普通用户权限授予ytt12。
mysqlgt将ytt11授予ytt12
查询正常,0行受影响(0.01秒)
-查看ytt12的权限,可以看到你有ytt11的权限。
mysqlgt显示ytt12的授权
-
ytt12的拨款@%|
-
|在*上授权使用。*至`ytt12`@`%`|
|授予`ytt11`@`%`到`ytt12`@`%``|
-
集合中的2行(0.00秒)
-细化点,看ytt12有哪些具体权限。
mysqlgt使用ytt11显示ytt12的授权
-
ytt12的拨款@%|
-
|在*上授权使用。*到`ytt12`@`%`|
|授权选择“ytt_new”。*到`ytt12`@`%`|
|授予`ytt11`@`%`到`ytt12`@`%``|
-
集合中的3行(0.00秒)
示例7:撤销角色
角色撤销类似于以前的权限撤销。撤销或删除该角色,该角色将从拥有它的所有用户中删除。
-以管理员身份登录,并删除ytt2的角色。
mysqlgt从ytt2中撤销db_datareader
查询正常,0行受影响(0.01秒)
-删除所有角色
mysqlgt删除角色db_owner,db_datareader,db_datawriter
查询正常,0行受影响(0.01秒)
ytt1中也删除了相应的角色。
mysqlgt显示ytt1的授权
-
今年第一季度的拨款@%|
-
|在*上授权使用。*至`ytt1`@`%`|
-
集合中的1行(0.00秒)
此时此刻,我分七个目录来讲解各方面角色的使用和注意事项,希望对大家有所帮助。