现在的项目中会有很多接口,数据来源也可能是不同数据库或者是不同的用户下的表,给访问该表带来了一定的麻烦。这个时候就可以使用同义词来简化。

最近小编在oracle数据库中,执行A用户中的sql,A用户中的SQL中包含用户B中的几张表,结果执行报错,表或试图不存在。

1.创建同义词(同一个数据库中,不同用户下创建同义词)

---Create the synonym

create or replace synonym tableA

for user.tableA

2.删除同义词

drop synonym  tableA

3.将用户B的授权给用户A

命令:grant  xxx权限 on Table to 用户A
grant select,insert,update,delete,all on 表名 to 用户名
例如:将用户B的test表的查询权限赋予用户A这个用户
grant select on tableA to 用户A

4.如果跨库查询的话,我们创建同义词的时候还需要添加dblink(在不同的数据库之间创建,需要创建link)

CREATE [OR REPLACE] [PUBLIC] SYNONYM [ schema.] 同义词名称 FOR [ schema.] object [ @dblink ];

5.查看同义词

SELECT * FROM DBA_SYNONYMS WHERE SYNONYM_NAME IN ( 'SYSN_TEST','PUBLIC_TEST');

6.查询某个用户被赋予的系统权限

在oracle中,可利用“dba_sys_privs”查询用户的权限,“dba_sys_privs”用于描述授予用户和角色的系统权限,语法为“select * from dba_sys_privs where grantee='用户名'”,也可:

select * from DBA_SYS_PRIVS where grantee in ('XXX');---用户名

7.查看用户所拥有的角色

select * from dba_role_privs where  grantee in ('XXX');---用户名

oracle数据库赋权相关推荐

  1. oracle数据库赋权_Oracle角色权限创建用户赋权

    1.权限&用户 角色权限: Sysdba:可以改变字符集.创建删除数据库.登录之后用户是SYS(可以启动和关闭数据库) Sysoper:不可改变字符集.不能创.删数据库.登陆之后用户是PUBL ...

  2. oracle数据库赋权_实用的数据库赋权的存储过程,用于oracle

    存储过程对所有数据库内容进行赋权和同义词,赋权的帐号通过参数传入,本代码设定的帐号有6个. ----------Create on 2017-08-21 by i-24@qq.com publish ...

  3. oracle数据库赋权_oracle数据库用户之间授权

    今天遇到一个数据库的问题: 系统数据库用户下创建了几个视图用于外部系统开发报表使用,当外部系统提取视图数据时,需要通过一个只能访问需要视图权限的用户,于是想到给他创建一个新的用户,并给这个用户分配只能 ...

  4. oracle数据库赋权_oracle数据库删除赋权

    {"moduleinfo":{"card_count":[{"count_phone":1,"count":1}],&q ...

  5. PostgreSQL 数据库赋权命令

    我平时使用数据库很少会有赋权的操作,但是最近有个场景需要给某个用户设置只能操作哪些数据库和表还有序列.我分享一下我的经验,我用的是 PostgreSQL 数据库. 赋权命令语法 PostgreSQL ...

  6. oracle用户获取datameta权限,Oracle数据库提权(低权限提升至dba)

    0x01 Oracle存储过程"缺陷" 在 Oracle 的存储过程中,有一个有趣的特点:运行权限.运行权限分为两种,definer 和 invoker. definer 为函数创 ...

  7. oracle创建同义词授权,Oracle同义词赋权

    --1)创建测试用户 user1,user2,user3,并给user2和user3赋创建同义词的权限----------------------------------dba -- Create t ...

  8. oracle级联赋权,Oracle 级联with admin option 和 with grant option

    · 授权通过grant 语法:GRANT object_priv[(columns)][ON object] TO {user|role|public} [WITH GRANT OPTION] · 回 ...

  9. 离线安装Oracle数据库

    一.创建用户,规划安装路径 1.创建组.用户.设密 groupadd oinstall groupadd dba useradd -g oinstall -G dba oracle -d /home/ ...

  10. 第60天-权限提升-MYMSORA 等 SQL 数据库提权

    思维导图 权限提升 数据库提权 ​ 在利用系统溢出漏洞无果的情况下,可以采用数据库进行提权,但需要知道数据库提权的前提条件:服务器开启数据库服务及获取到最高权限用户密码.除 Access 数据库外,其 ...

最新文章

  1. java 重载 参数子类_java - Java中带有子类参数的函数重载 - 堆栈内存溢出
  2. Leetcode 90. 子集 II 解题思路及C++实现
  3. 【Cocosd2d实例教程三】Cocos2d瓦片地图的导入
  4. Redux Vuex
  5. Android中XML数据解析
  6. asp.net html5 input提交,Render ASP.NET TextBox as HTML5 Input type “Number
  7. java excel 列,使用Java读取Excel工作表的单列
  8. 架构如何为业务和技术“服务”(2)
  9. 计算机打开不显示桌面,电脑启动后不显示桌面怎么办
  10. windows Servers服务器系统时间总是自动更新为错误时间,修改了还是不对解决办法
  11. 如何用 Python 和 Pandas 分析犯罪记录开放数据?
  12. matplotlib 设置坐标轴位置(spines),设置坐标别名(xticks,yticks)
  13. 专业的机器人资讯与太空中的ROS
  14. 关于Scanner一些用法
  15. 激光雷达和相机的外参标定
  16. 如何自学Android(强烈推荐)
  17. linux打开网络摄像头失败,Opencv没有检测到linux上的firewire网络摄像头
  18. magicwatch2可以鸿蒙吗,荣耀手表2可以发微信吗?荣耀MagicWatch2支持微信消息回复吗...
  19. 简单易用的PDF转SVG程序
  20. pythonppt_用Python实现ppt转化图片(附带长图合并功能)

热门文章

  1. 如何免费注册一个域名?
  2. 用户活跃、留存、流失,终于讲清楚了!
  3. 使用nginx反向代理配置动态域名
  4. python tokenize怎么用_tokenize -- 对 Python 代码使用的标记解析器 — Python 3.7.9 文档...
  5. nltk文件下载以及word_tokenize运行问题解决
  6. 高仿Android网易云音乐OkHttp+Retrofit+RxJava+Glide+MVC+MVVM
  7. 喝多了,头痛,发篇喝酒坏处的文章,提提醒,适量饮酒
  8. Martin Fowler微服务论文--译文
  9. apache Fop 2.1 支持中文
  10. CF 贪心+dp(动态规划) 01背包(做与不做)