oracle 怎么授权用户 只能在指定的表空间中 创建表
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了oracle 怎么授权用户 只能在指定的表空间中 创建表相关的知识,希望对你有一定的参考价值。
oracle 怎么授权用户 只能在指定的表空间中 创建表
比如用户默认配置表空间是 bill_temp,在默认情况下允许用户直接创建表,但是为了数据管理 在该用户下不允许把表创建到除bill_temp以外的其他表空间!
sql:ALTER USER 用户名 IDENTIFIED BY 口令 DEFAULT TABLESPACE 表空间;
解释:上述语句就是给“用户名”用户指定了默认的表空间“表空间”,之后所有的表都会默认进行存储。
备注:一般表空间都是设置默认自动扩展的,所以一般不用担心存储超出最大存储的问题的。 参考技术A 首先查看用户所拥用的权限,把不相关的权限收回,再查看用户对表空间的权限
一、查看用户的权限
1.查看当前用户所拥有的系统权限
select * from session_privs;
2.查看数据库内的所有角色
selec * from dba_roles;
3.查看数据库所支持的最大角色数
SQL> show parameter role
max_enabled_roles integer 150 --该值可以修改
os_roles boolean FALSE
remote_os_roles boolean FALSE
4.查看当前用户所拥有的角色
select * from session_roles;
5.查看角色的嵌套关系和所授予的用户
select * from dba_role_privs order by 1;
6.其他查看角色和权限的命令
select * from role_sys_privs;
select * from dba_sys_privs;
二、查看用户表空间的权限
SQL> select * from user_ts_quotas;
如果可以在其它表空间上操作,修改用户;本回答被提问者采纳 参考技术B 如果一个账号刚刚创建,他是没有任何权限的,你首先要赋予其登陆的权利grant connect to a,
以及赋予其资源,
这样他就可以在他对应的表空间下操作了,
但是他如果不是用sys账号登陆,他是不可能在其他表空间创建表
oracle 创建一个用户,只能访问指定的对象
今天在开发接口时候,需要给接口开发公司提供一个ORACLE 用户,只能访问指定的表或视图,把过程记录到此
1.创建一个ORACLE 的用户
create user username identified by pws;
2.给用户授权 grant connect,resource to username; grant select on 表或视图名 to username;
到此,这个用户就可以访问指定的表了,可是用户登录
在PLSQL中用 Select * from 表或视频图名;提示表或视图不存在
查其原因:
因为指定的表或视图不在新建的用户下,要查询,语句如下:
select * from 用户名.表或视频图名
注:用户名是拥有表或视频图的用户
感觉这样写SQL 用些别扭.又给新建的用户授了一个权限
grant create synonym to username;
给他一个可以创建同义词的权根.
在用新用户登录PLSQL 执行
create or replace synonym 表或视频图名 for 用户名.表或视频图名;
通过以上步骤,在查询 表或视频图名时就可以直接写 "Select * from 表或视频图名" 了
摘自:http://www.cnblogs.com/BetterWF/archive/2012/07/03/2574416.html
以上是关于oracle 怎么授权用户 只能在指定的表空间中 创建表的主要内容,如果未能解决你的问题,请参考以下文章