`

Oracle创建表空间、创建用户、授权、授权对象的访问以及查看权限集合

 
阅读更多
CREATE TABLESPACE tab_ckbdata datafile ‘/oradata/tab_ckbdata001.bdf’ size 8192M,’/oradata/tab_ckbdata002.bdf’ size 8192M,’/oradata/tab_ckbdata003.bdf’ size 8192M,’/oradata/tab_ckbdata004.bdf’ size 8192M,’/oradata/tab_ckbdata005.bdf’ size 8192M,’/oradata/tab_ckbdata006.bdf’ size 8192M,’/oradata/tab_ckbdata007.bdf’ size 8192M;

CREATE TABLESPACE index_ckbdata datafile ‘/oradata/index_ckbdata001.bdf’ size 8192M,’/oradata/index_ckbdata002.bdf’ size 8192M;

CREATE USER hnckb IDENTIFIED BY oracle
DEFAULT TABLESPACE tab_ckbdata;

ALTER USER hnckb QUOTA UNLIMITED ON tab_ckbdata;
ALTER USER hnckb QUOTA UNLIMITED ON index_ckbdata;

GRANT debug any procedure, debug connect session TO hnckb;
grant select on sys.dba_pending_transactions to hnckb;
grant CREATE VIEW,CREATE JOB,CREATE SYNONYM to hnckb;
grant CONNECT,RESOURCE to hnckb;
1.标准角色
CONNECT
RESOURCE

2.系统权限
CREATE VIEW
CREATE DATABASE LINK
CREATE JOB
CREATE SYNONYM
UNLIMITED TABLESPACE
更改定额
命令:ALTER USER 名称 QUOTA 0 ON 表空间名
ALTER USER 名字 QUOTA (数值)K|M|UNLIMITED ON 表空间名;
使用方法:
A、控制用户数据增长
B、当用户拥有一定的数据,而管理员不想让他在增加新的数据的时候。
C、当将用户定额设为零的时候,用户不能创建新的数据,但原有数据仍可访问。

3.对象权限

DBA_PENDING_TRANSACTIONS (SELECT)  — XA事务支持

grant select on sys.dba_pending_transactions to user;
4.建议开放
DEBUG CONNECT SESSION                — 调试存储过程
例如:
GRANT debug any procedure, debug connect session TO hr;

Oracle创建表空间、创建用户、授权、授权对象的访问以及查看权限
1.创建临时表空间
Oracle临时表空间主要用来做查询和存放一些缓冲区数据。临时表空间消耗的主要原因是需要对查询的中间结

果进行排序。
临时表空间的主要作用:
索引create或rebuild
Order by 或 group by
Distinct 操作
Union 或 intersect 或 minus
Sort-merge joins

CREATE TEMPORARY TABLESPACE “TEST_TEMP”
    TEMPFILE ‘D:\ORACLE\PRODUCT\10.2.0\ORADATA\GIS\TEST_DATA.ora’
    SIZE 20M
AUTOEXTEND ON
NEXT 32M MAXSIZE 2048M
EXTENT MANAGEMENT LOCAL;

2.创建用户表空间
CREATE TABLESPACE “TEST_DATA”
    LOGGING
    DATAFILE ‘D:\ORACLE\PRODUCT\10.2.0\ORADATA\GIS\TEST_DATA.ora’
    SIZE 20M
AUTOEXTEND ON
NEXT 32M MAXSIZE 2048M
EXTENT MANAGEMENT LOCAL;

3.创建用户并设置其表空间
username:usertest
password:userpwd

CREATE USER usertest IDENTIFIED BY userpwd
DEFAULT TABLESPACE TEST_DATA
TEMPORARY TABLESPACE TEST_TEMP;

4.给用户授权
GRANT
  CREATE SESSION, CREATE ANY TABLE, CREATE ANY VIEW ,CREATE ANY INDEX, CREATE ANY PROCEDURE,
  ALTER ANY TABLE, ALTER ANY PROCEDURE,
  DROP ANY TABLE, DROP ANY VIEW, DROP ANY INDEX, DROP ANY PROCEDURE,
  SELECT ANY TABLE, INSERT ANY TABLE, UPDATE ANY TABLE, DELETE ANY TABLE
TO username;

首先授权用户testuser两个基本的角色权限

CONNECT角色:    –是授予最终用户的典型权利,最基本的     
   CREATE    SESSION    –建立会话

RESOURCE角色:    –是授予开发人员的    
   CREATE    CLUSTER         –建立聚簇 
   CREATE    PROCEDURE    –建立过程 
   CREATE    SEQUENCE      –建立序列 
   CREATE    TABLE              –建表 
   CREATE    TRIGGER          –建立触发器 
   CREATE    TYPE                –建立类型
   CREATE    OPERATOR       –创建操作者
   CREATE    INDEXTYPE      –创建索引类型
   CREATE    TABLE              –创建表

授权角色给用户的sql语句:
GRANT role TO username;

注意:这两个角色的权限可能需要在sys用户下给testuser授权
grant select on  csm_mid.pob_rtu to testuser;
grant connect, resource to  testuser;

假如现在将用户user1的表table1的select权限赋予testuser
以user1连接到oracle,执行以下sql语句
grant select on  table1 to testuser;

现在我们用testuser用户名连接后查询table1表的数据
select * user1.table1 from testuser;
注意:表table1之前必须要加上user1

如果我们希望查询表table1时,前面不要加user1,可以这样做:
首先授予testuser创建视图的权限
grant create view to testuser;

然后在在testuser用户先以user1.table1为基表创建视图v_user1_table1
create view v_user1_table1
as
select *
from user1.table1;
我们就可以用如下查询了:
select * from v_user1_table1;


5.查看用户权限

查看所有用户
SELECT * FROM DBA_USERS;
SELECT * FROM ALL_USERS;
SELECT * FROM USER_USERS;

查看用户系统权限
SELECT * FROM DBA_SYS_PRIVS;
SELECT * FROM USER_SYS_PRIVS;

查看用户对象或角色权限
SELECT * FROM DBA_TAB_PRIVS;
SELECT * FROM ALL_TAB_PRIVS;
SELECT * FROM USER_TAB_PRIVS;

查看所有角色
SELECT * FROM DBA_ROLES;

查看用户或角色所拥有的角色
SELECT * FROM DBA_ROLE_PRIVS;
SELECT * FROM USER_ROLE_PRIVS;

遇到no privileges on tablespace ‘tablespace ‘
alter user userquota 10M[unlimited] on tablespace;
分享到:
评论

相关推荐

    Oracle11g从入门到精通2

    《Oracle11g从入门到精通》面向数据库管理人员和数据库开发人员,从实际角度出发,系统地介绍了数据库和Oracle的相关概念和原理、Oracle的数据库管理(如安装与启动,用户权限、备份与恢复等),以及Oracle的应用...

    Oracle11g从入门到精通

    《Oracle11g从入门到精通》面向数据库管理人员和数据库开发人员,从实际角度出发,系统地介绍了数据库和Oracle的相关概念和原理、Oracle的数据库管理(如安装与启动,用户权限、备份与恢复等),以及Oracle的应用...

    oracle学习文档 笔记 全面 深刻 详细 通俗易懂 doc word格式 清晰 连接字符串

    说明:Oracle中需要创建用户一定是要具有dba(数据库管理员)权限的用户才能创建,而且创建的新用户不具备任何权限,连登录都不可以。 用法:create user 新用户名 identified by 密码 例子: 2. 修改密码 说明:...

    Oracle.11g.从入门到精通 (2/2)

    10.5.2 创建恢复目录所用的表空间 10.5.3 创建RMAN用户并授权 10.5.4 创建恢复目录 10.5.5 注册目标数据库 10.5.6 使用RMAN程序进行备份 10.5.7 使用RMAN程序进行恢复 10.6 自动备份与恢复 10.6.1 闪回数据库 10.6.2...

    Oracle.11g.从入门到精通 (1/2)

    10.5.2 创建恢复目录所用的表空间 10.5.3 创建RMAN用户并授权 10.5.4 创建恢复目录 10.5.5 注册目标数据库 10.5.6 使用RMAN程序进行备份 10.5.7 使用RMAN程序进行恢复 10.6 自动备份与恢复 10.6.1 闪回数据库 10.6.2...

    oracle数据库经典题目

    数据库表空间分为系统表空间和非系统表空间两类,其中非系统表空间包括撤销表空间、临时表空间和用户表空间等。 SYSTEM表空间主要用于存储数据库的数据字典、PL/SQL程序的源代码和解释代码、数据库对象的定义。撤销...

    Oracle Database 11g初学者指南--详细书签版

    在过去的14年中,他与IanAbramson和MichaelCorey为OraclePress合著了一系列图书.Abbey在国际Oracle用户团体非常活跃,经常出席COLLABORATE、OraclecOpenWorld和区域性用户组会议.  Michael J.Corey是Ntirety...

    oracle数据库11G初学者指南.Oracle.Database.11g,.A.Beginner's.Guide

    《Oracle Database 11g初学者指南》能使读者快捷地掌握Oracle Database 11g的基础知识。通过自我评估教程,介绍了核心数据库技术、管理员职责、高可用性以及大型数据库特性。《Oracle Database 11g初学者指南》带领...

    Oracle 10g 开发与管理

    4.表空间(Table Spaces) P34 18 三. 内存结构 19 1.数据缓冲区: 内存的40% 19 2.日志缓冲区: 19 3.数据字典缓冲区: 19 4.共享池 内存的10% 19 5.大池 5-10M 20 6.JAVA池 不小于20M 20 7.Streams池 20 8.软件...

    asp.net知识库

    在 SQL Server 2005 中使用表值函数来实现空间数据库 SQL Server 2005的30个最重要特点 同时安装sql2000和sql2005的经验 类如何与界面绑定 在Asp.net中如何用SQLDMO来获取SQL Server中的对象信息 使用Relations建立...

    java开源包11

    JSEditor 是 Eclipse 下编辑 JavaScript 源码的插件,提供语法高亮以及一些通用的面向对象方法。 Java数据库连接池 BoneCP BoneCP 是一个高性能的开源java数据库连接池实现库。它的设计初衷就是为了提高数据库连接...

    java开源包4

    JSEditor 是 Eclipse 下编辑 JavaScript 源码的插件,提供语法高亮以及一些通用的面向对象方法。 Java数据库连接池 BoneCP BoneCP 是一个高性能的开源java数据库连接池实现库。它的设计初衷就是为了提高数据库连接...

Global site tag (gtag.js) - Google Analytics