Oracle实例、用户、权限和角色

  1、数据库的实例:数据库创建后会有一系列为该数据库提供服务的内存空间和后天进程,称为该数据库的实例。每一个数据库至少会有一个实例为其服务。实例中的内存结构称为系统全局区(SGA),系统会根据当前计算机系统的性能给SGA分配非常可观的内存空间。

  2、虽然一个Oracle数据库服务器中可以安装多个数据库,但是一个数据库需要占用非常大的内存空间,因此一般一个服务器只安装一个数据库。每一个数据库可以有很多用户,不同的用户拥有自己的数据库对象(比如:数据库表),一个用户如果访问其他用户的数据库对象,必须由对方用户授予一定的权限。不同的用户创建的表,只能被当前用户访问。因此在Oracle开发中,不同的应用程序只需使用不同的用户访问即可。

  3、Oracle 用户和权限

  Oracle中,一般不会轻易在一个服务器上创建多个数据库,在一个数据库中,不同的项目由不同的用户访问,每一个用户拥有自身创建的数据库对象,因此用户的概念在Oracle中非常重要。Oracle的用户可以用CREATE USER命令来创建。其语法是:

  CREATE USER 用户名 IDENTIFIED BY 口令 [ACCOUNT LOCK|UNLOCK]

  LOCK|UNLOCK创建用户时是否锁定,默认为锁定状态。锁定的用户无法正常的登录进行数据库操作。

  尽管用户成功创建,但是还不能正常的登录Oracle数据库系统,因为该用户还没有任何权限。如果用户能够正常登录,至少需要CREATE SESSION系统权限。

  Oracle用户对数据库管理或对象操作的权利,分为系统权限和数据库对象权限。系统权限比如:CREATE SESSION,CREATE TABLE等,拥有系统权限的用户,允许拥有相应的系统操作。数据库对象权限,比如对表中的数据进行增删改操作等,拥有数据库对象权限的用户可以对所拥有的对象进行对应的操作。

  还有一个概念就是数据库角色(role),数据库角色就是若干个系统权限的集合。下面介绍几个常用角色:

  ①CONNECT角色,主要应用在临时用户,特别是那些不需要建表的用户,通常只赋予他们CONNECT role。CONNECT是使用Oracle的简单权限,拥有CONNECT角色的用户,可以与服务器建立连接会话(session,客户端对服务器连接,称为会话)。

  ② RESOURCE角色,更可靠和正式的数据库用户可以授予RESOURCE role。RESOURCE提供给用户另外的权限以创建他们自己的表、序列、过程(procedure)、触发器(trigger)、索引(index)等。

  ③ DBA角色,DBA role拥有所有的系统权限----包括无限制的空间限额和给其他用户授予各种权限的能力。用户SYSTEM拥有DBA角色。

  一般情况下,一个普通的用户(如SCOTT),拥有CONNECT和RESOURCE两个角色即可进行常规的数据库开发工作。

  可以把某个权限授予某个角色,可以把权限、角色授予某个用户。系统权限只能由DBA用户授权,对象权限由拥有该对象的用户授权,授权语法是:GRANT角色|权限 TO 用户(角色)

  //回收权限

  REVOKE 角色|权限 FROM 用户(角色)

  //修改用户的密码

  ALTER USER 用户名 IDENTIFIED BY 新密码

  //修改用户处于锁定(非锁定)状态

  ALTER USER 用户名 ACCOUNT LOCK|UNLOCK

时间: 2024-11-11 03:34:08

Oracle实例、用户、权限和角色的相关文章

oracle的用户权限和角色

oracle的用户权限和角色 系统权限 定义:指特定类型的sql命令的权利.  常见的有: create  session  连接数据库 create   table    建表 create    view    建视 create  public  synonym  建同义词 create procedure  建过程.函数.包 create trigger    建触发器 create cluster   建簇 如何使用select来查询有哪些系统权限 select * from syst

如何实现Oracle修改用户权限 .

这里将介绍Oracle修改用户权限的实现过程,包括一些权限管理方面的东西.希望通过本文能对大家了解Oracle修改用户权限有所帮助. ORACLE数据库用户与权限管理 ORACLE是多用户系统,它允许许多用户共享系统资源.为了保证数据库系统的安全,数据库管理系统配置了良好的安全机制. 2. 1 ORACLE数据库安全策略 建立系统级的安全保证 系统级特权是通过授予用户系统级的权利来实现,系统级的权利(系统特权)包括:建立表空间.建立用户.修改用户的权利.删除用户等.系统特权可授予用户,也可以随时

项目一:第十三天 1、菜单数据管理 2、权限数据管理 3、角色数据管理 4、用户数据管理 5、在realm中动态查询用户权限,角色 6、Shiro中整合ehcache缓存权限数据

1 课程计划 菜单数据管理 权限数据管理 角色数据管理 用户数据管理 在realm中动态查询用户权限,角色 Shiro中整合ehcache缓存权限数据         2 菜单数据添加 2.1 使用combotree父菜单项数据     1. 页面:menu_add.jsp 2. 修改组件样式:easyui-combotree,修改url  树型表格treeGrid跟下来数combotree要求数据格式基本一致. Combotree通过text属性展示文本.   3. 使用treegrid组件的

Navicat连接Oracle数据库用户权限问题

解决Navicat连接Oracle数据库用户权限问题: 第一步:在cmd窗口运行[sqlplus] 第二步:输入Oracle的用户名和口令连接Oracle数据库. 第三步:执行授权代码 [grant dba to 用户名;] 第四部:执行[grant all privileges to 用户名;] 原文地址:https://www.cnblogs.com/lyang-a/p/11638494.html

Oracle(控制用户权限)

权限允许用户访问属于其它用户的对象或执行程序, ORACLE系统提供权限:Object 对象级.System 系统级 查看权限的数据字典: 字典名 含义 ROLE_SYS_PRIVS System privileges granted to roles ROLE_TAB_PRIVS Table privileges granted to roles USER_ROLE_PRIVS Roles accessible by the user USER_TAB_PRIVS_MADE Object pr

用户权限、角色管理

用户管理 1.创建用户,用户第一次登录后,需要重新更改密码 [email protected]>create user sangmu identified by sangmu password expire; 2.给新创建的用户授予创建会话的权限 [email protected]>grant create session to sangmu; 3.将登录会话的权限给收回 [email protected]>revoke create session from sangmu; 4.查看用

用户权限及角色管理

范例:创建一个新的用户:c##mldnuser,密码为:java_android CREATE USER c##mldnuser IDENTIFIED BY java_android DEFAULT TABLESPACE mldn_data TEMPORARY TABLESPACE mldn_temp QUOTA 30M ON mldn_data QUOTA 20M ON users ACCOUNT UNLOCK PASSWORD EXPIRE ; 范例:通过dba_users查看用户信息 SE

ORACLE 11g用户权限管理查询

1.查看数据库里所有用户各自拥有的角色: select * from (select distinct connect_by_root grantee username,granted_role from dba_role_privs connect by prior granted_role =grantee ) a where exists (select 1 from dba_users b where b.username=a.username) order by 1,2; 2.查看数据

Jenkins用户权限以及角色配置

jenkins添加用户权限: 1. 配置插件 jenkins初次登陆后,要先注册一个用户作为管理员: 依次点击"系统管理"->"Configure Global Security" 启动安全模式,按如图设置: 2. 配置权限 在系统管理页面点击Manage and Assign Roles进入角色管理页面: 进去如下: 1.管理角色(Manage Roles) 选择该项可以创建全局角色.项目角色,并可以为角色分配权限. 如上图,分别创建了admin.membe

Oracle 12c 用户创建、角色、权限

一.创建用户 创建用户默认的是container=all,在cdb中只能创建全局用户(c##开头),会在cdb和所有的pdb中创建该用户(但是pdb中的全局用户需要另外授权才能够在pdb中访问).在pdb中只能创建的用户为本地用户 SQL> show con_name; CON_NAME ------------------------------ CDB$ROOT SQL> create user user1 identified by user1; create user user1 id