第二章用户与权限_第1页
第二章用户与权限_第2页
第二章用户与权限_第3页
第二章用户与权限_第4页
第二章用户与权限_第5页
已阅读5页,还剩5页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、用户和权限一、 用户介绍ORACLE用户是学习ORACLE数据库中的基础知识,Oracle数据库中默认为我们提供了30个用户,我们可以通过all_users进行查询,下面就介绍下类系统常用的默认ORACLE用户:1. sys用户:超级用户,完全是个SYSDBA(管理数据库的人)。拥有dba,sysdba,sysoper等角色或权限。是oracle权限最高的用户,登录时不能用normal。2. system用户:超级用户,默认是SYSOPEER(操作数据库的人),不过它也能以SYSDBA的权限登陆。拥有普通dba角色权限。3. scott用户:是个演示用户,是让你学习Oracle用的。二、 常用

2、命令学习oracle,首先我们必须要掌握常用的基本命令,oracle中的命令比较多,常用的命令如下:1. 登录命令(sqlplus)说明:用于登录到oracle数据库用法:sqlplus 用户名/密码 as sysdba注意:当用特权用户登录时,必须带上sysdba例子:普通用户登录sys用户登录操作系统的身份登录2. 连接命令(conn)说明:用于连接到oracle数据库,也可实现用户的切换用法:conn 用户名/密码 as sysdba/sysoper注意:当用特权用户连接时,必须带上sysdba或sysoper例子:3. 断开连接(disc)说明:断开与当前数据库的连接用法:disc4.

3、 显示用户名(show user)说明:显示当前用户名用法:show user5. 退出(exit)说明:断开与当前数据库的连接并会退出用法:exit6. 编辑脚本(edit/ed)说明:编辑指定或缓冲区的sql脚本用法:edit 文件名列子:7. 运行脚本 (start/)说明:运行指定的sql脚本用法:start/ 文件名列子:8. 印刷屏幕 (spool)说明:将sql*plus屏幕中的内容输出到指定的文件用法:开始印刷-spool 文件名 结束印刷-spool off列子:文件内容9. 显示宽度 (linesize)说明:设置显示行的宽度,默认是80个字符用法:set linesize

4、 12010. 显示页数 (pagesize)说明:设置每页显示的行数,默认是11行用法:set pagesize 20三、 用户管理1. 创建用户说明:Oracle中需要创建用户一定是要具有dba(数据库管理员)权限的用户才能创建,而且创建的新用户不具备任何权限,连登录都不可以。用法:create user 新用户名 identified by 密码 default tablespace (表空间) temporary tablespace (临时表空间)profile (资源文件名)quota (空间大小,单位M) on (表空间);例子:解析:上面案例创建了普通用户zs,密码为,没有指定

5、用户所属表空间,资源文件和临时文件同时因为没有指定quota【空间配额】,zs用户将不能在相应表空间建立数据对象,在Oracle11G中,普通用户默认表空间为Users,临时表空间为temp.资源文件默认使用default。表空间: 表空间是数据库中最大的逻辑单位,一个 Oracle 数据库至少包含一个表空间,就是名为SYSTEM的系统表空间,一个用户只属于一个表空间,默认Users。临时表空间:临时表空间主要用于order by语句的排序以及其他一些中间操作如读取数据时临时存储空间,Oracle从9i开始,临时表空间通用temp。用户资源文件:用户资源文件用来对用户的资源存取进行限制,包括C

6、PU资源的使用,密码的使用策略等,默认Default。 管理表空间n 查看表空间【dba,sys,v$开头的对象要以dba身份访问】u select * from v$tablespace;【查看系统当前拥有的表空间】u select username,default_tablespace from user_users;【查询当前用户所属表空间】n 创建表空间create tablespace myspacedatafile D:oracle11goradataorclmyspace.dbfsize 32mautoextend onnext 32m maxsize 1024m说明:创建表空间

7、,名称为myspace,数据文件存放在datafile指定目录中,表空间默认32m,也许自动扩展,每次扩展32m,最大扩展到1024mn 删除表空间-删除表空间及空间文件drop tablespace myspace including contents and datafiles; 管理资源文件n 查看资源文件u select * from dba_profiles where profile=资源文件名n 创建资源文件-创建用户资源文件【一个用户可以同时构建3个会话,密码如果错误3次,永远锁定】create profile myfile limitsessions_per_user 3fa

8、iled_login_attempts 3password_lock_time unlimited;说明:创建一个用户资源文件,文件名为myfile,支持该用户同时并发访问量为3,密码输入如果错误3次,永久锁定【dba可以解锁】,更多资源设置和密码策略见文档最下面;n 删除资源文件Drop porfile 资源文件名 创建用户案例二create user mysa identified by default tablespace myspaceprofile myfilequota 500m on myspace;说明:创建用户mysa,密码为,默认表空间为myspace,默认用户资源文件为m

9、yfile,为用户mysa在myspace空间分配500m配额2. 修改密码说明:修改用户密码一般有两种方式,一种是通过命令password修改,另一种是通过语句alter user实现,如果要修改他人的密码,必须要具有相关的权限才可以用法:方式一 password 用户名 方式二 alert user 用户名 identified by 新密码例子:修改当前用户(方式一)修改当前用户(方式二)修改其他用户(方式一)修改其他用户(方式二)3. 用户禁用与启用说明:Oracle中想要禁用或启用一个账户也同样是使用alter user 命令来完成,只是语法和修改密码有所不同。用法:禁用 alter

10、 user 用户名 account lock启用 alter user 用户名 account unlock4. 删除用户说明:Oracle中要删除一个用户,必须要具有dba的权限。而且不能删除当前用户,如果删除的用户有数据对象,那么必须加上关键字cascade。用法:drop user 用户名 cascade四、 用户权限与角色1. 权限Oracle中权限主要分为两种,系统权限和实体权限。 系统权限:系统规定用户使用数据库的权限。(系统权限是对用户而言)。 授予系统权限 查看ORACLE所有系统权限select * from system_privilege_map说明:要实现授予系统权限只

11、能由DBA用户授出。用法:grant 系统权限1,系统权限2 to 用户名1,用户名2WITH ADMIN OPTION;例子: 系统权限回收:说明:系统权限只能由DBA用户回收用法:revoke 系统权限 from 用户名例子: 实体权限【对象权限】:某种权限用户对其它用户的表或视图的存取权限。(是针对表或视图而言的)。主要包括select, update, insert, alter, index, delete, all其中all包括所有权限。 授予实体权限用法:grant 实体权限1,实体权限2 on 表名 to用户名1,用户名2WITH GRANT OPTION;例子: 实体权限回收

12、用法:revoke 实体权限 on 表名from 用户名 例子: 查询用户拥有哪里权限:【用户都能使用】SQL select * from user_tab_privs;/查询授予用户的对象权限SQL select * from user_role_privs;/查询授予用户的角色权限SQL select * from user_sys_privs;/查询授予用户的系统权限SQL Select * from session_privs;/查询当前用户所拥有的权限 查看全部用户拥有权限:【dba身份访问】SQL select * from dba_tab_privs;/查询授予全部用户的对象权限

13、SQL select * from dba_role_privs;/查询授予全部用户的角色权限SQL select * from dba_sys_privs;/查询授予全部用户的系统权限2. 角色角色。角色是一组权限的集合,将角色赋给一个用户,这个用户就拥有了这个角色中的所有权限。 系统预定义角色预定义角色是在数据库安装后,系统自动创建的一些常用的角色。下面我们就简单介绍些系统角色: DBA: 拥有全部特权,是系统最高权限,只有DBA才可以创建数据库结构。 RESOURCE:拥有Resource权限的用户只可以创建实体,不可以创建数据库结构。 CONNECT:拥有Connect权限的用户只可以

14、登录Oracle,不可以创建实体,不可以创建数据库结构。注意:对于普通用户:授予connect, resource权限。对于DBA管理用户:授予connect,resource, dba权限。 CONNECT, RESOURCE, DBA这些预定义角色主要是为了向后兼容。其主要是用于数据库管理。oracle建议用户自己设计数据库管理和安全的权限规划,而不要简单的使用这些预定角色。将来的版本中这些角色可能不会作为预定义角色。 DELETE_CATALOG_ROLE, EXECUTE_CATALOG_ROLE,SELECT_CATALOG_ROLE这些角色主要用于访问数据字典视图和包。 EXP_F

15、ULL_DATABASE, IMP_FULL_DATABASE这两个角色用于数据导入导出工具的使用。 自定义角色Oracle建议我们自定义自己的角色,使我们更加灵活方便去管理用户 创建角色SQL create role admin; 授权给角色SQL grant connect,resource to admin WITH ADMIN OPTION;SQL grant select,insert on 表名 to admin WITH GRANT OPTION 将角色赋予用户SQL GRANT admin to 用户 WITH ADMIN OPTIONSQL GRANT role_name T

16、O role_name WITH ADMIN OPTION 撤销角色的权限SQL revoke connect from admin; 删除角色SQL drop role admin;阅读材料/*Password_parameter参数部分【密码认证】-Password_life_time:指定同一密码所允许使用的天数。如果同时指定了password_grace_time参数,如果在grace time内没有改变密码,则密码会失效,连接数据库被拒绝。如果没有设置password_grace_time参数,默认值unlimited将引发一个数据库警告,但是允许用户继续连接。Password_re

17、use_time和password_reuse_max:这两个参数必须互相关联设置,password_reuse_time指定了密码不能重用前的天数,而password_reuse_max则指定了当前密码被重用之前密码改变的次数。两个参数都必须被设置为整数。Password_lock_time:指定登陆尝试失败次数到达后帐户的锁定时间,以天为单位。Password_grace_time:指定宽限天数,数据库发出警告到登陆失效前的天数。如果数据库密码在这中间没有被修改,则过期会失效。Resource_parameter参数部分【资源管理】 -Sessions_per_user:指定限制用户的并发会话的数目。Cpu_per_session:指定会话的CPU时间限制,单位为百分之一秒。Cpu_per_call:指定一次调用(解析、执行和提取)的CPU时间限制,单位为百分之一秒。Connect_time:指定会话的总的连接时间,以分钟为单位。Idle_time:指定会话允许连续不活动的总的时间,以分钟为单位,超过该时间,会话将断开。但是长时间运行查询和其他操作的不受此限制。Logi

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论