oracle复习大纲(1)

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

chapter 7
1.Oracle数据库物理存储结构的组成及各个部分的功能、性质。

数据文件:用于存储数据库中的所有数据
控制文件:用于记录和描述数据库的物理存储结构信息
重做日志文件:用于记录外部程序(用户)对数据库的改变操作
归档文件:用于保存已经写满的重做日志文件
初始化参数文件:用于设置数据库启动时的参数初始化值
跟踪文件:用于记录用户进程、数据库后台进程等的运行情况
口令文件:用于保存具有SYSDBA,SYSOPER权限的用户名和SYS用户口令;
警告文件:用于记录数据库的重要活动以及发生的错误;
备份文件:用于存放数据库备份所产生的文件。

2.数据文件管理:
(1)数据文件与表空间的关系
从物理角度看,数据库由数据文件构成,数据存储在数据文件中;从逻辑角度看,数据库是由表空间构成的,数据存储在表空间中。

一个表空间包含多个数据文件,但一个数据文件只能属于一个表空间。

在oracle数据库中,数据文件是依附于表空间而存在。

一个表空间可以包含多个数据文件,但一个数据文件只能从属于一个表空间。

在逻辑上,数据库对象都存放在表空间中,实质上是存放在表空间所对应的数据文件中。

(2)数据文件的添加、数据文件大小的修改autoextend on 、resize(操作)、数据文件的移植
添加:
向表空间添加一个大小为xMB的数据文件:
alter tablespace 表空间名add datafile ‘路径\*.dbf’ size xMB;
向表空间添加一个自动增长的数据文件:
alter tablespace 表空间名add datafile ‘路径\*.dbf’ size xMB autoextend on next 1M maxsize 50MB;
向临时表空间添加一个大小为xMB的数据文件:
alter tablespace 表空间名 add tempfile‘路径\*.dbf’ size xMB;
修改:
①修改大小
修改数据文件大小为yMB:
Alter database datafile ‘路径\*.dbf’ resize yMB;
修改文件的自动增长方式:
Alter database datafile ‘路径\*.dbf’ autoextend on next 1M maxsize unlimited;
取消文件的自动增长方式:
Alter database datafile ‘路径\*.dbf’ autoextend off
②修改可用性
归档模式下改变数据文件可用性:
归档模式下,将数据文件脱机:alter database datafile ‘路径\*.dbf’ offline;
将数据文件联机:首先进行恢复操作recover datafile ‘路径\*.dbf’;
然后联机alter database datafile ‘路径\*.dbf’ online;
非归档模式下改变数据文件可用性:
在非归档模式下,通常不能将数据文件脱机。

如果由于数据文件的损坏,需要将文件脱机,然后重启数据库,则需要语句:
Alter database datafile ‘路径\*.dbf’ offline for drop;
修改表空间所有数据文件可用性:
在归档模式下先将所有文件脱机后再联机:
Alter database 表空间名 datafile offline;
Recover tablespace 表空间名;
Alter tablespace表空间名datafile online;
③修改名称或位置
改变同一表空间的数据文件:
将包含数据文件的表空间设置为脱机状态:alter tablespace 表空间名offline;
重命名或移动数据文件:alter tablespace 表空间名 rename datafile
‘路径\*.dbf’ to新的‘路径\*.dbf’;
将表空间联机:alter tablespace 表空间名 online;
改变多个表空间的数据文件:
关闭数据库:shutdown immediate;
启动数据库到mount状态:startup mount;
重命名或移动数据文件:alter database rename file ‘路径\*.dbf’ to
新的‘路径\*.dbf’;
打开数据库:alter database pen;
删除:
删除表空间:alter tablespace 表空间名drop datafile‘路径\*.dbf’;
删除临时表空间:alter tablespace 表空间名 drop tempfile‘路径\*.dbf’;
查询:
查询动态信息:select name,file#,checkpoint_change# from 视图名;
查询详细信息:select tablespace_name,autoextensible,file_name from
视图名;
查询临时数据文件信息:select tablespace_name,file_name,auextensible
from 视图名;
3.控制文件的管理
(1)控制文件的基本性质
控制文件是oracle数据库最重要的物理文件,描述了整个数据库的物理结构信息。

控制文件在创建数据库时创建,每个数据库至少有一个控制文件。

在数据库启动时,数据库实例依赖初始化参数定位控制文件,然后根据控制文件的信息加载数据文件和重做日志文件,最后打开数据文件和重做日志文件。

控制文件是一个二进制文件,DBA不能直接修改,只能由oracle进程读/写其内容。

在数据库运行与维护阶段,数据文件与重做日志文件的结构变化信息都记录在控制文件中。

(2)控制文件存储的信息
数据库名称和标识
数据库创建的时间;
表空间的名称;
数据文件和重做日志文件的名称和位置;
当前重做日志文件序列号;
数据库检查点的信息;
回退段的开始和结束;
重做日志的归档信息;
备份信息;
数据库恢复所需要的同步信息、
(3)控制文件的数量、使用多个多路复用控制文件的必要性
Oracle建议最少有两个控制文件,通过多路镜像技术,将多个控制文件分散到不同的磁盘中。

这样可以避免由于一个控制文件的故障而导致数据库的崩溃。

在数据库运行的过程中,始终读取control_files参数指定的第一个控制文件,并同时写control_files参数指定的所有控制文件。

如果其中一个控制文件不可用,则必须关闭数据库并进行恢复。

(4)控制文件的备份(两种方式)
将控制文件备份为二进制文件:
Alter database backup controlfile to ‘路径\*.BKP’;
将控制文件备份为文本文件:
Alter database backup controlfile to trace;
4.重做日志文件管理
(1)基本概念(保存什么信息)、
重做日志文件是有重做记录构成的,每个重做记录由一组修改向量组成。

修改向量记录了对数据库中某个数据块所做的修改,包括修改对象。

修改之前对象的值、修改之后对象的值、该修改操作的事务是否提交等信息。

(2)工作原理(循环写)
每个数据库至少需要两个重做日志文件,采用循环写的方式进行工作。

这样就能保证,当一个重做日志文件在进行归档时,还有另外一个文件可用。

当一个重做日志文件被写满后,后台进程LGWR开始写入下一个重做日志文件,同是产生一个日志序列号,并将这个号码分配给即将开始使用的重做日志文件。

当所有的日志文件写满后,LGWR进程重新写入第一个重做日志文件。

(3)至少需要多少个重做日志文件组、每个组中至少需要多少个成员、成员之间有何关系
一个数据库至少需要使用两个重做日志文件组,每个重做日志文件组中至少要有一个可用的成员文件
5.归档文件
(1)归档的含义
Oracle数据库能够把已经写满了的重做日志文件保存到指定的一个或多个位置,被保存的重做日志文件的集合称为归档重做日志文件,这个过程称为归档。

(2)归档模式设置过程(操作)
关闭数据库:shutdown immediate;
启动数据库到mount状态:startup mount;
设置归档模式:alter database archivelog;
打开数据库:alter database open;
(3)归档路径设置
使用初始化参数log_archive_dest和log_archive_duplex_dest设置归档路径Alter system set log_archive_dest=’d:\oracle\backup\archive’;
Alter system set log_archive_duplex_dest=’e:\oracle\backup’scope=spfile;
使用初始化参数log_archive_dest_n设置归档路径:
Alter system set log_archive_dest_1=’location=d:\backup\archive’;
Alter system set log_archive_dest_2=’service=standby1’;
设置归档文件命名方式:
Alter system set log_archive_format=’arch_%t_%s_%r.arc’
chapter8
1.Oracle数据库逻辑存储结构的组成及相互关系
Oracle10g数据库的逻辑存储结构分为数据块、区、段、表空间4种。

其中数据块是数据库中的最小I/O单元,由若干个连续的数据块组成的区是数据库中最小的存储分配单元,由若干个区形成的段是相同类型数据的存储分配区域,由若干个段形成的表空间是最大的逻辑存储单元,所有的表空间构成一个数据库。

2.表空间的管理
(1)数据库、表空间、数据文件、数据库对象之间的关系
一个数据库由一个或多个表空间构成,不同的表空间用于存放不同应用的数据,表空间的大小决定了数据库的大小。

一个表空间对应一个或多个数据文件,数据文件的大小决定了表空间的大小。

一个数据文件只能从属于一个表空间。

表空间是存储模式对象的容器,一个数据库对象只能存储在一个表空间中(分区表和分区索引除外),但可以存储在该表空间所对应的一个或多个数据文件中。

若表空间只有一个数据文件,则该表空间中所有对象都保存在该文件中;若表空间对应多个数据文件,则表空间中的对象可以分布在不同的数据文件中。

(2)表空间的类型(系统、非系统:撤销、临时、普通用户)
SYSTEM:用于存储数据库的数据字典;PL/SQL程
序的源代码和解释代码;数据对象的定
义。

系统表空间
SYSAUX(辅助系统):用于存储数据库组件等信
息。

数据库表空间
撤销表空间:进行回滚信息处理
非系统表空间临时表空间:专门进行临时数据管理,在会话
结束时会自动释放
用户表空间:分离不同应用的数据,减少读取
数据文件时产生的I/O冲突。

(3)系统表空间存储什么信息?
数据库的数据字典;PL/SQL程序的源代码,包括存储过程、函数、包、触发器等;数据库对象的定义,如表、视图、序列、同义词等;数据库组件信息;
(4)创建表空间(创建、改变表空间大小、表空间的热备份)
表的管理方式:extentmanagement local(本地管理默认)/dictionary(字典管理)
区的分配方式:自动扩展autoallocate(默认),定制uniform
段的分配方式:自动管理auto(默认),手动管理manual
①创建永久表空间:
创建永久表空间,区自动扩展,段采用自动管理
Create tablespace 表空间名 datafile‘路径\*.dbf’size 50M;
创建永久性表空间,区自动扩展,段采用手动管理
Create tablespace 表空间名 datafile路径\*.dbf’size 50M segment space management manual
创建永久表空间,区定制分配,段采用自动管理
Create tablespace 表空间名datafile 路径\*.dbf’size 50M extent management local(本地管理) uniform size 512K;
创建永久性表空间,区定制分配,段采用手动管理
Create tablespace表空间名datafile 路径\*.dbf’size 50M extent management local uniform size 512K segment space management manual; 创建永久性表空间,区自动扩展,段采用自动管理,专门用于存储数据库中的索引数据
Create tablespace 表空间名 datafile路径\*.dbf’ size 50M;
②创建临时表空间:
创建临时表空间
Create temporary tablespace 表空间名 tempfile路径\*.dbf’ size 20M extent management local uniform size 15M;
创建临时表空间并放入表空间组中
Create temporary tablespace 表空间名 tempfile路径\*.dbf’ size 20M extend management local uniform size 15M tablespace group组名;
③创建撤销表空间
Create undo tablespace 表空间名 datafile路径\*.dbf’ size 50M;
④修改表空间
为表空间添加一个新数据文件:
Alter tablespace 表空间名 add datafile路径\*.dbf’ size 10M;
为表空间添加一个临时数据文件:
Alter tablespace 表空间名 add tempfile路径\*.dbf’ size 10M;
将表空间的数据文件大小增加到*MB:
Alter database datafile路径\*.dbf’ resize *MB;
将表空间的数据文件设置为自动扩展,每次扩展*MB空间,文件最大为*MB:Alter database datafile路径\*.dbf’autoextend 欧尼next *MB maxsize *MB;将表空间设置为脱机(offline)或联机(online)状态
Alter tablespace 表空间名 offline\online;
将表空间设置为只读状态
Alter tablespace 表空间名read only;
将表空间设置为读/写状态
Alter tablespace 表空间名 read write;
将表空间设置为默认表空间
Alter database default tablespace 表空间名;
将表空间设置为默认临时表空间
Alter database default temporary tablespace 表空间名;
将表空间组设置为默认临时表空间:
Alter database default temporary tablespace 表空间组;
将表空间重命名
Alter tablespace 表空间名 rename 新的表空间名
⑤表空间备份
备份表空间:alter tablespace 表空间名 begin backup;
复制表空间数据文件到目标位置:
alter tablespace 表空间名 end backup;
⑥删除表空间
删除表空间及内容
Alter tablespace 表空间名including contents
删除表空间及内容,同时删除其对应的数据文件
Drop tablespace 表空间名 including contents and datafiles;
删除表空间及内容,同时删除其对应的数据文件,以及参照完整性约束
Drop tablespace 表空间名including contents and datafiles cascade constraints;
3.数据块的概念
Oracle数据块是数据库中最小的逻辑存储单元,也是数据库执行输入/输出操作的最小单位,由一个或者多个操作系统块构成。

数据块包括标准块和非标准块两种,其中标准块在数据库创建时由DB_BLOCK_SIZE参数设置,其大小不可更改。

4.区的概念
区是由一系列连续的数据块构成的逻辑存储单元,是存储空间分配与回收的最小单位。

当创建一个数据库对象时,oracle为对象分配若干个区,以构成一个段来为对象提供初始化的存储空间,当段中已分配的区都写满后,oracle会为段分配一个新区,以容纳更多的数据
5.段:段的概念、段的类型、回滚段的作用
段是由一个或多个连续的区组成的逻辑存储单元,段是表空间的组成单位,代表特定数据类型的数据存储结构。

通常一个对象只拥有一个段,一个段中至少包含一个区。

数据段:用来存储表或簇的数据。

索引段:用来存放索引数据,包括ROWID和索引键值。

临时段:保存SQL语句在解释和执行过程中所产生的临时数据
回滚段:回滚段用于保存数据库的回滚信息,包含当前未提交事务所修改的数据的原始版本。

通常,一个事务只能使用一个回滚段存放它的回
滚信息,但是一个回滚段可以存放多个事务的回滚信息。

回滚段可
以动态创建和撤销
回滚段的作用:事务回滚、数据库恢复、数据的读一致性、闪回查询
chapter9
1.数据库实例的概念及组成(内存、后台进程)
Oracle数据库运行过程中所启动的服务进程及其内存结构,统称为oracle实例。

oracle实例由内存结构和后台进程组成。

其中内存结果又分为系统全局区(SGA)和程序全局区(PGA)
2.数据库实例内存结构的组成(SGA、PGA)
SGA:主要由数据高速缓存区、共享池、重做日志缓冲区、大型池、Java池、流池和其他结构组成。

PGA:由排序区、会话区、游标区、堆栈区
3.SGA区的组成及各个部分的功能。

数据高速缓存区:其主要存储的是最近从数据文件中检索出来的数据,供所有的
用户共享。

当用户要操作数据库中的数据时,先由服务器进程
将数据从磁盘的数据文件中读取到数据高速缓存区中,然后在
缓冲区中进行处理。

用户处理后的结果被存储在数据高速缓冲
区中,最后由数据库写入进程写到硬盘的数据文件中永久保存。

重做日志缓冲区:用于缓存用户对数据库进行修改操作时生成的重做记录。

是一
个循环缓冲区,在使用时从顶端向底端写入数据,然后再返回
到缓冲区的起始点循环写入。

共享池:用于缓存最近执行过的SQL语句、PL/SQL程序和数据字典信息,是对
SQL语句、PL/SQL程序进行语法分析、编译、执行的区域。

大型池:是一个可选的内存配置项,主要为Oralce共享服务器、服务器I/O 进程、数据库备份与恢复操作。

执行具有大量排序操作的SQL
语句、执行并行化的数据库操作等需要大量缓存的操作提供内
存空间。

Java池:是一个可选的内存配置项,提供对Java程序设计的支持,用于存储Java 代码、Java语句的语法分析表、Java语句的执行方案和进行
Java程序开发。

流池:是一个可选的内存配置项,用于对流的支持。

4.主要后台进程有哪些及其功能(DBWR、LGWR、CKPT、SMON、PMON、ARCH)DBWR(数据库写入进程):负责把数据高速缓冲区中已经被修改过的数据成批写
入数据文件中永久保存,同时使数据高速缓冲区有更多
的空闲缓存块,保证服务进程将所有需要的数据从数据
文件中读取到数据高速缓冲区中,提高缓存命中率。

LGWR(日志写入进程):负责把重做日志缓冲区的重做记录写入到重做日志文件
中永久保存。

CKPT:执行检查点,更新控制文件与数据文件的头部,使其同步;触发DBWR进
程,将脏缓存块写入数据文件。

SMON:在实例启动时负责对数据库进行恢复;回收不再使用的临时空间;将各个
表空间的空闲碎片合并。

PMON:负责恢复失败的用户进程和服务器进程,并且释放进程所占用的资源;清
除非正常中断的用户进程留下的孤儿会话,回退未提交
的事务,释放会话所占用的锁、SGA、PGA等资源;监控
调度进程和服务器进程的状态,如果他们失败,则尝试
重新启动他们,并释放他们所占用的各种资源。

ARCH:负责在日志切换后将已经写满的重做日志文件复制懂啊归档目标,以防止
写满的重做日志文件被覆盖。

RECO:负责在分布式数据库环境中自动解决分布式事务的故障。

LCKn:进程用于Oracle并行服务器环境中
Dnnn:是多线程服务器的组成部分,以后台进程的形式运行。

chapter 10
1.表
(1)临时表的概念、性质、分类
通常,利用create table 语句创建的表示永久性表,表中数据除非用户显示地删除,否则将一直存在。

与永久性表相对的是临时表,临时表中的数据在特定条件下自动释放。

临时表创建完后,其结构将一直存在,但其数据只在当前会话或当前事务中是有效的。

根据临时表中数据被释放的时间不同,临时表分为事务级别的临时表和会话级别的临时表两类。

(2)表的5种约束
主键约束(primary key):起唯一标识作用,其值不能为null,也不能重复。

唯一性约束(unique)
检查约束(check)
外键约束(foreign key)
空/非空约束(null/not null)
(3)创建表(P166)
Create table 表名()tablespace 数据库名;
创建事务级别临时表:create global temporary table 表名()on commit delete
rows;
创建会话级别临时表:create global temporary 表名()on commit preserve
rows;
利用子查询建表:create global temporary 表名()on commit delete|preserve
rows
2.索引
(1)索引作用、性质
索引是一种可选的与表相关的数据库对象,用于提高数据的查询效率。

索引是建立在表列上的数据库对象,但是无论其物理结构还是逻辑结构都不依赖于表。

在一个表上是否创建索引、创建多少索引和创建什么类型的索引,都不会影响对表的使用方式,而只是影响对表中数据的查询效率。

(2)索引使用的基本原则
导入数据后再创建索引;
在适当的表和列上创建适当的索引;
合理设置复合索引中列的顺序;
限制表中索引的数目;
为索引设置合适的pctfree参数;
选择存储索引的表空间。

(3)何时使用平衡树索引和位图索引
平衡树索引占用空间多,适合索引值基数高、重复率低的应用;
位图索引占用空间少,适合索引值基数少,重复率高的应用;
3.分区
(1) 分区概念、特性
分区是指将一个巨型表或巨型索引分成若干个独立的组成部分进行存储和管理,每一个相对小的,可以独立管理的部分,称为原来表或索引的分区。

每个分区都具有相同的逻辑属性,但物理属性可以不同。

(2)何时有必要进行分区
表的大小超过2GB时;
要对一个表进行并行DML操作,必须对表进行分区;
为了平衡硬盘的I/O操作,需要将一个表分散存储在不同的表空间中,必须对表进行分区;
需要将表一部分设置为只读,另一部分设置为可更新的时,必须对表进行分区;
(3)四种分区方法及其优劣比较
范围分区:是按照分区列值的范围来对列表进行分区的,创建范围分区时必须指明分区方法、分区列和分区描述;
列表分区:不支持多列分区,只能根据一个单独的列来进行分区。

创建列表分区时需要指定分区列和分区描述;
散列分区:在进行范围或列表分区时,由于无法对各个分区中可能具有的记录数量进行预测,可能导致数据在各个分区中分布不均衡,某个分区中数
据很多,而某个分区中数据很少,此时可以采用散列分区,在指定数
量的分区中均等地分配数据;
复合分区:同时使用范围-列表复合分区和范围-散列复合分区对表进行分区。

范围-列表复合分区:先对表进行范围分区,然后在对每个分区进行列表分区,
即在一个范围分区中创建多个列表子分区;
范围-散列复合分区:先对表进行范围分区,然后再对每个分区进行
散列分区,即在一个范围分区中创建多个散列
子分区;
(4)分区表的创建
范围分区:create table *_rang()partitionby range(分区条件)(partition分区名values less than(分区列值范围)tablespace 表空间名,
partition分区名values less than(分区列值范围)tablespace 表空间名,
.
.
);(P193)
列表分区:create table *_list() partition by list(分区列)
(partition分区名 values(分区所对应的分区列取值)tablespace 表空间名,
partition分区名 values(分区所对应的分区列取值)tablespace 表空间名

);
散列分区:create table *_hash()partition by hash(分区列)
(partition分区名称tablespace 表空间名,
partition分区名称tablespace 表空间名

);
复合分区:
范围-列表复合分区:create table *_rang_list() partition by rang(分区列)
subpartition by list(分区列)
(partition分区名values less than(分区
列值范围)tablespace 表空间名)
(partition分区名 values(分区所对应的
分区列取值)tablespace 表空间名);
范围-散列复合分区:create table *_rang_list() partition by rang(分区列)
subpartition by list(分区列)
(partition分区名values less than(分区
列值范围)tablespace 表空间名)
(partition分区名称tablespace 表空间
名);
4.簇、视图、序列、同义词
簇:是一种存储表数据的方法,一个簇由共享相同数据块的一组表组成,这些表共享某些公共列。

视图:是从一个或多个表或视图中提取出来额数据的一种表现形式。

在数据库中只有视图的定义,而没有实际对应“表”的存在,因此视图是一个“虚”表。

当对视图进行操作时,系统会根据视图的定义临时生成数据。

序列:用于产生唯一序号的数据库对象,可以为多个数据库用户依次生成不重复的连续整数,通常使用序列自动生成表中的主键值。

序列产生的数字最大长度可达到38位十进制数。

序列不占用实际的存储空间,在数据字典中只存储序列的定义描述。

同义词:是数据库中表、索引、视图或其他模式对象的一个别名。

(1)序列的创建与应用(P208)
Create sequence 序列名
Increment by n(设置步长)
Start with n (设置序列初始值)
Maxvalue n|nomaxvalue(设置序列最大值|设置默认情况下,递增、递减序列)Minvalue n|nominvalue(设置序列最小值|设置默认情况下,递增、递减序列)Cycle|nocycle(是否循环生成值)
Cache n|nocache(设置服务器预先分配并保留在内存中的值和个数)
(2)表、索引、分区、簇、视图、序列、同义词在存储上有何不同
表:是数据库中最基本的对象,数据库中所有数据都以二维表格的形式存在;索引:建立在表列上的数据库对象,无论其物理结构还是逻辑结构都不依赖表;分区:每个分区都具有相同的逻辑属性,但是物理属性可以不同;
簇:存储表数据;
视图:是从一个或多个基表或视图中提取出来的数据的一种表现形式,是一个虚表;
序列:不占用实际的存储空间,在数据字典中值存储序列的定义描述;
同义词:当数据库对象改变时,只需要修改同义词不需要修改应用程序;
chapter14
(1)数据库启动过程及分别使用什么文件
步骤:
①创建并启动实例(初始化参数文件)
②装载数据库(控制文件)
③打开数据库(数据文件和重做日志文件)
(2)数据库关闭过程及分别完成什么任务
步骤:
①关闭数据库,即关闭数据文件和重做日志文件;
②卸载数据库,关闭控制文件
③关闭实例,释放内存结构,停止数据库后台进程和服务进程的运行
(3)数据库三种启动模式以及在每种模式下可以完成什么工作
①nomount创建并启动实例(初始化参数文件)
②mount装载数据库(控制文件)
③open打开数据库(数据文件和重做日志文件)
启动数据库的基本语法:
Startup [nomount/mount/open][force][restrict][pfile=filename]
(4)数据库关闭的四种方法的比较
①shutdown[normal]正常关闭:
阻止任何用户建立新的连接
等待当前所有正在连接的用户主动断开连接
一旦所有用户断开连接,则关闭数据库
数据库下次启动时不需要任何实例的恢复过程
②shutdown immediate(尽可能短的时间内关闭数据库):
阻止任何用户建立新的连接,也不允许当前连接用户启动任何新的事务回滚所有当前未提交的事务
终止所有用户的连接,直接关闭数据库
数据库下一次启动时不需要任何实例的恢复过程
③shutdown transaction(在尽量短的时间内关闭数据库):
阻止所有用户建立新的连接,也不允许当前连接用户启动任何新的事务
等待用户回滚或提交任何当前为提交的事务,然后立即断开用户连接
关闭数据库
数据库下一次启动时不需要任何实例的恢复过程
④shutdown abort(如果前面三种无法关闭时,使用其来关闭):
阻止任何用户建立新的连接,同时阻止当前连接用户开始任何新的事务任何未提交的事务不被回滚
中断所有用户连接,立即关闭数据库
数据库实例重启后需要恢复
chapter15
(1)Oracle数据库通过那些机制实现数据的安全性
用户管理:为了保证只有合法身份的用户才能访问数据库,oracle提供了3种用户认证机制,即数据库身份认证、外部身份认证和全局身份认证。

只有通过认证的用户才能访问数据库。

权限管理:用户登录数据库后,只能进行其权限范围内的操作。

通过给用户授权或回收用户权限,可以达到控制用户对数据库操作的目的。

角色管理:通过角色方便地实现用户权限的授予与回收
表空间设置和配额:通过设置用户的默认表空间、临时表空间和在表空间上的使用配额,可以有效地控制用户对数据库存储空间的使用。

用户资源限制:通过概要文件,限制用户对数据库资源的使用。

数据库审计:监视和记录用户在数据库中的活动。

(2)用户账号锁定的问题。

相关文档
最新文档