`

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;
分享到:
评论

相关推荐

    oracle 添加用户 授权问题

    本文详细介绍了Oracle数据库中用户管理的基础知识,包括创建、删除用户,以及管理用户的权限等。正确地管理和控制用户权限对于维护数据库的安全性非常重要。通过掌握上述操作,您可以有效地管理Oracle数据库中的用户...

    【转载】oracle创建数据库后创建自己的用户

    - **角色**:Oracle中的角色是一组预定义或自定义的权限集合,可以一次性授予用户,简化权限管理。 - **表空间管理**:包括数据文件管理、表空间扩展策略、备份恢复等,是数据库性能和空间利用率的关键因素。 - **...

    oracle权限全集

    - 创建视图后,可以授予用户对视图的访问权限,而无需提供对底层表的直接访问。 10. **回滚段权限** - 用户可以被授予管理回滚段的权限,这在多用户环境中尤为重要,确保事务的一致性。 通过理解和熟练掌握这些...

    oracle用户账号管理和权限控制

    2. **访问控制**:确保只有经过授权的用户才能访问特定的数据库对象,防止数据泄露。 3. **可审计性**:记录数据库活动,以便追踪潜在的非法访问和操作,便于事后调查和数据恢复。 4. **语义保密性**:数据在存储时...

    Oracle表空间,用户,角色,触发器资料

    - 默认情况下,每个Oracle数据库有一个系统表空间(SYSTEM),但用户通常会创建额外的表空间以更好地管理数据和对象。 - 通过`SELECT TABLESPACE_NAME FROM SYS.ALL_TABLES WHERE TABLESPACE_NAME = 'DBAUDIT';`...

    oracle学习笔记002_创建删除数据库及新用户的创建

    在Oracle中,用户代表数据库的访问权限和对象的所有权。创建用户使用`CREATE USER`语句,指定用户名、密码、默认表空间和临时表空间。例如: ```sql CREATE USER newuser IDENTIFIED BY password DEFAULT ...

    Oracle11g用户安全与授权.pdf

    角色是一组权限的集合,可以被创建、授权给其他用户,从而实现权限的集中管理。例如,创建一个角色并授权给用户: ```sql SQL> create role r1; SQL> grant create table to r1; SQL> grant r1 to user1; ``` 角色...

    oracle权限管理基础

    在Oracle 10g和11g版本中,权限管理机制经过精心设计,为管理员提供了多种工具和策略来管理用户访问权限。本文将深入探讨Oracle权限管理的基础知识,包括基本概念、用户权限设置以及如何处理忘记密码的情况。 首先...

    Oracle新建用户、角色,授权,建表空间的sql语句

    在Oracle数据库管理中,创建...总结来说,Oracle数据库中的用户管理涉及创建用户、分配角色、授权、管理表空间以及设置密码策略等多个方面。通过合理的权限分配和角色设置,可以有效地控制数据库的访问和数据的安全性。

    Oracle用户和权限.pdf

    在Oracle中,每个用户都有独立的权限,可以创建和管理自己的数据库对象,如表、视图、存储过程等。本篇文章将深入探讨Oracle中用户创建、权限分配以及角色的概念。 首先,创建Oracle用户是通过`CREATE USER`命令...

    Oracle概要文件、用户权限和角色

    #### 五、用户表空间管理 ##### 5.1 缺省表空间 - 缺省表空间用于在用户创建数据库对象时(如表或索引)如果没有指定表空间时存放这些对象。 ##### 5.2 临时表空间 - 当SQL语句需要临时工作空间时,使用临时表...

    oracle实验报告 实验四

    - 通过实验, 不仅学会了如何使用DBCA创建数据库, 还掌握了如何创建表空间、用户以及进行权限管理。 - 实验过程中理解了数据库安全性的重要性, 并学会如何通过创建表空间和用户来提高安全性。 - 掌握了如何使用...

    Oracle 权限管理

    系统权限涉及到对数据库全局操作的控制,如创建表空间、备份数据库、执行DML语句等。对象权限则涉及对特定数据库对象(如表、视图、序列等)的操作,如SELECT、INSERT、UPDATE、DELETE等。 二、角色 角色是权限的...

    Oracle数据字典

    在Oracle中,数据字典视图是存放有关数据库信息的工具,其用途是描述数据的详细信息,例如表的创建者信息、创建时间、所属表空间以及用户访问权限等。用户在对数据库中的数据进行操作时遇到问题,可通过访问数据字典...

    Oracle 安全管理

    1-4 建立新用户时需考虑:选择合适的用户名和验证方式,指定用户存储模式对象的表空间,设置每个表空间的配额,设定默认表空间和临时表空间,以及向用户授予初始权限和角色。 1-5 创建用户语法:CREATE USER命令...

    Oracle安全性管理.pptx

    Oracle提供了一套精细的权限体系,包括系统权限(如CREATE TABLE、ALTER TABLE)和对象权限(如SELECT、UPDATE针对特定表的权限)。权限可以通过`GRANT`和`REVOKE`语句进行分配和撤销。此外,角色是权限的集合,可以...

    oracle系统权限列表[定义].pdf

    角色特权是将一组权限集合在一起,方便管理和分配。通过角色,管理员可以更有效地控制用户对数据库的访问。例如,可以创建一个角色,将所有与表相关的权限(CREATE TABLE, ALTER TABLE, etc.)赋予该角色,然后将该...

    oracle 编译存储过程 赋权 查询用户占用空间

    GRANT用于赋予用户或角色执行特定操作(如SELECT, INSERT, UPDATE, DELETE等)或访问特定对象(如表、视图、存储过程等)的权限。例如,`GRANT EXECUTE ON my_proc TO user1;`将允许'user1'执行名为'my_proc'的存储...

    Oracle数据库安全管理.pptx

    2. **用户管理**:用户管理是Oracle数据库安全管理的基础,包括创建、修改和删除用户,以及查询用户信息。初始用户如SYS和SYSTEM具有不同的权限,SYS是最高权限的DBA,而SYSTEM则用于辅助管理。SCOTT是一个用于测试...

Global site tag (gtag.js) - Google Analytics