Orale实验报告三.安全管理,模式对象
- 格式:pdf
- 大小:483.30 KB
- 文档页数:7
实验三用户、权限安全班级:座号:姓名:时间:一、实验目的1.创建用户2.创建角色3.使用GRANT和REVOKE语句授予和撤销对象权限二、实验设备一台PC机,widows操作系统,oracle 10g三、实验内容1. 使用sys身份连接到数据库。
2.创建一个用户TEMPUSER,其口令为oracle,默认表空间为USERS,对表空间没有配额限制,临时表空间为TEMP。
3. 创建一个用户配置文件TEMPPROFILE,包含的资源及口令限制如下:该用户最多可以建立3个并发的会话连接用户执行语句使用的CPU最长时间为20分钟空闲时间超过15分钟后,断开与用户的连接限制用户每次调用SQL语句时,能够读取的数据库块数200限制用户在登录到Oracle数据库时允许失败的次数24. 为用户TEMPUSER指定配置文件5. 向用户授予连接数据库系统权限。
6.向用户授予对对象HR.JOBS的SELECT权限,并以用户TEMPUSER连接到数据库,以查询jobs表。
7.以sys身份登录,撤销向用户TEMPUSER授予的系统权限,向用户授予CONNECT,resource角色。
8. 以tempuser身份登录,在exer_tabspace表空间创建表customer(x number)。
四、实验步骤1.使用sys身份连接到数据库。
Connect sys/oracle as sysdba;(查看表空间信息SELECT TABLESPACE_NAME FROM DBA_TABLESPACES;)2. 创建一个用户TEMPUSERCreate user tempuser identified by oracle default tablespace USERS temporary tablespace temp quota unlimited on users;3.创建一个用户配置文件TEMPPROFILE4.为用户TEMPUSER指定配置文件Alter user tempuser profile tempprfile;5向用户授予连接数据库系统权限6、ALTER SYSTEM SET RESOURCE_LIMIT=TRUE SCOPE=BOTH;(启用资源限制,参数立即生效)(再开第二个窗口,第三个窗口,第四个窗口都用TEMPUSER/ORACLE登陆,看看会发生什么情况)7. 向用户授予对对象“HR.JOBS”的SELECT权限,并以用户TEMPUSER连接到数据库,以查询“JOBS”表。
oracle数据库数据库设计与实现实验报告Oracle数据库设计与实现实验报告一、实验目的本次实验旨在通过使用Oracle数据库,掌握数据库的设计和实现方法,学习如何创建表、插入数据、查询数据以及对数据进行更新和删除等操作。
二、实验环境本次实验使用的是Oracle 11g Express Edition,操作系统为Windows 10。
三、实验步骤1. 创建表格在Oracle中创建表格需要使用CREATE TABLE语句。
下面是一个例子:CREATE TABLE employees (employee_id INT PRIMARY KEY,first_name VARCHAR2(50),last_name VARCHAR2(50),email VARCHAR2(100),phone_number VARCHAR2(20));这个例子创建了一个名为“employees”的表格,其中包含了五个列:employee_id、first_name、last_name、email和phone_number。
其中employee_id被指定为主键。
2. 插入数据在Oracle中插入数据需要使用INSERT INTO语句。
下面是一个例子:INSERT INTO employees (employee_id, first_name, last_name, email, phone_number)VALUES(1,'John','Doe','********************','555-1234');这个例子向“employees”表格中插入了一条记录,包含了五个值:employee_id为1,first_name为“John”,last_name为“Doe”,email为“********************”,phone_number为“555-1234”。
实验四oracle的安全性和完整性控制实验四 oracle的安全性和完整性控制实验目的:1.通过本实验能够熟练应用sql语言进行用户权限的授予和回收。
2.熟练掌握实体完整性,参照完整性及用户定义的完整性的定义。
3.并体会oracle数据库系统在安全性和完整性保护方面的特性。
实验要求:1.在进行本实验之前,应熟练课程内容,在上机之前做好实验计划,编写好相应的代码。
实验内容:Grant 语句的格式:Grant <权限> [,<权限>]…On <对象类型> <对象名> [,<对象类型> <对象名>]…To <用户> [,<用户>]…[with grant option]Public 全体用户如果指定了[with grant option],则获得某种权限的用户还可以把这种权限再授予其他用户。
但不允许循环授权。
(一)授权1.创建用户u1,u2,u3…选择全部为connect角色。
2.用户jsj***把查询某个表(如emp,student均可)权限授给用户u1,u1执行相应的查询。
●以u1的用户名登陆,查看u1是否具有授予的权限。
如:查询u1用户的全体学生的详细记录。
3.jsj***把对Student表和Course表的全部权限授予用户u2;●以u2身份登陆数据库,查看u2是否具有授予的权限。
如:修改JSJ***中的student的数据。
4.jsj***把对表SC的查询权限授予所有用户。
●以u3身份登陆数据库,查看u3是否具有授予的权限。
如:查询选修了3号课程的学生的学号及其成绩,查询结果按分数的降序排列如:查询各个课程号与相应的选课人数。
5.授予用户u3具有修改表student(sdept)表的权限。
●以u3身份登陆数据库,查看u3是否具有授予的权限。
如:修改把‘MA’系改为‘GE’地理系。
6.授予用户u3对student表的insert权限,并具有给其他用户授权的权限。
Oracle 数据库课程上机实验报告学院名称:专业班级:姓名:学号:实验成绩:任课教师:目录实验一 (3)实验三 ORACLE数据库结构与网络配置 (3)实验四 (8)实验五数据表及其操作 (10)实验六 SQL命令操作 (14)实验七创建索引 (21)实验一实验三 ORACLE数据库结构与网络配置实验内容与数据库结构相关的数据字典查询实验1、查看表空间的名称及大小2、查看表空间物理文件的名称及大小3、查看回滚段名称及大小4、查看控制文件5、查看日志文件6、查看表空间的使用情况7、查看数据库库对象8、查看数据库的版本9、查看数据库的创建日期和归档方式10、查看临时数据库文件常用数据库信息查看命令(1)oracle中怎样查看总共有哪些用户(2)查看oracle当前连接数(3)列出当前数据库建立的会话情况3.2 表空间操作●创建表空间●修改表空间的相关操作1)增加表空间中的数据文件2)删除表空间中的数据文件3)修改表空间文件的数据文件大小4)修改表空间数据文件的自动增长属性。
实验四实验五数据表及其操作实验内容5.1创建基本表以system用户登录sqlplus创建表空间创建Testpace表空间5.2修改表清空表中的数据5.3 删除表5.4聚集表(1)创建聚集(聚集表的创建与操作)引用参照完整性三表定义了suppliers,products,order details三表间的三个级联关系实验六 SQL命令操作实验内容6.1数据查询select创建student,sc,course三表,并且插入数据查询1:查询2:查询3:查询4;实验七创建索引实验内容7.1在emp表中的sal字段上创建一个名为index_sal的b树索引,按字段值的蒋序排序7.2 在dept表的dname字段上创建一个具有唯一性的b树索引,索引值为字母序排序。
7.3在emp表的ename和deptno字段上创建一个复合索引7.10将参数设置为跟踪状态,执行对emp表的查询命令,查看索引应用的跟踪结果。
oracle模式对象的管理【开发语言及实现平台或实验环境】Oracle10g【实验目的】(1)学习基本数据库表的创建,表结构的修改与删除等命令;(2)学习索引的管理命令;(3)学习索引化表的管理命令(4)学习分区表的管理命令(5)学习簇、视图、序列、同义词等的管理命令【实验原理】1.基本表的管理(1)表的创建:Create命令:CREATETABLEtable_name(column_nametype(ize),column_nametype(i ze),…);或CREATETABLEtable_name[(column_name,…)]ASSELECTtatement;表名命名规则所用的表名必须满足下面的条件:a)名字必须以A-Z或a-z的字母开始;b)名字可以包括字母、数字和特殊字母(_)。
字符$和#也是合法的,但是这种用法不提倡;c)名字大小写是一样的;例如EMP、emp和eMp是表示同一个表;d)名字最长不超过30个字符;e)表名不能和其它的对象重名;f)表名不能是SQL保留字。
字段类型:完整性约束:Oracle允许用户为表和列定义完整性约束来增强一定的规则。
可分为:表约束和字段约束约束类型如下:1)NOTNULL约束NOTNULL约束保证字段值不能为NULL。
没有NOTNULL约束的字段,值可以为NULL。
2)UNIQUE约束指定一个字段或者字段的集合为唯一键。
在表中没有两行具有相同的值。
如果唯一键是基于单条记录的,NULL是允许的。
表约束命令格式:,[CONSTRAINTcontraint_name]UN IQUE(Column,Column,…)字段约束命令格式:[CONSTRAINTcontraint_name]UNIQUE例如:CREATETABLEDEPT(DEPTNONUMBER,DNAMEVARCHAR2(9),LOCVARCHAR2(10),CONSTRAINTUNQ_DEPT_LOCUNIQUE(DNAME,LOC));UNQ_DEPT_LOC是一个表约束。
Orale实验报告三.安全管理,模式对象宁波工程学院电信学院计算机教研室实验报告课程名称:Oracle实验项目:模式对象.安全管理实验人员:李可灿黄文迪罗弘耀班级:计科07-软件(2)指导教师:刘良旭实验位置:电子楼二楼实验日期:2010-11-10一、实验目的1、熟悉Oracle数据库模式对象的概念,功能及其管理;2、熟悉Oracle数据库的安全管理机制及其操作。
二、实验环境1台WINDOWS环境的PC机,Oracle10g软件。
三、实验内容第十一章.模式对象一.创建表。
11.1按下列表结构利用SQL语句创建class,student两个表。
二.表约束。
11.2为student表添加一个可以延迟的外键约束,其CNO列参照class表的CNO列。
11.3为student表添加一个可以延迟的外键约束,保证该列表取值在0~100之间。
11.4为student表的SAGE列添加一个检查约束,保证该取值为“M”或“F”,且默认值为“M”。
三.创建索引。
11.5在class表的CNAME列上创建一个唯一性的索引。
11.6利用子查询分别创建一个事物级的临时表和会话级的临时表,其结构与student表的结构相同。
四.创建索引化表。
11.7创建一个索引化表,其表的结构与student表相同。
五.创建分区表。
11.8创建一个student_range表,按学生年龄分为3个区,低于20岁的学生信息放入part1区,储存在EXAMPLE表空间中;20~30岁的学生信息放在part2区,存放在ORCLTBS1表空间中;其他数据放在part3区,存放在ORCLTBS2表空间中。
11.9创建一个student_list表,按学生性别分为两个区。
11.10将一个保存学生信息的.xls文件转换为.txt,然后根据.txt文件中数据的结构创建一个外部表,实现对.txt文件的读取操作。
七.创建簇。
11.11创建一个class_number簇,聚簇字段名为CNO,类型为NUMBER(2)。
实验报告(三)院系:信息学院课程名称:日期:班级姓名专业信息管理与信息系统学号实验室实验名称Oracle的存储管理与分析(1)成绩评定教师签名实验目的索引实验内容一、请写三个表明oracle读取数据所用的三种方式的SQL语句,并列出它们的执行计划二、以emp为原型,创建一个test表,在test的empno列上创建索引三、分析索引,通过index_stats查看的索引高度,结构等信息四、往test表中删除,插入,更新3-5条记录,再分析索引,查看三所列的索引结构的信息五、往test表中插入600条记录,查看索引结构六、删除500条记录,查看索引结构七、对索引进行合并,查看索引变化八、重构索引,查看索引变化一、请写三个表明oracle读取数据所用的三种方式的SQL语句,并列出它们的执行计划1.全表扫描(full table scan--fts)并行查询可能会使得我们的路径选择采用全表扫描2.通过行ID(ROWID)向表中插入对象时隐含会创建改行ROWID,它是数据行所存储的数据块地址,这样可以以最快的速度找到该行数据,是oracle中读取单行数据最快的方法。
3.使用索引(1)使用索引找到相应ROWID(2)通过找到的ROWID从表中读取相应的数据二、以emp为原型,创建一个test表,在test的empno列上创建索引三、分析索引,通过index_stats查看的索引高度,结构等信息四、往test表中删除,插入,更新3-5条记录,再分析索引,查看三所列的索引结构的信息五、往test表中插入600条记录,查看索引结构这样依次插入到表test中600条记录,再查看索引结构有如下变化:六、删除500条记录,查看索引结构;按照这样删除的方法把插入的600记录删除500条后在查看索引结构:七、对索引进行合并,查看索引变化;八、重构索引,查看索引变化;实验报告(三)院系:信息学院课程名称:日期:班级姓名专业信息管理与信息系统学号实验室实验名称oracle存储管理与优化(2)成绩评定教师签名实验目的日志管理实验内容1查看日志组和日志文件的相关信息(v$log,v$logfile)了解日志组状态真正涵义;2切换日志组,跟踪日志切换的时间频率;3往数据里增加两个日志组,再删除其中的一个,结合日志组的状态,分析哪些类型的日志组不能删除4.往日志组里增加日志成员,再删除添加的日志成员,分析哪些类型的日志文件不能删除;5日志文件的恢复:1.nactive日志损坏清洗日志2.active日志损坏,只要数据库是一致性关闭,与1的恢复一样3.current日志损坏不完全恢复1查看日志组和日志文件的相关信息(v$log,v$logfile)了解日志组状态真正涵义;v$log记录了当前数据库的日志组号、日志序列号、每个日志文件的大小、以字节为单位、每个日志组的成员数量,以及日志组的当前状态。
实验5 Oracle基本用户安全管理实验一、实验目的充分认识数据库的安全管理的重要性,掌握创建用户、给用户授权;修改用户、修改用户权限;创建角色、给角色授权;创建模式对象;使用权限等基本用户安全管理。
二、实验要求1.创建用户创建的用户名为U+姓名简拼+学号后两位口令为学号后两位指定该用户的缺省表空间为实验2中创建的永久表空间指定临时表空间为实验2中创建的临时表空间指定该用户在其数据表空间中的使用限额为3MB 指定该用户在其临时表空间中的使用限额无限制2.创建用户的概要文件创建的概要文件名为PF+学号后两位概要文件中限定CPU的空闲时间为15分钟概要文件中限定帐户的登录失败限制为3次将1中创建的用户的概要文件更改为新创建的概要文件3.创建角色角色名ROLE + 学号后两位 + [1|2|3] 创建的角色均不用口令控制角色1:只具有创建会话连接和授予权限的权限角色2:只具有创建表,创建视图的权限角色3:具有角色1和角色2的权限4.创建模式对象将角色3授予1中创建的用户以1中创建的用户登录创建一个学生信息表(STU),字段有学号、姓名、性别、年龄、系、入学时间向STU表中输入5个基本数据5.给用户和角色授权给1中创建的用户赋予DBA角色以1中创建的用户登录设计并创建角色并授权给其它用户(如SCOTT用户)被授权的用户(如SCOTT 用户)拥有你在4 中创建的模式对象(STU)的select, insert 和delete权限,但不立即激活delete权限被授权用户拥有管理select和insert权限的权力6.使用权限以被授权用户(如SCOTT用户)登录查询1中创建的用户的模式对象STU的信息三、实验学时安排课堂内1学时完成二中所列1、2、3、4四项内容,其余各项内容均在课外自行上机练习完成。
四、实验内容与步骤任务1:创建用户下面介绍企业管理器直接管理方式下创建用户的方法,请自行练习在命令行管理方式下创建用户。
宁波工程学院电信学院计算机教研室
实验报告
课程名称:Oracle实验项目:模式对象.安全管理
实验人员:李可灿黄文迪罗弘耀
班级:计科07-软件(2)指导教师:刘良旭
实验位置:电子楼二楼实验日期:2010-11-10
一、实验目的
1、熟悉Oracle数据库模式对象的概念,功能及其管理;
2、熟悉Oracle数据库的安全管理机制及其操作。
二、实验环境
1台WINDOWS环境的PC机,Oracle10g软件。
三、实验内容
第十一章.模式对象
一.创建表。
11.1按下列表结构利用SQL语句创建class,student两个表。
二.表约束。
11.2为student表添加一个可以延迟的外键约束,其CNO列参照class表的CNO列。
11.3为student表添加一个可以延迟的外键约束,保证该列表取值在0~100之间。
11.4为student表的SAGE列添加一个检查约束,保证该取值为“M”或“F”,且默认值为“M”。
三.创建索引。
11.5在class表的CNAME列上创建一个唯一性的索引。
11.6利用子查询分别创建一个事物级的临时表和会话级的临时表,其结构与student表的结构相同。
四.创建索引化表。
11.7创建一个索引化表,其表的结构与student表相同。
五.创建分区表。
11.8创建一个student_range表,按学生年龄分为3个区,低于20岁的学生信息放入part1区,储存在EXAMPLE表空间中;20~30岁的学生信息放在part2区,存放在ORCLTBS1表空间中;其他数据放在part3区,存放在ORCLTBS2表空间中。
11.9创建一个student_list表,按学生性别分为两个区。
六.创建外部表。
11.10将一个保存学生信息的.xls文件转换为.txt,然后根据.txt文件中数据的结构创建一个外部表,实现对.txt文件的读取操作。
七.创建簇。
11.11创建一个class_number簇,聚簇字段名为CNO,类型为NUMBER(2)。
然后利用该簇,创建student和class两个聚簇表。
八.创建序列。
11.12创建一个初始值为10000的序列,步长为2,最大值为100000,不可循环。
九.创建同义词。
11.13为SCOTT模式下的emp表创建一个公共同义词,名称为employee。
十.创建视图。
11.14创建一个视图,包含员工号,员工名和该员工领导的员工号,员工名。
第十二章.安全管理
一.用户管理。
12.1创建一个口令认证的数据库用户usera_exer,口令为usera,默认表空间为USERS,配额为10MB,初始账户为锁定状态。
12.2创建一个口令认证的数据库用户userb_exer,口令为userb。
二.权限管理。
12.3为usera_exer用户授予CREATE SESSION权限,scott.emp的SELECT权限和UPDATE权限。
同时允许该用户将获得的权限授予其他用户。
12.4将用户usera_exer的账户解锁。
12.5用usera_exer登录数据库,查询和更新scott.emp中的数据。
同时,将scott.emp的SELECT 和UPDATE权限授予用户userb_exer。
12.6禁止用户usera_exer将获得的CREATE SESSION权限再授予其他用户。
12.7禁止用户usera_exer将获得的scott.emp的SELECT权限和UPDATE权限再授予其他用户。
三.角色管理。
12.8创建角色rolea和roleb,将CREATE TABLE权限,scott.emp的INSERT权限和DELETE 权限授予rolea;将CONNECT,RESOURCE角色授予roleb。
12.9将角色rolea,roleb授予用户usera_exer。
12.10屏蔽用户user_exer的roleb角色。
四.概要文件管理。
12.11为用户user_exer创建一个概要文件,限定该用户的最长会话时间为30分钟,如果连续10分钟空闲,则结束会话。
同时,限定其口令有效期为20天,连续登录4次失败后将锁定账户,10天后自动解锁。
五.审计。
12.12首先启动数据库的审计功能,然后对当前数据库的所有连接进行审计;对数据库中所有的CREATE TABLE成功操作进行审计;对SCOTT模式中emp表的INSERT,UPDATE和DELETE 操作进行审计。
四、实验心得与小结
这次实验的内容很多,需要掌握的知识点也很多~需要仔细的查询代码,阅读课本才能完成。
通过自觉地完成实训题,对模式对象.安全管理有了很深的了解,掌握得也比较熟练。
五、指导教师评议
成绩评定:指导教师签名:。