Oracle用户与模式(创建,修改,删除用户和用户权限管理)

一.模式

模式又称方案(Schema),是用户所拥有的所有数据库对象的集合,如表、索引、触发器等逻辑对象都存储在模式对象中。模式的名称和用户的名称相同,用户与模式一一对应。默认情况下,用户所创建的数据库对象都保存在自己的同名模式中

注意事项:

用户可以直接访问自己模式中的对象,如要访问其他模式中的对象,则必须具有相应的对象权限数据库中的对象名在同一个模式中是唯一的,但在不同模式中可以具有相同的对象名。当用户访问其他模式中的对象时,必须加模式名来做前缀。即:模式名.对象名

1.模式的选择与切换

如果用户以NORMAL身份登录,则进入同名模式。
如果用户以SYSDBA身份登录,则进入SYS模式。

CONNCE SYS/ORACLE10  AS SYSDBA

如果用户以SYSOPER身份登录,则进入PUBLIC模式

CONN SYS/ORACLE 10  AS  SYSOPER

2.模式对象与非模式对象

模式对象
主要包括表、索引、DML触发器、视图、存储过程、程序包、JAVA类、自定义类型等。
注意:模式对象名最多为30个字符,且小写字母会被转换为大写字母。如使用的不是标准标识符,则需要将其封装在双引号中。非模式对象
包括表空间、用户、角色、概要文件等。

二.创建用户

1 ORACLE 初始用户

SYS 是数据库中具有最高权限的数据库管理员,可以启动、修改、关闭数据库,拥有数据字典。

SYSTEM 是一个辅助的数据库管理员,不能启动和关闭数据库,但可以进行其他一些管理工作,如创建用户、删除用户等。

PUBLIC 是一个用户组,数据库中任何一个用户都属于该组成员。要为数据库中每个用户都授予某个权限,只需要把权限授予PUBLIC 就可以了。

 2 查询用户信息的数据字典

1)ALL_USERS:包含数据库所有用户的用户名、用户id 和用户创建时间。
2)DBA_USERS:包含数据库所有用户的详细信息。
3)USER_USERS:包含当前用户的详细信息。
4)DBA_TS_QUOTAS:包含所有用户的表空间配额信息。
5)USER_TS_QUOTAS:包含当前用户的表空间配额信息。

3、SQL语句创建用户

CREATE  USER user_name
IDENTIFIED BY password
[DEFAULT TABLESPACE  tablespace_name]
[TEMPORARY TABLESPACE temp_tablespace_name]
[QUOTA [number[K|M] |UNLIMITED] ON tablespace_name]
[ACCOUNT LOCK|UNLOCK];

语法说明:
IDENTIFIED BY:指定帐户的初始口令
DEFAULT TABLESPACE :用户的默认表空间
TEMPORARY TABLESPACE :用户的临时表空间
QUOTA:用户在表空间中使用的限额
ACCOUNT :锁定或解锁帐户
【例】使用SQL语句创建用户orac_test,默认表空间为USERS,临时表空间为TEMP.

CREATE  USER orac_test
IDENTIFIED BY oracle
DEFAULT TABLESPACE USERS
TEMPORARY TABLESPACE TEMP;

【例】使用用户orac_test连接数据库注意:初始建立的数据库用户是没有任何权限的,不能执行任何数据库操作

三.权限管理

1、在 ORACLE中,权限分为两类:

(1)系统权限
       在数据库级别执行某种操作的权限,或针对某一类对象执行某种操作的权限。如 CREATE SESSION CREATE TABLE。(2)对象权限
        对某个特定的数据库对象执行某种操作的权限。如对特定表的插入、删除、修改、查询的权限。

2 、在ORACLE 中,将权限授予用户有如下两种方法:

(1)直接授权
   利用 GRANT 命令直接为用户授权。(2)间接授权
   先将权限授予角色,然后再将角色授予用户。

3、在给用户授权时,应该注意以下4个方面

(1) 只有DBA才应当拥有ALTER DATABASE系统权限。(2)应用程序开发者一般需要拥有CREATE TABLE  CREATE VIEW和CREATE INDEX等系统权限。(3)普通用户一般只具有CREATE SESSION 系统权 限。(4)只有授权时带有WITH ADMIN OPTION子句时,用户可以将获得权限授予其他用户。

 4 、给用户赋予权限

语法格式:  GRANT 权限或角色 TO 用户;
【例】使用SQL语句给用户orac_test授予与删除CREATE SESSION系统权限

   GRANT CREATE SESSION TO orac_test;
REVOKE CREATE SESSION from orac_test;

5、使用数据字典user_users查看当前用户的详细信息

SQL>SELECT username FROM  user_users;

6、在当前用户下创建数据表,观察提示。

7、以 SYS登录,授权ORAC_TEST用户CREATE TABLE等权限

8、重新以ORAC_TEST登录,创建表,观察提示。     

如果成功创建表之后,在表中录入数据:我们可以 重新以SYS登录,修改ORAC_TEST的默认表空间使用配额

alter user orac_test quoto 1m on users

然后再以ORAC_TEST用户登录,向表中录入数据,观察提示。补充:角色管理角色:一系列相关权限的集合。ORACLE中有三个常用的预定义角色:CONNECT  RESOURCEDBA

四.修改用户

ALTER  USER  user_name
IDENTIFIED BY password
[DEFAULT TABLESPACE  tablespace_name]
[TEMPORARY TABLESPACE temp_tablespace_name]
[QUOTA [number[K|M] |UNLIMITED] ON tablespace_name]
[PASSWORD EXPIRE]password expire://用来设置用户口令过期,失效,强制用户登录数据库时候必须修改口令.
[ACCOUNT LOCK|UNLOCK];

【例】使用SQL语句更改用户orac_test的密码;

 ALTER USER orac_test
     IDENTIFIED BY zhl123

【例】使用SQL语句锁定用户orac_test;

 ALTER USER orac_test
     ACCOUNT lock;

【例】使用SQL语句解锁用户orac_test;

   ALTER USER orac_test
     ACCOUNT unlock;

五.删除用户

语法格式:

DROP  USER  user_name
[CASCADE]
说明:

如果用户已创建了模式对象,在删除用户时必须增加CASCADE选项,表示删除用户时连同该用户创建的对象也删除,否则系统将提示错误信息
例:使用SQL语句删除用户orac_test;

     DROP USER orac_test  CASCADE
  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Oracle用户模式是指在Oracle数据库中,为每个用户分配一个独立的数据库对象集合,用于存储该用户的数据表、视图、存储过程、触发器等数据库对象。Oracle用户模式的设计需要考虑以下几个方面: 1. 用户权限和角色 在Oracle数据库中,可以为每个用户分配不同的权限和角色,控制用户数据库对象的访问和操作权限。可以根据不同的业务需求,为用户分配不同的权限和角色,保证系统的安全性和稳定性。 2. 数据库对象设计 在Oracle用户模式中,需要设计合理的数据表、视图、存储过程、触发器等数据库对象,用于存储用户的数据和业务逻辑。需要根据不同的业务需求,设计相应的数据库对象,保证系统的高效性和稳定性。 3. 存储空间管理 在Oracle用户模式中,需要进行存储空间管理,包括数据库对象的创建修改删除等操作。需要考虑数据库对象的大小、数量、增长趋势等因素,进行存储空间规划和管理,保证系统的可扩展性和稳定性。 4. 数据库对象的备份和恢复 在Oracle用户模式中,需要进行数据库对象的备份和恢复操作,以保证数据的安全性和可靠性。可以使用Oracle数据库提供的备份和恢复工具,如RMAN等进行备份和恢复操作。同时还需要定期进行数据备份和恢复测试,确保备份和恢复方案的有效性和可靠性。 5. 性能调优和优化 在Oracle用户模式中,需要进行性能调优和优化,以提高系统的响应速度和性能表现。可以使用多种性能调优和优化技术,如SQL调优、索引优化、分区优化等,可以提高系统的响应速度和性能表现。可以使用Oracle数据库提供的性能监控工具,如AWR、ASH等进行性能分析和诊断,找出系统瓶颈和性能问题,进行优化和调整。 总之,Oracle用户模式的设计需要综合考虑系统的可靠性、性能、安全性和可扩展性等多方面因素,需要有经验丰富的数据库管理员和技术专家来进行规划和管理。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值