目录

  • 目录
  • Oracle的用户
    • 通过系统用户来登陆SQLPlus
    • system和sys的区别
    • 查看登陆的用户
    • 启用和锁定一个用户
      • 启用用户
      • 锁定用户
    • 创建用户
    • 修改用户
    • 删除用户
  • 角色权限
  • 常用的用户相关数据字典

Oracle的用户

用户:User,通俗的讲就是访问oracle数据库的账号。
在oracle中,可以对用户的各种安全参数进行控制,以维护数据库的安全性,这些概念包括模式(schema)、权限、角色、存储设置、空间限额、存取资源限制、数据库审计等。每个用户都有一个口令,使用正确的username/password才能登录到数据库进行数据存取。

Oracle 成功安装后默认拥有下面几个系统用户

  • sys/system:管理员账户,sys的权限为最高,必须以管理员的身份(sysdba|sysoper)登陆这用户
  • sysman:也是管理员级别的用户,用于操作企业管理器
  • Scott:默认是被锁定的,我们需要去解锁他,才可以被登陆
    注意:前三个用户使用统一密码,而scott用户的默认密码为tiger

通过系统用户来登陆SQLPlus

Example1

[oracle@jmilk ~]$ sqlplusSQL*Plus: Release 10.2.0.1.0 - Production on Thu May 26 00:13:57 2016Copyright (c) 1982, 2005, Oracle.  All rights reserved.Enter user-name: system/fanguijuConnected to:
Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - 64bit Production
With the Partitioning, OLAP and Data Mining options

Example2

SQL> connect sys/fanguiju
ERROR:
ORA-28009: connection as SYS should be as SYSDBA or SYSOPER          #表示sys不能以普通的身份登陆,必须指定以管理员sysdba的身份登陆Warning: You are no longer connected to ORACLE.
SQL> connect sys/fanguiju as sysdba

Example3

connect sys/fanguiju @Server as sysdba
#当数据库和数据库服务没有安装在同一台服务器时,需要指定登陆的@ServerName来指定登陆到的服务器。

system和sys的区别

【system】用户可以使用normal身份登陆。
【sys】用户需要使用“SYSDBA”或者“SYSOPER”的身份登陆。

查看登陆的用户

Example1:Show user指令,查看登陆的当前用户

SQL> conn /as sysdba
Connected.
SQL> show user
USER is "SYS"

Example2:使用数据字典dba_users
数据字典是数据库提供的内建二维表,用于查看数据库信息。
dba_users 数据字典的字段,可以查看Oracle RDBMS中DEMO数据库中的管理员账户信息。

SQL> desc dba_users;                    #显示数据字典dba_users的表结构
 Name                      Null?    Type
 ----------------------------------------- -------- ----------------------------
 USERNAME 用户名称                     NOT NULL VARCHAR2(30)
 USER_ID  用户的编号            NOT NULL NUMBER
 PASSWORD   用户的密码                       VARCHAR2(30)
 ACCOUNT_STATUS  账户状态              NOT NULL VARCHAR2(32)
 LOCK_DATE  锁定的日期                   DATE
 EXPIRY_DATE                        DATE
 DEFAULT_TABLESPACE            NOT NULL VARCHAR2(30)
 TEMPORARY_TABLESPACE              NOT NULL VARCHAR2(30)
 CREATED                   NOT NULL DATE
 PROFILE                   NOT NULL VARCHAR2(30)
 INITIAL_RSRC_CONSUMER_GROUP                VARCHAR2(30)
 EXTERNAL_NAME                      VARCHAR2(4000)SQL> select username from dba_users;USERNAME
------------------------------
MGMT_VIEW
SYS
SYSTEM
DBSNMP
SYSMAN
SCOTT
OUTLN
MDSYS
ORDSYS
EXFSYS
DMSYSUSERNAME
------------------------------
WMSYS
CTXSYS
ANONYMOUS
XDB
ORDPLUGINS
SI_INFORMTN_SCHEMA
OLAPSYS
TSMSYS
BI
PM
MDDATAUSERNAME
------------------------------
IX
SH
DIP
OE
HR27 rows selected.

启用和锁定一个用户

启用用户

一个用户要登陆的前提条件就是这个用户不能被锁定
ALTER USER username ACCOUNT unlock
Example

SQL> alter user scott account unlock;User altered.

锁定用户

ALTER USER username ACCOUNT LOCK

创建用户

基本语法

CREATE USER username IDENTIFIED BY password  DEFAULT TABLESPACE tablespace TEMPORARY TABLESPACE tablespace PROFILE profile QUOTA integer|UNLIMITED ON tablespace

各选项含义如下

  • IDENTIFIED BY password:指定用户密码;
  • DEFAULT TABLESPACE tablespace:默认表空间;
  • TEMPORARY TABLESPACE tablespace:临时表空间;
  • PROFILE profile|DEFAULT:用户资源文件;
  • QUOTA integer[K|M]|UNLIMITED ON tablespace:用户在表空间上的空间使用限额,可以指定多个表空间的限额。
    Example
CREATE USER us1 IDENTITIED BY abc123
DEFAULT TABLESPACE user01
TEMPORARY TABLESPACE temp
PROFILE DEFAULT
QUOTA 1000M ON user01; 

创建新用户后登陆出现错误:ORA-01045
原因:A connect was attempted to a userid which does not have create session privilege. 用户没有创建会话的权限。
解决方法:为没有权限的用户赋予权限:

Grant create session to USERNAME;

修改用户

修改用户的语法是与创建用户的语法类似的,主要是 CREATE USER 变成 ALTER USER。
基本语法

ALTER USER username IDENTIFIED BY password  DEFAULT TABLESPACE tablespace TEMPORARY TABLESPACE tablespace PROFILE profile QUOTA integer|UNLIMITED ON tablespace

删除用户

删除用户,是将用户及用户所创建的schema对象从数据库删除。
Example

SQL>DROP USER us1;
#若用户us1含有schema对象,则无上述语句将执行失败,须加入关键字CASCADE才能删除,意思是连并其对象一起删除,如下:
SQL>DROP USER us1 CASCADE;

角色权限

  • SYSOPER角色的权限(公司的运营主管),即数据库操作员权限,权限包括:

    • 打开数据库服务器
    • 关闭数据库服务器
    • 备份数据库
    • 恢复数据库
    • 日志归档
    • 会话限制
  • SYSDBA角色的权限(看成公司的CEO)权限包括:

    • 打开数据库服务器
    • 关闭数据库服务器
    • 备份数据库
    • 恢复数据库
    • 日志归档
    • 会话限制
    • 管理功能
    • 创建数据库
  • NORMAL权限类似企业的普通员工,如:SCOTT

注意:sys和system是Oracle Database的系统用户,而SYSDBA、SYSOPER、NORMAL为登陆的方式,即用户以什么角色来登陆到数据库服务器。

常用的用户相关数据字典

ORACLE中数据字典视图分为3大类,用前缀区别,分别为:USER,ALL 和 DBA,许多数据字典视图包含相似的信息。

  • USER_*:有关用户所拥有的对象信息,即用户自己创建的对象信息
  • ALL_*:有关用户可以访问的对象的信息,即用户自己创建的对象的信息加上其他用户创建的对象但该用户有权访问的信息
  • DBA_*:有关整个数据库中对象的信息

这里的*可以为TABLES, INDEXES, OBJECTS, USERS等。

查看所有用户

select * from dba_users;       #查看所有的系统用户
select * from all_users;
select * from user_users;      #查看所有的普通用户

查看用户系统权限

select * from dba_sys_privs;
select * from all_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;

查看当前用户的缺省表空间

select username,default_tablespace from user_users;

查看某个角色的具体权限:

grant connect,resource,create session,create view to TEST;

查看RESOURCE具有那些权限

SELECT * FROM DBA_SYS_PRIVS WHERE GRANTEE='RESOURCE';

Example:限制user1用户只允许100个并发连接

SQL> alter system set resource_limit=true;
System altered
SQL> create profile profile_user1 limit sessions_per_user 100;
Profile created
SQL> ALTER USER user1 profile profile_user1;
User altered

Oracle 用户概念与基本操作相关推荐

  1. oracle基本概念和术语

    oracle基本概念和术语      ChinaITLab收集整理  2006-3-15  保存本文  推荐给好友  QQ上看本站  收藏本站 ---------------------------- ...

  2. Oracle用户管理学习总结

    Oracle 用户管理 一.用户的概念 用户,即user,通俗的讲就是访问oracle数据库的"人".在oracle中,可以对用户的各种安全参数进行控制,以维护数据库的安全性,这些 ...

  3. Oracle基本概念与数据导入

    Oracle基本概念 实例 一个Oracle实例(Oracle Instance)有一系列的后台进程(Backguound Processes)和内存结构(Memory Structures)组成.一 ...

  4. 【数据库】Oracle用户、授权、角色管理

    创建和删除用户是Oracle用户管理中的常见操作,但这其中隐含了Oracle数据库系统的系统权限与对象权限方面的知识.掌握还Oracle用户的授权操作和原理,可以有效提升我们的工作效率. Oracle ...

  5. oracle的一些基本操作,Oracle中的一些基本操作

    关于Oracle中的一些基本操作,包括表空间操作,用户操作,表操作 1 --创建表空间 2 create tablespace itheima 3 datafile 'I:\oracle\table\ ...

  6. Oracle用户和模式的区别

    Oracle用户和模式的区别 Oracle用户是Oracle数据库中的重要概念,下面就为您介绍Oracle用户和模式的区别,希望对您学习Oracle用户方面能够有所帮助. (一)什么Oracle叫用户 ...

  7. oracle导出数据视频教程,Oracle数据导入导出基本操作示例

    Oracle数据导入导出基本操作示例 数据导出 a.将数据库orcl完全导出,用户名user 密码password 导出到D:\dc.dmp中 exp user/password@orcl   fil ...

  8. oracle表空间默认增长大小,Oracle 用户表空间查看、修改大小、设置自增长等

    分类: Oracle 首先登入某个用户,查看某个用户在哪个表空间下: select username,default_tablespace from user_users; 查看该用户下所有的表: s ...

  9. oracle 基本概念和与informix对照

    oracle 基本概念和与informix对照 一.概念 用户:informix直接使用操作系统的用户管理系统,一般使用root和informix作为超级操作员,对其他用户进行管理.oracle有自己 ...

最新文章

  1. Google综述:细数Transformer模型的17大高效变种
  2. AnyProxy代理
  3. JAVA怎么创建对象组_java – 如何根据特定字段创建一组有序的对象?
  4. iOS获取键盘的高度
  5. adxl276怎么添加到proteus中_奶粉中的营养强化剂和食品添加剂是怎么一回事?
  6. 安装与配置-以前的某个程序安装已在安装计算机上创建挂起的文件操作......
  7. java log4j权限被否定_SLF4J简介与使用(整合log4j)
  8. 台式计算机哪款好,台式一体机电脑哪款好
  9. ReactWebpack 环境安装
  10. Java实习日记(5)
  11. 统考计算机各题型分数,计算机等级考试分值
  12. excel函数交叉定位查找内容+根据内容查找行列号(反向查找)
  13. Handler消息机制之深入理解Message.obtain()
  14. 机器学习之线性回归缩减维度
  15. 美国计算机硕士不接受雅思,美国留学:不接受雅思的大学盘点
  16. 多线程下载神器IDM,永久使用
  17. 月GMV超3000万,中小商家如何跻身快手电商头部?
  18. 常用英语短语或者句子
  19. 影目科技获千万美元融资背后,挚文集团“落子”元宇宙
  20. 线段树模板(来自胡浩大牛)

热门文章

  1. python安装cv2模块_pythonimportcv2importError:DLLloadfailed:找不到指定模块
  2. 2010 模板下载 罗斯文_俄罗斯人过年必看电影 | 新年枞树 @鱼子酱字幕组
  3. 架设国外服务器怎么维护,关于架设海外服务器这些事情你了解吗
  4. Xcode模拟器相关操作
  5. Excel ,三步 快速实现应用一个公式到一列或一行中
  6. 他们花一百万让你的票圈广告更好看,还被ACM点了赞
  7. 马斯克很着急:加速打造“月球电梯”,他要从NASA手中抢到这一单
  8. 刚刚,马斯克再次创造航天历史!SpaceX首次载人发射任务成功
  9. 沙发变身遥控器,涂鸦里藏PCB,MIT技术宅的智能家居竟然是这样
  10. 让模糊图片变视频,找回丢失的时间维度,MIT这项新研究简直像魔术