Oracle9i数据库的第2讲
第8章 Oracle9i数据库对象的管理(2)

使用索引也会带来这样的缺点: 使用索引也会带来这样的缺点:建立索引需要占用磁盘空间并 增加了用于插入,删除和修改数据行的时间和空间的开销. 增加了用于插入,删除和修改数据行的时间和空间的开销.插 入数据行时需要在表和索引中都增加一行, 入数据行时需要在表和索引中都增加一行,修改数据行时需要 在表和索引中对当前行进行修改, 在表和索引中对当前行进行修改,删除数据行需要从索引中移 走当前行,这都会减慢相应操作的反应速度. 走当前行,这都会减慢相应操作的反应速度. 索引的类型可以从逻辑设计和物理实现两个方面进行分类. 索引的类型可以从逻辑设计和物理实现两个方面进行分类. 从逻辑设计方面来看, 从逻辑设计方面来看,可以把索引分为单列索引和多列复合索 唯一索引和非唯一索引,基于函数的索引等类型. 引,唯一索引和非唯一索引,基于函数的索引等类型.基于函 数的索引是Oracle9i索引的一大特点 , 用户可以根据表达式 , 索引的一大特点, 数的索引是 索引的一大特点 用户可以根据表达式, Oracle9i内部函数及 内部函数及PL/SQL和 Java编写的函数来创建索引 . 编写的函数来创建索引. 内部函数及 和 编写的函数来创建索引 创建基于函数的索引后, 服务器会自动检查PL/SQL 创建基于函数的索引后,Oracle9i服务器会自动检查 服务器会自动检查 语句中的WHERE子句以判断是否存在匹配的索引,保证查询 子句以判断是否存在匹配的索引, 语句中的 子句以判断是否存在匹配的索引 以最少的磁盘读写和最快的速度得到检索结果. 以最少的磁盘读写和最快的速度得到检索结果. 从物理实现方面来看,可以把索引分为B树索引 树索引, 从物理实现方面来看, 可以把索引分为 树索引, 位图索引和 簇索引,其中前两者是最常用的. 簇索引,其中前两者是最常用的.
ORACLE9I简单介绍

安装目录不能有空格和中文!Oracle 版本oracle 8i (8.1.7)、oracle 9i(9.0) 临时版本,由于有问题,很快升级到Oracle 9i(9.2.0.1) 、oracle9i(9.2.0.4)、oracle10gOracle 9i 的三个重要特征:客户机/服务器结构(client/server)。
面向对象数据库。
用于关键业务。
如银行等业务,不允许出现错误。
(备份)第一课Oracle 9i 体系结构Oracle 9i 数据库:由实例和数据库组成。
实例是指访问数据库文件的内存和进程。
重点:实例和数据库的关系。
(以ORCL数据库为例讲解)正常情况下,实例和数据库是一一对应的。
在NT上,实例是作为服务运行的。
服务名:OracleServiceORCL。
OracleServiceORCL oracleserviceerp数据库名数据库名在Unix和Linux上,实例是作为Daemon运行的。
组成一个Oracle 9i数据库的文件控制文件(.ctl)、数据文件(.dbf)、联机重做日志文件(.log)。
讲解Oracle 9i数据库的工作原理图。
讲解Oracle 9i数据库的体系结构图。
实例的组成:1. 系统全局区(SGA)(system global area)共享池(shared pool):包括library cache、dictionary cache。
通过shared_pool_size设置。
library cache:存放执行SQL语句的二进制文件,执行速度快。
dictionary cache:存放系统表数据。
数据库缓冲区高速缓存(database buffer cache):存放数据文件的。
通过db_cache_size设置。
重做日志缓冲区(redo log buffer): 通过log_buffer设置。
存放重做日志的。
Java Pool、Large Pool。
2. Oracle 后台进程必须:系统监控和进程监控进程(SMON和PMON)数据库写进程(DBWR)、日志写进程(LGWR)、归档进程(ARCH)、检查点(CKPT)可选:调度进程(Dnnn)、恢复进程(RECO)、快照进程(SNPn)、锁进程(LCKn)、并行查询进程(Pnnn)PGA(Program Global Area):用户和服务器进程第二课. 开始使用Oracle 9i初始用户用户名:密码:(不区分大小写)syssystemOracle数据库的系统管理员默认是由操作系统验证。
第02章Oracle9i体系结构

否有用户连接数据库它们都在运行,负责数据库的后台 管理工作,这也是称之为后台进程的原因。
2-22
Oracle 9i数据库的后台进程
SMON PMON
RECO ARCH
系统全局区
CKPT QMON
DBWR LGWR
2-23
Oracle 9i数据库的主要后台进程
• 非归档模式,不保留以前的重做日志内容,适合
于对数据库中数据要求不高的场合。
2-14
初始化参数文件
• 初始化参数文件INIT.ORA是一个文本文件,定义
了要启动的数据库及内存结构的大约200多项参数 信息。启动任何一个数据库之前,Oracle系统都要 读取初始化参数文件中的各项参数。
• 初始化参数文件的主要内容如下:
Database
2-27
Oracle数据库的应用架构
• 多磁盘结构 • 磁盘映像结构 • 客户/服务器系统 • 共享服务器系统 • 并行(集群)数据库系统 • 分布式数据库系统 • Oracle WebServer系统
2-28
Thank you very much!
2-29
• 控制文件存放了与Oracle 9i数据库物理文件有关的
关键控制信息,如数据库名和创建时间,物理文件 名、大小及存放位置等信息。
• 控制文件在创建数据库时生成,以后当数据库发生
任何物理变化都将被自动更新。
• 每个数据库包含通常两个或多个控制文件。这几个
控制文件的内容上保持一致。
2-12
日志文件
• 日志文件用于记录对数据库进行的修改操作和事务操作
后缀“.DBF”。
• 数据文件存放的主要内容如下:
大型数据库系统概论-第9章 Oracle9i数据库的完整性和并发控制(2)-462

Introduction of Large Database
第9章 Oracle9i数据库的完整性和并发控制(2)
学习目标
1、理解事务的概念与ACID性质。 2、掌握COMMIT、ROLLBACK语句。 3、掌握SAVEPOINT、SET TRANSACTION语句。 4、掌握Oracle9i的封锁机制。
注意:当应用程序或服务器发生严重故障时,Oracle9i将VEPOINT语句:回滚一个很大的事务会增加不必要的时 间开销,一般处理方法是利用SAVEPOINT语句将一个大的事 务分成许多小块,每个小块作为一个保存点,这样在执行事务 时若发生错误,只是回滚到最近或指定的保存点,而不是撤销 整个事务,很大程度上节省了时间。 例9.7 一个SAVEPOINT语句的应用。 /*注释1*/
说明:
u 注释1处隐式开始一个事务。
u 注释2前修改了一条记录。
u 注释3前由于事务没有结束,所以只有当前用户可以对“李 芳”记录的修改,而且该条记录自动封锁,其他用户不能查询 和更新该条记录。
u 注释4前发出ROLLBACK命令,表示当前事务结束,对 “李芳”记录所做的修改撤销,且该条记录上的封锁自动解除, 任何一个连接到当前数据库的用户都可以看到数据库中“李芳” 记录原有的信息,并可以对其进行更新。如果COMMIT语句 后还有PL/SQL语句,将意味着下一个事务的开始。
LOCK TABLE 表名IN 封锁模式 MODE [NOWAIT];
其中NOWAIT选项表示当事务T试图封锁一个表时,若该表已 被别的事务封锁,则系统立即将控制返回给事务T;如果未指 定NOWAIT选项则表示事务T将一直等待至该表已有的封锁被 解除才能封锁该表,开始执行事务T。封锁模式有以下五种:
Oracle9i关系数据库实用教程第二版课程设计

Oracle9i关系数据库实用教程第二版课程设计一、设计目的本次课程设计的目的是为了让学生加深对Oracle9i关系数据库的理解,掌握其基本概念和操作方法,同时能够独立完成一个简单的数据库应用程序的设计和实现。
二、设计内容本次课程设计包括以下几个部分:1. 数据库设计首先需要明确数据库设计的目的和范围,确定实体和属性、关系和约束等概念,采用ER模型进行建模,并使用Oracle9i自带的工具进行数据库的创建和初始化。
2. SQL语句的编写与执行在数据库设计完成后,需要实现对数据库的增删改查等操作功能。
该部分内容包括使用SQL语句进行数据库的查询、更新等操作,以及对SQL语句的优化和测试。
3. PL/SQL编程在进行SQL语句的编写与执行的过程中,可以利用Oracle9i自带的PL/SQL编程语言实现各种复杂的业务逻辑。
该部分内容包括PL/SQL语言的基本结构、数据类型、变量和常量、函数和过程等语法特性的学习,以及使用PL/SQL编写数据库相关业务逻辑的实践。
4. 数据库安全与管理在数据库设计和使用过程中,需要考虑数据库的安全性和管理。
该部分内容包括Oracle9i的用户和角色管理、密码策略、数据备份和恢复等方面的知识。
5. 团队协作与项目实践在课程设计完成后,学生需要以团队为单位完成一个简单的数据库应用系统的设计和实现。
该部分内容需要学生具备团队协作和项目管理的能力,同时需要掌握Oracle9i的最佳实践。
三、设计要求本次课程设计要求学生具备以下技能和能力:1.了解Oracle9i关系数据库的基本概念和操作方法;2.掌握SQL语句的编写和执行;3.熟悉PL/SQL编程语言,并实践使用;4.熟悉数据库安全与管理;5.具备团队协作和项目管理的能力。
四、设计流程本次课程设计的流程如下:1.制定数据库设计方案,包括ER模型绘制、数据库创建和初始化等步骤;2.编写SQL语句进行数据库的增删改查操作;3.学习PL/SQL编程语言,并实践使用;4.学习数据库安全与管理相关知识;5.以团队为单位完成一个简单的数据库应用系统的设计和实现;6.整理课程设计报告,总结设计过程和所学知识。
第2章 Oracle9i安装配置与基本操作

图2.34 数据库节点的快捷菜单
⑸ 在快捷菜单中单击“连接”,弹出如图2.35所示的“数据 库连接信息”对话框。在“用户名”中输入“system”(这是 Oracle9i的默认管理员账号),在“口令”中输入“system” (图2.13中所作的更改),选择连接身份为“Normal”、“S YSOPER”、“SYSDBA”三者之一(若要启动和关闭数据库, 则连接身份必须是“SYSDBA”),其中:
⑵ 选择“打开”,单击“确定”按钮,弹出如图2.37所示的 “启动数据库”界面。
图2.37 启动数据库的界面 ⑶ 启动结束后,将弹出启动完成对话框,单击“关闭”按钮, 即完成了启动数据库的工作。 2.2.3 关闭Oracle9i数据库 ⑴ 在图2.33所示的快捷菜单中单击“关闭”,弹出如图2.38所 示的“关闭选项”对话框。对话框中四种选项具有不同的含义:
图2.31 启动Oracle9i企业管理器
⑵ 系统出现如图2.32所示的“登录”对话框。选择“独立启 动”。
图2.32 Oracle9i企业管理器的启动选择
⑶ 单击“确定”按钮,出现如图2.33所示的“企业管理器主 界面”。
图2.33 “企业管理器主界面”
⑷ 展开左侧的数据库节点,若击欲登录的数据库TEST,弹出 如图2.34所示的快捷菜单。
图2.10 第1号盘安装过程
图2.11 提示插入第2号盘
图2.12
提示插入第3号盘
⑾ 安装结束后,弹出如图2.13所示的“Oracle Universal In staller:配置工具”对话框。
图2.13 数据库安装配置工具
⑿ 安装配置完成后,弹出如图2.14所示的“Database Confi guration Assistant”对话框。系统默认SYS和SYSTEM用户 的口令分别为“change_on_install”和“manager”,改变 口令,则在该对话框中重新输入SYS和SYSTEM用户的口令。
Oracle9i数据库系统概述

Oracle9i 数据库系统概述2007.51提纲第一节Oracle9i系统概述第二节Oracle9i数据库体系结构第三节Oracle9i数据库的模式(schema)对象第四节Oracle9i数据库的安装第五节Oracle9i数据库目录结构和注册表信息第六节Oracle9i数据库数据字典第七节Oracle9i分布式数据库体系结构第八节Oracle9i数据库的启动和关闭2第一节:Oracle9i系统概述Oracle9i 是关系对象型数据库管理系统。
Oracle9i 提供以下三种版本:●Oracle9i标准版:包括一套完全集成的易用管理工具、完全分布式的复制能力以及web功能。
适合小型企业的单一服务器环境。
●Oracle9i企业版:包括大数据量的在线事务处理(OLTP)环境、查询密集型数据仓库以及要求苛刻的互联网应用等。
能够满足当今企业关键任务应用的可用性与可伸缩性需要。
●Oracle9i个人版:支持需要与Oracle9i标准版和Oracle9i企业版完全兼容的单一用户开发与部署。
3第二节:Oracle9i数据库体系结构Oracle9i数据库的体系结构可以从以下四个方面来理解:●物理存储结构●逻辑存储结构●内存结构●进程结构4一、物理存储结构从数据的物理存储结构来看,Oracle9i数据库由三类物理文件组成:●数据文件(datafile)●重做日志文件(redolog file)●控制文件(control file)1、数据文件------存储了基表数据、索引数据、回退数据、临时数据、以及数据字典基表数据。
每个数据库至少由一个或多个数据文件组成。
52、重做日志文件------存储数据库的修改前、修改后的信息以及事务标志。
在数据库实例(instance)恢复期间,Oracle使用重做日志文件恢复所有用户对数据库所做的修改操作。
每个数据库必须拥有两个或两个以上的重做日志文件。
3、控制文件------是一个二进制文件。
Oracle9i的关系数据库实用教程第二章 Oracle的体系结构共57页文档

3.表空间中对象的存储
如果表空间只对应一个数据文件,该表空间中 所有的对象都存储在此数据文件中。如果表空 间对应于多个数据文件,可将一个对象的数据 存储在该表空间的任意一个数据文件中,也可 将同一个对象的数据分布在表空间的多个数据 文件中。
2.2.2 段
1.数据段 2.索引段 3.临时段 4.回退段
2.1.4 配置文件
配置文件是一个ASCII文本文件,记录Oracle 数据库运行时的一些重要参数。名字通常为 initsid*.ora格式,如:initCIMS.ora,SID相当 于它所控制的数据库的标识符。每个Oracle 数据库和实例都有它自己惟一的init.ora文件。
Oracle9i 新 引 入 一 个 服 务 器 参 数 文 件 ( SPFILE ) , 一 个 服 务 器 参 数 文 件 (SPFILE)可以被认为是在Oracle数据库服 务器端的初始化参数文件。存储在一个服务
(4)能够将某个表空间设置为脱机状态或联机 状态,以便对数据库的一部分进行备份和恢复。 (5)能够将某个表空间设置为只读状态,从而 将数据库的一部分设置为只读状态。 (6)能够为某种特殊用途专门设置一个表空间, 比如临时表空间等,以优化表空间的使用效率。 (7)能够更加灵活地为用户设置表空间限额。
2.1.3 控制文件
每个Oracle数据库都有相应的控制文件, 用于打开、存取数据库。它们是较小的二 进制文件,其中记录了数据库的物理结构。
名字通常为Ctr*.ctl格式
控制文件中的内容只能够由Oracle本身来修 改。每个数据库必须至少拥有一个控制文 件。一个数据库也可以同时拥有多个控制 文件,但是一个控制文件只能属于一个数 据库。
第二章 Oracle体系结构
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第2讲Oracle9i数据库的基本对象
目的:
1.掌握Oracle9i的基本对象
2.掌握Oracle9i的数据类型:
3.Oracle9i数据库的概念:数据库,例程,方案,表空间,表,视图等
4.基本SQL的类型:DML, DDL, DCL,
授课内容:
[] Oracle9i的逻辑结构(基本的对象)
2.1.1 数据库(Database)
2.1.2 表空间(Table space)
2.1.3 方案(Schema):
2.1.4 用户(User)
2.1.5 角色(Role)
2.1.6 表(Table): 表由字段和记录组成
2.1.7 视图(View):虚拟表
2.1.8 索引(Index)
2.1.9 序列(Sequence)
2.1.10 约束(Constraint)
2.1.11 存储过程(Store Procedure)
2.1.12 函数(Function)
2.1.13 包(Package)
2.1.14 触发器(Trigger)
图Oracle 数据库,表控件,和数据文件的关系图
图Oracle数据库中,表空间,表,索引对象的关系(物理的和逻辑的[] 逻辑对象-
[] Oracle SQL的基本组成元素
1.Data Type 数据类型
2.Literal 字符集
3.Format Model 格式模式
4.Nulls 空值
ments 注释
6.Database Objects 数据库对象
7.Schema object name and qualifiers 模式对象名称和限定
8.
[] Oracle Data Type
Builtin datatype 内置数据类型
ANSI Supported data type ANSI支持的数据类型
User-defined data type 用户自定义的数据类型
Oracle Supplied Datatype Oracle提供的数据类型
[] Oracle9i内置数据类型
1.Character datatype
2.Number datatype
3.long and raw datatype
4.Datetime datatype
rge object datatype
6.ROWID datatype
[] Oracle的内置数据类型-字符类型(Character datatype)
[] Oracle内置数据类型-数值类型(NUMBER DATATYPE)
[] Oracle 内置数据类型- 日期类型(Datetime datatype)
[] Oracle内置数据类型–加长和二进制类型(long and raw datatype)
[] Oracle内置数据类型–大对象数据类型(large object datatype)
[] Oracle内置数据类型–行编号数据类型(ROWID datatype)
[] ANSI supported Datatype (ANSI支持的数据类型)
[] Oracle额外提供的数据类型– Oracle Supplied datatype
[] Oracle内置数据类型的规格说明Datatype Specification Oracle内置据类型的技术参数
[] Oracle Date Format
the standard Oracle default date format is DD-MON-RR. For example:
'13-NOV-1992'
TO_DATE ('November 13, 1992', 'MONTH DD, YYYY')
使用NLS_DATE_FORMAT 修改日期的格式
alter session set NLS_DATE_FORMAT='YYYY-MM-DD'
[] Oracle9i SQL的分类
操纵Oracle9i数据库的语言是SQL.
可以直接对数据库的编程语言是PL/SQL.
操作数据库的对象和对象中的数据可以使用SQL或相关的工具。
工具的结果可以生成SQL语句。
工具的优点是不用记许多的语法,简单方便。
2.3.1 数据查询语言(DQL-Data Query Language): select
2.3.2 数据操纵语言(DML-Data Manipulation Language): insert, update, delete
2.3.3 事务处理语言(TCL-Transaction Control Language): commit, rollback,savepoint
2.3.4 数据定义语言(DDL-Data Definition Language): create, alter, drop
2.3.5 数据控制语言(DCL-Data Control Language): grant, revoke
2.3.6 系统控制语言(SCL-System Control Language): alter system, set
如:
alter session set NLS_DATE_FORMAT='YYYY-MM-DD'
2.3.7 嵌入语言(ESL-Embed SQL Language): open, close, fetch, execute等。
主要是在PL/SQL语言中嵌入的用于操作数据库的语句。
附录2:DDL语句的任务
The DDL statements are:
ALTER ... (All statements beginning with ALTER) ANALYZE
ASSOCIATE STATISTICS
AUDIT
COMMENT
CREATE ... (All statements beginning with CREATE) DISASSOCIATE STATISTICS
DROP ... (All statements beginning with DROP)
GRANT
NOAUDIT
RENAME
REVOKE
TRUNCATE
附录4:Data Manipulation Language (DML) Statements
CALL
DELETE
EXPLAIN PLAN
INSERT
LOCK TABLE
MERGE
SELECT
UPDATE
附录5:Transaction Control Statements
COMMIT
ROLLBACK
SAVEPOINT
SET TRANSACTION
附录6:Session Control Statements
ALTER SESSION
SET ROLE
第2讲课前提问:
(1)Oracle9i的产品组成是什么?
(2)Oracle9i数据库的运行模式是什么?
(3)请描述Oracle9i DS的物理模式
(4)请描述Oracle9i DS的逻辑模式
作业:
1.设计大商电器公司员工的数据库的数据类型:
员工编号,密码,姓名,部门编号,性别,籍贯,家庭住址,电话,传真,Mail,手机,相片图片,工资,出生日期,身份证号,参加公司日期,离开公司日期,教育简历,工作简历。