oracle9I学习笔记
Oracle第1章
9i系统入门 第1章 Oracle 9i系统入门
1.2 Oracle 9i 的安装
1.2.1 系统配置 1.硬件配置 . 一般来说,安装Oracle对服务器的硬件配置要求如下: (1) PentiumⅢ以上的CPU。 (2) 推荐使用256 MB以上的内存。 (3) 4GB以上的空闲硬盘空间。 (4) Oracle 9i的安装光盘共有3张,若采用光盘安装, 则需要进行大量的文件操作,因此建议选用快速光驱,最好 为16倍速以上。若有足够大的硬盘,则建议将光盘数据复制 到硬盘后再进行安装。
9i系统入门 第1章 Oracle 9i系统入门
图1-2 “文件定位”界面
9i系统入门 第1章 Oracle 9i系统入门 (3) 单击【下一步】按钮,出现如图1-3所示的“可用产 品”界面。“可用产品”的安装选项分别为Oracle9i Database 9.0.1.1.1、Oracle9i Client 9.0.1.1.1、Oracle9i Management and Integration 9.0.1.0.1,这些选项对应的详细 说明如表1-1所示。在这里选中“Oracle9i Database 9.0.1.1.1” 单选项,单击【下一步】按钮,出现如图1-4所示的“安装 类型”界面,选中“企业版”安装类型。
9i系统入门 第1章 Oracle 9i系统入门 1983年,RSI推出第3版。同年,RSI更名为Oracle Corporation,也就是今天的Oracle公司。 1984年,Oracle的第4版发布。该版本既支持VAX系统, 也支持IBM VM操作系统。 1985年,Oracle的第5版发布。该版本可称做Oracle发 展史上的里程碑,因为它具有分布式处理能力,同时支持客 户端/服务器的计算机模式,对数据进行集中存储与处理。 1988年,Oracle的第6版发布。该版本支持过程化语言 PL/SQL、事务处理选件TPO和热备份等功能。这时Oracle已 经可以在许多平台和操作系统上运行。
第8章 Oracle9i数据库对象的管理(2)
使用索引也会带来这样的缺点: 使用索引也会带来这样的缺点:建立索引需要占用磁盘空间并 增加了用于插入,删除和修改数据行的时间和空间的开销. 增加了用于插入,删除和修改数据行的时间和空间的开销.插 入数据行时需要在表和索引中都增加一行, 入数据行时需要在表和索引中都增加一行,修改数据行时需要 在表和索引中对当前行进行修改, 在表和索引中对当前行进行修改,删除数据行需要从索引中移 走当前行,这都会减慢相应操作的反应速度. 走当前行,这都会减慢相应操作的反应速度. 索引的类型可以从逻辑设计和物理实现两个方面进行分类. 索引的类型可以从逻辑设计和物理实现两个方面进行分类. 从逻辑设计方面来看, 从逻辑设计方面来看,可以把索引分为单列索引和多列复合索 唯一索引和非唯一索引,基于函数的索引等类型. 引,唯一索引和非唯一索引,基于函数的索引等类型.基于函 数的索引是Oracle9i索引的一大特点 , 用户可以根据表达式 , 索引的一大特点, 数的索引是 索引的一大特点 用户可以根据表达式, Oracle9i内部函数及 内部函数及PL/SQL和 Java编写的函数来创建索引 . 编写的函数来创建索引. 内部函数及 和 编写的函数来创建索引 创建基于函数的索引后, 服务器会自动检查PL/SQL 创建基于函数的索引后,Oracle9i服务器会自动检查 服务器会自动检查 语句中的WHERE子句以判断是否存在匹配的索引,保证查询 子句以判断是否存在匹配的索引, 语句中的 子句以判断是否存在匹配的索引 以最少的磁盘读写和最快的速度得到检索结果. 以最少的磁盘读写和最快的速度得到检索结果. 从物理实现方面来看,可以把索引分为B树索引 树索引, 从物理实现方面来看, 可以把索引分为 树索引, 位图索引和 簇索引,其中前两者是最常用的. 簇索引,其中前两者是最常用的.
Oracle+认证学习笔记
日志文件有时也叫做redo日志文件,是任何数据库的重要组成部分。它们的存在确保在系统崩溃、驱动错误或任何其它意外情况中断了正常操作的事件发生时数据库能够恢复。有两种redo日志文件:联机redo日志文件和归档redo日志文件。数据库先写日志,然后提交数据。可以通过v$logfile视图查看日志文件信息。通过archive log list命令查看归档日志文件信息。
一、系统全局区的大小可以通过如下语句查询:
sql> select * from v$sga;
name value
-------------------- ----------
fixed size 453492
variable size 109051904
database buffers 25165824
i. user:允许你看到你所拥有的相关数据库对象。
ii. all:允许你看到你可以访问的相关数据库对象。
iii. dba:允许你看到整个数据库中所有的相关对象。
4、 动态性能视图
v$database 存放数据库的常规信息
v$sysstat 存放数据库性能的大部分信息
v$session 存放用户会话信息
3、归档进程archive(arch)
负责把写满的redo文件复制到归档日志目标中。oracle最多允许有10个归档进程。log_archive_max_processes参数用来设置允许的最大数。
4、检查点进程checkpoint(ckpt)
用来减少执行实例恢复所需的时间。可以用数据库实例的init.ora文件中log_checkpioint_interval、log_checkpoint_timeout、fast_start_io_target 的参数来设置一个频繁出现的检查点。
第一章Oracle9i概述专题知识讲座
1.1 1.2 1.3 1.4
1. 5
数据库知识 关系数据库系统 Oracle企业及其产品
Oracle9i旳新特征 Oracle9i旳安装
1.1 数据库知识
1.1.1 数据库旳特点 1.1.2 数据库顾客
1.1.1 数据库旳特点
数据库是按照一定数据模型组织存储在一起 旳,能为多种应用程序共享旳、与应用程序 相对独立旳相互关联旳数据集合。
2.扩展性和性能改善
(1)Oracle9i Real Application Clusters
Cache Fusion (2)可伸缩旳会话状态管理 (3)对电子商务起关键作用旳优化特征
3.提供端到端旳安全体系构造 (1)强健旳三层安全性。 (2)基于原则旳公开密钥体系(PKI) (3)精心细化旳审计功能 (4)增强旳顾客和安全策略管理 (5)数据加密 (6)标签加密(Label Security) (7)Oracle Internet Directory
顾客不是一种物理构造,但是它与数据库旳 对象拥有非常主要旳关系,顾客拥有数据库对象, 以及对象旳使用权。
(6)模式(Schema) 顾客帐号拥有旳对象集合称为模式。
பைடு நூலகம்
(7)索引(Index)
索引是供顾客迅速查找到统计旳数据库构造。 Oracle中主要有簇索引、表索引、位图索引三 种索引形式。
(8)簇(Cluster) 经常被频繁引用旳表能够在物理位置上被
根据META集团最新公布旳市场研究报告,在高达130 亿美元旳全球关系型数据库软件市场上,Oracle9i数据库
名列第一。
Oracle有下列突出旳特点:
(1)支持大数据库、多顾客旳高性能旳事务处理。 (2)Oracle遵守数据存取语言、操作系统、顾客接 口和网络通信协议旳工业原则。 (3)实施安全性控制和完整性控制。 (4)支持分布式数据库和分布处理。 (5)具有可移植性、可兼容性和可连接性。
Oracle9i数据库的第2讲
第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 TypeBuiltin datatype 内置数据类型ANSI Supported data type ANSI支持的数据类型User-defined data type 用户自定义的数据类型Oracle Supplied Datatype Oracle提供的数据类型[] Oracle9i内置数据类型1.Character datatype2.Number datatype3.long and raw datatype4.Datetime datatyperge object datatype6.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 Formatthe 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或相关的工具。
Oracle9i学习笔记
2、进入OEM
A、开始->程序->Oracel-OradeHome90->Enterprise Manager Console
B、选择"独立启动"->确定,单击"+"激活数据库连接信息窗口。输入用户名SYS或SYSTEM,密码分别为change_on_install与manager.
例1、只启动实例而不装载数据库:STARTUP NOMOUNT;
例2、启动实例并装载数据库:STARTUP MOUNT;
注:例2只是启动实例并装载数据库,但不打开数据库,只允许执行特写的维护操作:
1)重命名数据文件 2)添加、撤消或重命名重做日志文件。
开始->程序->Oracle-OracleHome90->Configuration and Migration Tools->Database Configuration Assistant.
2、诊断,修改和优化多个数据库。
3、在多个系统上,按不同的时间间隔调度服务。
4、通过网络管理数据库的约束条件。
5、管理来自不同位置的多个网络结点和服务。
6、和其他管理员共享任务。
7、将相关的服务组合在一起,便于对任务的管理。
2、IMMEDIATE:立即关闭
3、TRANSACTIONAL:尽量少影响客户端,避免客户丢失信息。
4、ABORT:放弃一切事务,立即关闭。
关闭数据库需要进行以下工作:
1、关闭数据库文件和重做日志文件。
2、退出数据库
3、关闭Oracel的后台进程,释放SGA所占用的内存
说明:OPEN : 打开实例和所有文件(数据文件和日志文件),允许用户存取数据库。
Oracle公司内部数据库培训资料16_Oracle9i 日期函数
CURRENT_TIMESTAMP
• 按照当前会话的时区显示当前会话的时间
ALTER SESSION SET TIME_ZONE = '-5:0'; SELECT SESSIONTIMEZONE, CURRENT_TIMESTAMP FROM DUAL;
ALTER SESSION SET TIME_ZONE = '-8:0'; SELECT SESSIONTIMEZONE, CURRENT_TIMESTAMP FROM DUAL;
Oracle9i 日期函数
Copyright © Oracle Corporation, 2001. All rights reserved.
目标
通过本章学习,您将可以使用下列日期函数:
• TZ_OFFSET • CURRENT_DATE • CURRENT_TIMESTAMP • LOCALTIMESTAMP • DBTIMEZONE • SESSIONTIMEZONE • EXTRACT • FROM_TZ • TO_TIMESTAMP • TO_TIMESTAMP_TZ • TO_YMINTERVAL
•
好的事情马上就会到来,一切都是最 好的安 排。上 午9时52分10秒 上午9时52分09:52:1020.10.15
•
一马当先,全员举绩,梅开二度,业 绩保底 。20.10.1520.10.1509: 5209:52:1009: 52:10Oct-20
•
牢记安全之责,善谋安全之策,力务 安全之 实。2020年10月15日 星期四9时52分 10秒T hursday, October 15, 2020
TO_YMINTERVAL 应用举例
SELECT hire_date, hire_date + TO_YMINTERVAL('01-02') AS HIRE_DATE_YMININTERVAL
《Oracle9i基础教程》第7课管理控制文件
综合练习
1、查看控制文件信息 2、创建控制文件的副本和备份控制文件 3、使用副本恢复控制文件
•11
《Oracle9i基础教程》 第7课管理控制文件
2020年5月30日星期六
概述
本课内容
1、什么是控制文件 2、创建控制文件 3、操作控制文件
•2
概述
学习目标
1、熟悉控制文件 2、掌握创建控制文件 3、掌握控制文件的操作
•3
概述
学习重点
1、什么是控制文件 2、创建控制文件
学习难点
1、创建控制文件 2、操作控制文件
•4
什么是控制文件
1、控制文件的作用和内容 2、控制文件的名称和位置 3、控制文件的大小和数量 4、查看控制文件
•5
小结
1、介绍控制文件的作用和内容 2、介绍控制文件的名称和位置 3、介绍控制文件的大小和数量 4、介绍查看控制文件的方法
•6
创建控制文件
小结
1、介绍创建初始控制文件的语法 2、介绍创建控制文件副本的过程 3、介绍创建新的控制文件的方法
•8
操作控制文件
1、重命名和重定位控制文件 2、删除控制文件 3、备份控制文件 4、使用副本恢复控制文件
•9
小结
1、介绍重命名和重定位控制文件的方法 2、介绍删除控制文件的方法 3、介绍备份控制文件的方法 4、介绍使用副本恢复控制文件的方法
Oracle9i关系数据库实用教程 (9)
(3)慎重使用视图的联合查询
慎重使用视图的联合查询,尤其是比较复杂的视图之间的
联合查询。一般对视图的查询最好都分解为对数据表的直接 查询效果要好一些。 可以在参数文件中设置SHARED_POOL_RESERVED_SIZE参 数,这个参数在SGA共享池中保留一个连续的内存空间,连 续的内存空间有益于存放大的SQL程序包。
(3)调整数据库SQL语句。
(4)调整服务器内存分配。
(5)调整硬盘I/O,这一步是在信息系统开发之前完成的。
(6)调整操作系统参数。
二、不同类型系统的优化
1.在线事务处理信息系统(OLTP)
这种类型的信息系统一般需要有大量的Insert、Update 操作。OLTP系统需要保证数据库的并发性、可靠性和最终
②语句B:
SELECT dname,deptno FROM dept WHERE NOT
EXISTS(SELECT deptno FROM emp WHERE dept.deptno = emp.deptno);
(2)索引不起作用的情况
①存在数据类型隐形转换
②列上有数学运算
③使用不等于(<>)运算
本章内容
9.1 数据库性能优化概述 9.2 SQL语句的优化 9.3 Oracle运行环境的优化 9.4 并发事件处理 9.5 数据完整性 9.6 数据库性能优化的工具 9.7 常见问题处理 9.8 案例分析
9.1
数据库性能优化概述
一、数据库性能优化的内容
(1)调整数据结构的设计。 (2)调整应用程序结构设计。
第 9章 Oracle的性能优化
Oracle9i关系数据库
本章练习
1.影响Oracle数据库性能的因素主要有哪些?
Oracle9iDBA的讲义
重做日志缓冲区
– 记录所有对数据库数据的改变 – 主要目的是恢复 – 修改记录在这里叫重做条目 – 重做条目包含重新构造或重做改变的信息 – 参数LOG_BUFFER决定其大小
重做日志缓冲区
大池
– SGA 中一块可选的内存区域 – 减轻共享池的负担 – 不使用最近最少使用(LRU)清单 – 参数 LARGE_POOL_SIZE 决定其大小 – 可以动态改变大小
共享池 库缓冲区
实例 SGA
数据库或重区 重做日志缓冲区
内存结构
数据字典缓冲区
Java 池
大池
PMON SMON DBWR LGWR CKPT Others
后台进程
建立连接和创建会话
• 连接到 Oracle 实例:
– 建立一个用户连接 – 创建一个会话
连接已建立
服务器进程
用户进程
会话被创建 Oracle 服务器
– 认识DBA管理数据库的基本工具 – 知道Oracle 通用安装程序的作用 – 使用 SQL*Plus 同一个Oracle 数据库进行
交互和操作 – 列出Oracle 企业管理器的主要组成部分
管理 Oracle 实例
目标
• 学习完本节,我们将能够:
– 创建并管理初始化参数文件 – 启动和关闭一个实例 – 监控和使用诊断文件
– 创建数据库 – 配置数据库参数 – 删除数据库 – 管理模版
数据库管理员账号
– 用户 SYS 和 SYSTEM 是自动生成的
• 在数据库创建的过程中 • 赋予了DBA角色
– 用户 SYS
• 是数据库数据字典的拥有者 • 缺省密码: change_on_install
第一章 Oracle 9i基础
1.7 Oracle 9i的两种工作模式
●易于分布处理:三层结构显然将数据库的功能更 加分散,从而更有利于分布式处理。 ●提更了性能:由于发送到客户机上的数据少,所 以多数会话可能在应用程序服务器和数据库服务器 之间进行,因而减少了数据库和客户机之间的通信 量,提高了性能。 ●简化对客户机的维护
1.7 Oracle 9i的两种工作模式
C/S模式和B/S模式比较 C/S模式是两层结构, B/S模式是三层结构,亦称 为“瘦客户机”。后者的优点: ●可测量性:一个服务器仅仅能处理有限的客户机, 而在三层模式中,每个客户机不是直接与数据库服 务器连接,而是连接在应用程序服务器上,这样, 就可以通过增加应用程序服务器来增加客户机的数 量。 ●有利于应用程序的执行:在三层结构中,应用程 序的请求从客户机层传递到应用程序服务器层。通 常,应用程序服务器比客户机的性能更强,所以应 用程序的执行更好一些。
数据文件:用于存放所有的数据,以 DBF 为扩展名。 日志文件:记录了对数据库进行的所有操作,以 LOG 为扩展名。 控制文件:记录了数据库所有文件的控制信息,以 CTL 为扩展名。
1.7 Oracle 9i的两种工作模式
客户机/服务器模式(C/S模式)
1.7 Oracle 9i的两种工作模式
浏览器/服务器模式(B/S模式关系型数据是以关系数学模型来表示的数据,关系 数学中以二维表的形式来描述数据。
1.1关系型数据库简介
关系型数据库 关系型数据库指存储在计算机上的、可共享的、 有组织的关系型数据的集合。 关系型数据库管理系统 关系型数据库管理系统是位于操作系统和关系 型数据库应用系统之间的数据库管理软件。 关系型数据库应用系统 关系型数据库应用系统指为满足用户需求,采 用各种应用开发工具(如 VB、PB 和 Delphi 等) 和开发技术开发的数据库应用软件。
Oracle9i笔记2
Chapter 12 creating packagesObjectivesAfter completing this lesson, you should be able to do the following:●Describe packages and list their possible components●Create a package to group together related variables, cursors, constants, exceptions,procedures, and functions.●Designate a package construct as either public or private●Invoke a package construct●Describe a use for a bodiless packagePackages●Group logically related PL/SQL types, items, and subprograms●Consist of two parts:⏹Specification⏹Body●Cannot be invoked, parameterized, or nested●Allow the oracle server to read multiple objects into memory at once.How to Develop a packageThere are three basic steps to developing a package, similar to those steps that are used to develop a stand-alone procedure.1.Write the text of the CREATE PACKAGE statement within a SQL script file to create thepackage specification and run the script file. The source code is compiled into P code and is stored within the data dictionary.2.Write the text of the CREATE PACKAGE BODY statement within a SQL script file to create thepackage body and run the script file.The source code is compiled into P code and is also stored within the data dictionary.3.Invoke any public construct within the package from an oracle server environment.create or replace package package_wolfyasprocedure add_dept(deptno in number,deptname in varchar2);procedure add_emp(empno1 IN number, ename1 IN varchar2,salary1 IN number,deportno1 IN number,DPNAME IN VARCHAR);procedure del_emp(ID IN NUMBER);function numtochar2(num in number) return varchar2;end;create or replace package body package_wolfy asend;Advantages of Packages 1●Modularity: encapsulate related constructs. 模塊化:壓縮有關系的構件。
第9章 Oracle9i数据库的安全性
Introduction of Large Database 第7 章 Oracle9i数据库的安全性 Oracle9i数据库的安全性
学习目标
1,掌握创建,查看,修改和删除用户的方法. 掌握创建 查看,修改和删除用户的方法. 创建, 2,掌握授予和撤销系统权限,对象权限的方法. 掌握授予和撤销系统权限 对象权限的方法. 授予和撤销系统权限, 3,掌握创建,查看和删除角色的方法. 掌握创建 查看和删除角色的方法. 创建,
上面语法中各参数描述如下: 上面语法中各参数描述如下: IDENTIFIED BY 密码 密码|EXTERNALLY|GLOBALLY AS'外 外 部名' 定义了认证方式.这里有3种认证方式供选择 种认证方式供选择, 部名':定义了认证方式.这里有 种认证方式供选择,分别 是数据库认证,外部认证和全局认证. 是数据库认证,外部认证和全局认证. DEFAULT TABLESPACE:只有在允许用户创建数据库对 : 例如表或索引)时才需要它.否则,不需要默认的表空间. 象(例如表或索引)时才需要它.否则,不需要默认的表空间. 如果没有指定一个默认的表空间, 如果没有指定一个默认的表空间,那么新用户将继承创建它的 用户的默认表空间. 用户的默认表空间. TEMPORARY TABLESPACE: Orcale9i有时需要临时表 : 有时需要临时表 空间对查询结果排序,执行一个连接或其它任务. 空间对查询结果排序,执行一个连接或其它任务.如果省略了 这个选项, 则使用在CREATE DATABASE命令或者随后的 这个选项 , 则使用在 命令或者随后的 ALTER DATABASE命令所指定的默认临时表空间(若未指定, 命令所指定的默认临时表空间( 命令所指定的默认临时表空间 若未指定, 则使用SYSTEM表空间). 则使用 表空间) 表空间 QUOTA:配额,即在表空间中可以分配给用户的最大存储 :配额, 空间.利用QUOTA选项可以限制允许用户使用的表空间的数 空间 .利用 选项可以限制允许用户使用的表空间的数 限制各用户的总存储空间可以防止数据库不受控制地增长, 量.限制各用户的总存储空间可以防止数据库不受控制地增长, 限制临时存储空间可以防止一个用户使用了太多的临时空间, 限制临时存储空间可以防止一个用户使用了太多的临时空间, 导致其他用户的操作很慢或者停止. 导致其他用户的操作很慢或者停止.
oracle9I 的一些心得
文档资料ORACLE9i数据库学习心得作者:Peter.W2005-1-25一:Oracle9i的体系结构Database1、物理结构控制文件:包含维护和验证数据库完整性的必要信息、例如,控制文件用于识别数据文件和重做日志文件,一个数据库至少需要一个控制文件数据文件:存储数据的文件重做日志文件:含对数据库所做的更改记录,这样万一出现故障可以启用数据恢复。
一个数据库至少需要两个重做日志文件参数文件:定义Oracle 例程的特性,例如它包含调整SGA 中一些内存结构大小的参数归档文件:是重做日志文件的脱机副本,这些副本可能对于从介质失败中进行恢复很必要。
密码文件:认证哪些用户有权限启动和关闭Oracle例程2、逻辑结构表空间:是数据库中的基本逻辑结构,是一系列数据文件的集合。
段:是对象在数据库中占用的空间区:是为数据一次性预留的一个较大的存储空间块:ORACLE最基本的存储单位,在建立数据库的时候指定3、内存分配SGA:是用于存储数据库信息的内存区,该信息为数据库进程所共享。
它包含Oracle 服务器的数据和控制信息,它是在Oracle服务器所驻留的计算机的实际内存中得以分配,如果实际内存不够再往虚拟内存中写。
PGA:包含单个服务器进程或单个后台进程的数据和控制信息,与几个进程共享的SGA 正相反PGA 是只被一个进程使用的区域,PGA 在创建进程时分配在终止进程时回收4、后台进程数据写进程:负责将更改的数据从数据库缓冲区高速缓存写入数据文件,需要DBWR写的数据队列由SERVER PROCESS或DBWR定时扫描LRU队列生成,或在出现检查点时,由CKPT通知。
日志写进程:将重做日志缓冲区中的更改写入在线重做日志文件 ,oracle使用write-ahead日志方式,在DBMn任何写操作之前,LGWR都要使用同步方式将与该写操作相关的日志项写入日志文件,保证LGWR写入的SCN不小于DBWR写入的SCN。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
一:第一讲1:Oracle server:管理系统管理信息包含oracle instance +oracle database2:oracle instance:实例:访问oracle database的中介一个instance只能访问对应一个database 多个instance可以对应一个databaseInstance包含了memory and peocess (内存和进程)3:connection 连接:oracle客户端(user peocess)和后台服务器进程(server peocess)建立的tcp链接Peocess:包含了server peocess user peocess background processes 后台进程4:session会话:与连接相对应5:oracle database:包含data files(以dbf结尾的)数据文件control files(以ctl结尾的)控制文件redolog files(以log结尾的)重做日志文件(用于恢复数据文件记录数据文件的变化)parameter file参数文件archived log files 归档文件(与redolog files文件相关)password file 存储口令6:linux ora9i启动Sqlplus /nologConn /as sysdbaStartup!(切换到linux shell)7:memory structure (内存结构):包含了SGA(system global area 系统全局区)+PGA(program global area)一个oracle instance(实例)只有一个SGA (主要消耗内存的地方)实现方式为共享内存一个server process 对应一个PGA(一个后台进程对应一个PGA)第二讲:内存结构1:SGA:包含share pool (关系数据库性能)+database buffer cache +redo log buffer(ps –ef |grep oracle)查看SGA :show sgaSGA_MAX_SIZE :SGA最大尺寸基本单位叫granules 4M(<128)/16M(>128)查看granules大小select component, granule_size from v$sga_dynamic_components;2:shared pool 共享池(解析好的SQL语句)包含library cache+data dictionary cache更改shared pool尺寸alter system set shared_pool_size=64M3:library cache(存储经过编译解析过的sql语句)4:data dictopmary cache(存储数据库控制信息)数据字典5:database bugger cache 访问数据时首先查询database bugger cache里有没有没有database bugger cache会向硬盘索要在返回给用户Database bugger cache包含了db_cache_size +b_keep_cache+size +b_recycle_cache_size 可以通过alter system set db_cache_size=96M 调整尺寸6:redo log buffer 对应的是redo log files7:large pool:处理额外工作8:java pool9:PGA第三讲:进程结构1:process structure 包含了user process +server process+ background processes2:user process 客户端进程3:windows下通过sqlplus 连接oraCmdCd\Sqlplus system(用户名)/oracle(口令)@oeacle9ivm(数据库)4:server process 与客户端进程对应的5:background process 包含了6:DBWn(0-9,a-g) :database writer(将sga中的database buffer cache的内容写入datafeiles) 7: log writer (将sga 中的redo log buffer 的内容写入redo log files)8: system monitor 系统管理器清理未释放的SGA内容9:process monitor 监控其他服务正常运作10:checkpoint11: archiver12:oracle logical structure :ora逻辑结构一个ora ser上只有一个ora database一个database可以有多个tablespace(表空间)组成一个tablespace 可以有多个segment组成一个segment可以有多个extent组成一个extent是有连续的blocks(一个8k)组成13:ora处理sql语句的过程连接—安全检查—解析---绑定变量---执行—返回值第五讲:oracle ser入门:1:DBA工具2:oracle universal installer:安装升级删除软件java编写的./runinstaller (安装程序linux下) 图形界面下运行安装可以在字符不要以root用户安装3:oracle DBCA :ora数据库配置助手(需要在图形界面运行)4:自动创建账户SYS(超级用户)+ SYSTEM(仅次于sys)SYS默认口令为change_on_install (可以创建数据库)SYSTEM口令为manager5:SQL*Plus 与数据库交换关闭启动数据库启动sql plusSqlpkus /nologConn / as sysdbaStartup6:oracle enterprise manager 管理很多个企业级数据库的工具第六讲:管理一个ora实例1:initialization parameter files 初始化参数文件:Spfiledb01.ora (启动时读取的初始化文件定义了ora instance的相关参数)2:启动ora以ora用户登录到linuxSqlplus /nolongConn / as sysdba(以sysdba身份登录)Startup (读参数文件按照参数文件规定启动)!(切换到linux shell)3:desc v$parameter (ora视图参数)Select name, value from v$parameter where name=’pga_aggregate_target’;查看pga_参数值或者使用show parameter pga_(省略写法ora会自动匹配)4:参数文件分为pfile +spfile位置linux位于$oracle_home(ora安装目录)/dbsWindows位于位于$oracle_home(ora安装目录)/databaseInit.ora示例文件(可以基于此文件改动ora)5:参数文件命名管理initSID.oraEnv |grep ORACLE 查看ORACLE SID=?加入ORACLE_SID=Wilson则参数文件为initwilson.ora(前体是使用的是Pfile 如果使用的是spfile则参数文件为spfilewilson.ora)第七讲:参数文件pfile和spfile的区别数据库在运行期间所修改的参数只能保存在内存中间不能保存在pfile里只有把database关闭后修改;spflie(2进制文件)则不同修改后直接保存在spfile里1:怎么创建一个PFILE(参数文件)拷贝系统初始的init.ora到数据库安装目录下的/dbs/initSID.ora(拷贝并重命名)不推荐使用init.ora版本太老可以考别人的配置自己改编辑initSID.ora 需要修改的DBname=SID+db_block_size=8192Control_file= (‘控制文件1位置’,‘控制文件2位置’)关闭数据库shutdown abort;2:SPFILE---spfileSID.ora(2进制文件不能用VI等编辑只能使用ora命令编辑) 怎么创建一个spfile?通过一个pfile创建一个spfile (created spfile from pfile)Created spfile =’所要创建的spfile位置以及名称’fom pfile = ‘pfile所在位置’;怎么查看spfile内容?Strings spfileSID.ora | more (strings是提取一个二进制文件里可打印的字符出来)第八讲:1:修改Spfile里面的内容Alter system set parameter=value <comment=’text’><scope=memory|spfile|both> <sid=’sid|*’> :设置parameter=valueSid=’sid|*’:代表所修改的参数是针对哪个SID的如果是*则代表针对所有Scope=memory|spfile|both :代表修改范围内存里|磁盘文件|2个都改不写则代表bothComment=’text’:代表对这个值作注释Deferred :代表下次有效Alter system restet parameter sid=’*|sid’;:将parameter重置为ora缺省值2:show parameter [] :查看某个参数在内存中的值第九讲:ora的启动和关闭关闭数据库:shutdown immediate1:ora启动的时候查找的参数文件顺序SpfileDIS.ora ----default SPFILE[spfile.ora]------initSID.ora-----default Pfile2:如果在启动中项优先使用pfile即initSID.ora 则使用Startup pfile = $oracle_home/dbs/initSID.ora startup 后面只能使用pfile3: 如果想使用非缺省的spflie启动呢?则可以在$ORACLE_HOME/dbs/ 建立一个pfile如abc.ora 然后在文件中写入Spfile=非缺省的spfile.ora的位置4:who can startup DB? System administrator+ sys+sysoper+ system+ sysdba5:启动数据库的阶段Showdown----ora未启动只是一堆磁盘文件Startup nomount后Nomount-----根据pfile/spfile找到control_files根据CONTROL_FILES 挂载db 将DB于instance 建立连接Mount----- :alter database mountCONTROL_FILES 中指定的文件查找初始文件重做日志文件如果没有则会报错Open ------ :alter database openAlter database xx open read only 把一个数据从open状态变为只读第十讲:create user USERNAME identified by PASSWORD;创建一个用户Grant connect, resource to boobke;授予连接权限1:STARTUP相关参数Force 强制启动Restricted 将数据库启动为只有某些有特权的用户可以连接此数据库这个状态用来管理员维护数据库Alter system enable restricted session;将数据从open转换到上面的状态2:将用户踢出数据库首先查询目前连接数据库的用户select sid, serial#, username from v$session;踢出用户alter system kill session ’SID,SERIAL#’Startup mountalter database open read only:将数据库启动为只读模式3:关闭数据库的阶段Close a database 将SGA中的数据写到磁盘文件中,将连接的数据文件redo log file文件关闭,control files文件依然打开Umount a database 关闭控制文件instance 依然存在Shut down an instance 释放内存杀掉进程4: Shutdown 参数A=abort 关闭所有I = immediate 推荐T =transactional(等用户commit; (提交)时才关闭N= noramal (使用shurdown noramal时只有当用户的会话或者链接断开时数据库才会关闭)第11讲:创建表create table tablename(id integer, name char(20));Insert into tablename values(0, ‘wilson’); 插入内容Commit; 提交1:diagnostic files 诊断文件包含后台一些重大事件的信息帮助DBA日常管理2:诊断文件分为Alert文件和trace文件Alert文件名为alertSID.log filesTrace文件分为background trace files和user trace filesBackground trace files文件名为SID_processname_PID.trcUser trace files文件名为SID_ora_trc不同平台不同版本还有些许差别3:alertSID.log:记录了所有操作重大事件结果每个事件都有时间戳位置有参数BACKGROUND_DUMP_DEST决定可以通过show parameter dump查看此参数参数后面会表明此log file位置可以通过此日志中的相关参数来构造pfile文件[pfile文件丢失后4.Background trace file :后台进程日志文件记录后台错误进程[只有遇到后台错误才写日志]此文件的位置由参数BACKGROUND_DUMP_DEST决定5:user trace files:一个用户连接后台ora进程如果此连接出现错误则写入此文件位置由USER_DUMP_DEST 决定大小由MAX_DUMP_FILE_SIZE6:用户会话中除了出现错误记录外还可以设置任何操作都记录(查询错误的时候开启一般关闭)在session level设置ALTER SESSION SET SQL_TRACE = TRUE (建议)直接在用户会话端设置在instance level设置SQL_TRACE = TRUR第12讲:1:利用alertSID.log文件内的参数信息创建一个spfile/pfileAlert-SID.log 文件的结尾一段记录了与pfile相同的参数如果pfile文件丢失,则可以复制其中的内容建立一个pfile文件注意其中的字符串必须加引号2:taif –f 查看文件新增内容3:将数据库置于只读状态Shutdown immediateStartup mount;Alter database open read only;4:使用HR用户密码HR插入内容(HR用户创建数据库的时候会生成但是出于锁定状态)解锁HR用户Ora所有用户都位于表dba_users内可以使用desc dba_users;来查看使用select username,account_status from dba_users; 来查看用户状态使用alter user hr account unlock;来解锁这个用户使用alter user hr identified by hr;将hr置于open状态(可连接数据库状态)Sqlplus hr/hrInsert into regions values(5. ‘Mars’)第四章:创建database第13讲:1:创建数据库之前需要考虑的因素数据库的目的数据库大致分为LTP连接事务处理OLIP数据仓库文件、数据的布局数据库名2:创建数据库/迁移/升级3:OFA:oracle推荐的布局规则建立统一的目录结构,把不同的对象放在不同的表空间内,将不同的文件放在不同的磁盘块上4:目录规范5:正式创建一个数据库拥有一个账户操作系统的或者ora的拥有足够的内存和磁盘空间来启动oraOracle 用户口令文件等存在$oracle_home/dbs/orapwSID内Ora的登陆认证方式第14讲:如果要让远端的客户端连接进ora 必须在ora服务器上使用lsnrctl start命令1:ora psswd管理软件orapwdOracle口令文件默认存放于$oracle_home/dbs/orapwSID内可以使用:来创建一个口令文件,(其中password=admin:意思是SYS用户的密码为admin)创建完口令文件后还需要在初始化配置文件中加入:REMOTE_LOGIN_PASSWORDFILE=’EXCLUSIVE’ (pfile/spfile)在口令文件中加入用户也可以赋权:grant sysdba to username;2:创建数据库1:使用DBCA创建2:使用命令手动创建A:使用DBCA创建数据看1:修改完前期配置文件后dbca(可以选择使用不同的账户来创建不同的数据库,或者使用不同的用户SID来创建不同的数据库,EXPORT ORACLE_SID=XX)选择数据库模板数据名和用户的SID相同env | grep username参数信息可以通过ALL Initial修改各个文件的路径可以通过password managerment设置其他用户并开启状态第15讲:B:手工创建数据库.选定一个名字.选择字符集.设置环境变量.创建初始化参数文件pfile.将数据库实例instance启动到nomount状态.执行create database.在数据库中加入数据字典包等.增加额外的tabalespacesC:1:SID2:设置环境变量3:确定DBA的认证方式4:创建pfile5:(windows)创建instanse6:连接至instance7:create a server parameter file8:start the instance9: issue the crtate database statement10: create additional tablespaces11:run scripts to build data dictionary views12:run scripts to install additional options(optional) 13:back up the database14:(optional) enable automatic instance startupD:使用手工方式创建简单数据库1:设置环境变量2:创建初始化文件Vi pfile3:连接至instanceSqlplus /nologConn /as sysdba4:利用pfile 至spfile 【可选】Create spfile from pfileSpfile生效必须重启5:start the instanceStartup nomount6:create database databasename;第16讲:上图替换wilson为bbk 替换*. 为无‘.’为特殊字符需要用‘\’转换手动创建数据库1:创建初始化参数文件spfileSID.ora通过拷贝已有的数据库初始化参数文件spfile 来生成一个pfile文件然后通过更改pfile文件来Strings spfileSID.ora > initSID.oraVi initSID.ora替换原有文件的实例名去掉文档中的’*.’2:根据初始化参数文件中的内容创建需要的目录使用oracle用户1:$ORACLE_HOME/oradata/实例名2:$ORACLE_HOME/oradata/实例名/archive3:$ORACLE_HOME/admin/实例名4:$ORACLE_HOME/admin/实例名/bdump5:$ORACLE_HOME/admin/实例名/cdump6:$ORACLE_HOME/admin/实例名/create7:$ORACLE_HOME/admin/实例名/pfile8:$ORACLE_HOME/admin/实例名/udump9:$ORACLE_HOME/dbs/orapwSID (orapwd file=orapwSID password=PASSWDentries=用户数)3:准备create database 命令文件创建一个.sql结尾的语句命令文件加入如下关于数据库具体配置参数设置的命令(其中相关参数要与初始化参数配置文件中的对应如UNDO TABLESPACE “UNDOTAS1”则spfile中的undo_tablespace=’UNDOTBS1’)4:设置环境变量(可以事先创建以.env结尾的文件,加入如下内容设置环境变量时使用命令‘. ./xxx.env’即可)5:sqlplus /nologConn /as sysdbaCreate spfile from pfile(从步骤2中的pfile生成spfile文件)Startup nomount; (启动数据库实例)@$ORACLE_HOME/dbs/xx.sql ;(执行4步骤中所建立的create database 命令文件):创建系统表空间创建中可以tail –f alert_SID.log文件查看过程及错误(admin/实例名/bdump)如果在创建过程出现错误则必须删除3中几个文件夹下的生成的内容6:创建用户表空间(可选项建议执行)7:创建数据字典执行下列语句每执行一个sql语句前前键入spool log1.log 将执行过程记录在log1.log文件内;第五章:数据字典data dictionary 动态性能表dynamic performance views第18讲:1:data dictionary:oracle database核心组件、数据库对象只读方式存储在system tablespace 文件内由SYS所有数据库自己修改2:DD表分为base table基表(由命令sql.bsq)+data dictionary views(基于基表创建的视图表由命令catalog.sql语句创建的)3:数据字典提供的信息存储了数据的物理结构和逻辑结构每个对象的定义和空间分配情况数据完整性的约束用户信息角色信息特权信息审计信息4:数据字典的用处第19讲:dynamic performance tables第6章:了解掌握控制文件的用处内容(控制文件的入门)第20讲:Control Files2进制文件、定义了数据库当前的物理状态,保证数据库完整性,一个控制文件对应一个数据库一个数据库对应多个数据文件、丢失控制文件可以恢复大小主要有create database命令决定1:startup nomount:状态数据库所作的的查找spfileSID.oraSGA启动进程打开alertSID.log +trace file2:mount:从1:中读取的参数文件中所指定的contorl file文件位置找到contorl file 并读取到内存中3:openOpen data filesOpen redo log files4:control file文件内容entries数据库名字和数据库ID数据库创建的时间戳表空间以及名字记录的数据文件和连接文件的位置信息连机日志的顺序序号检查点信息Redo log archive informationBackup information5:控制文件应该对应2个以上并且放在不同的磁盘上第21讲:1:怎么实现增加控制文件.连接至数据库conn /as sysdba.查看control file文件信息show parameter control.执行增加语句的命令alter system set control_file=’CONTROL01 FILE位置’ , ’CONTROL02 FILE位置’scope=spfile;.关闭数据库shutdown immediate.退出ora 复制已有的control file文件至指定的新位置.strings sfpfileSID.ora | more 查看是否修改.启动数据库查看control file文件show parameter control2:管理control file第七章:maintaining online redo log files 维护联机重做日志第22讲:redo log file1:redo log file 特点主要用来备份恢复数据库记录数据库的所以操作提供了一种恢复机制至少有2组联机重做日志文件,分别属于2个组2:online redo log file groupMember 成员3:LGER:负责写联机重做日志的进程4:多路复用:为了确保联机日志文件不被损坏避免单点故障。