您好,欢迎访问三七文档
当前位置:首页 > IT计算机/网络 > 数据库 > ORACLE数据库管理基础
ORACLE数据库管理基础认真就是能力,细心就是优势!Jerry序数据库管理员是一个或一组全面负责管理和控制数据库系统的人员。简称:DBA(DataBaseAdministrator)ORACLE数据库管理基础了解Oracle体系结构中的各种组件启动和关闭Oracle数据库创建可操作的数据库管理Oracle控制文件、重做日志文件、数据文件、表空间、段、区和块管理用户、权限和资源使用“全球化支持”功能什么是Oracle9i企业版?Oracle9i企业版是一种可伸缩且易于管理的对象关系数据库。本课程就最基本的企业版的管理进行了探讨。但是,下列选件还提供了其它功能。•分区(Partitioning):提供了一些可用于执行大型、可伸缩的应用程序的实用工具。通过它,您可以在比基本企业版中更低的粒度级别上控制表和索引•实时应用集群(RealApplicationClusters):改善数据库的可伸缩性和可用性,这是通过允许Oracle软件的多个副本访问单个数据库来实现的•OracleEnterpriseManager工具包:构建在OracleEnterpriseManager的基础上。OracleEnterpriseManager的诊断包(DiagnosticsPack)、优化包(TuningPack)和更改管理包(ChangeManagementPack)均是附件,可以为DBA提供一整套工具,用来对Oracle环境进行高级诊断、监视、优化以及管理更改。•高级安全(AdvancedSecurity):使用加密和数据完整性检查来提供客户机-服务器和服务器-服务器的网络安全,同时可使用第三方安全服务来支持增强的用户验证服务。数据库管理员的任务•计划和创建数据库•管理数据库可用性•管理物理结构和逻辑结构•根据设计管理存储•管理安全•网络管理•备份和恢复•数据库优化体系结构概述物理结构数据文件、日志文件、控制文件、参数文件系统全局区(SystemGlobalArea)共享池、数据缓冲区、日志缓冲区进程用户进程、服务器进程、后台进程口令文件主要组成部分简图实例SGA重做日志缓冲区共享池数据字典缓冲区库缓冲区DBWRSMONPMONCKPTLGWROthers用户进程服务器进程PGA控制文件数据文件数据库数据库缓冲区重做日志文件Java池大池参数文件归档日志文件•Oracle服务器:Oracle服务器中包含多种文件结构、进程结构和内存结构;但是,处理SQL语句时,并非所有这些结构都会用到。某些结构用于提高数据库的性能,确保该数据库在遇到软件或硬件错误时可以恢复,或者执行维护该数据库所需的其它任务。Oracle服务器包括一个Oracle例程和一个Oracle数据库。•Oracle例程:Oracle例程是后台进程和内存结构的组合。只有启动例程后,才能访问数据库中的数据。每次启动例程时,会分配系统全局区(SGA)并启动Oracle后台进程。后台进程代表调用进程执行各种功能。它们把为每个用户运行的多个Oracle程序所处理的功能统一起来。后台进程执行输入/输出(I/O),并监视其它Oracle进程来提高并行性,从而使性能和可靠性更加优越。基本组件概览•Oracle数据库:Oracle数据库包含操作系统文件(也称为数据库文件),这些文件为数据库信息提供了实际的物理存储。数据库文件用于确保数据一致性并能在例程失败时得以恢复。•其它关键文件:非数据库文件用于配置例程、验证特权用户以及在磁盘出现故障时恢复数据库。•用户进程和服务器进程:执行SQL语句时,用户进程和服务器进程是其中涉及的主要进程;但是,其它进程也会有助于服务器完成SQL语句的处理。•其它进程:还有很多供其它选件使用的其它进程,例如,高级排队(AdvancedQueuing)、实时应用集群(RealApplicationClusters)、共享服务器(SharedServer)和高级复制(AdvancedReplication)等基本组件概览Oracle服务器端Oracle服务器端:是一个提供开放的、全面的、完整的信息管理的数据库管理系统由Oracle实例和Oracle数据库组成Oracle服务器Oracle服务器数据库服务器是信息管理的关键。一般来说,服务器必须可靠地管理多用户环境中的大量数据,以便多个用户能够同时访问同一数据。所有这一切都必须在保证高性能的同时进行。数据库服务器还必须防止未经授权的访问,并为故障恢复提供有效的解决方案。实例(INSTANCE)是存取和控制数据库的软件机制,它由系统全局(SystemGlobalArea,简称SGA)和后台进程组成由系统全局区(SGA)内存结构和用于管理数据库的后台进程组成。例程是通过使用特定于每个操作系统的方法来标识的。例程一次只能打开和使用一个数据库。Oracle实例Oracle实例:提供对Oracle数据库的访问通常打开一个,只打开一个数据库由内存空间和后台进程组成后台进程内存结构实例SGA重做日志缓冲区共享池数据字典缓冲区库缓冲区DBWRSMONPMONCKPTLGWROthers数据库或重区Java池大池建立连接和创建会话连接到Oracle实例:建立一个用户连接创建一个会话会话被创建用户用户进程服务器进程连接已建立Oracle服务器建立连接和创建会话用户只有在连接到例程后,才能向Oracle数据库提交SQL语句。•用户启动SQL*Plus之类的工具,或者运行使用OracleForms之类的工具开发的应用程序。该应用程序或工具将作为用户进程来执行。•在最基本的配置中,用户登录到Oracle服务器时,运行Oracle服务器的计算机上就会创建一个进程。这个进程称为服务器进程。服务器进程代表客户机上运行的用户进程与Oracle例程进行通信。服务器进程代表用户执行SQL语句。连接连接是用户进程和Oracle服务器之间的通信路径。数据库用户可以采用以下三种方式之一连接到Oracle服务器:•用户登录到运行Oracle例程的操作系统上,然后启动访问该系统中的数据库的应用程序或工具。通信路径是使用主机操作系统上的进程间通信机制建立的。•用户在本地计算机上启动应用程序或工具,然后通过网络连接到运行Oracle例程的计算机。在这个称为客户机/服务器的配置中,用户和Oracle服务器使用网络软件进行通信。•在三层连接中,用户计算机通过网络与应用程序服务器或网络服务器进行通信,这些服务器又通过网络与运行Oracle例程的计算机连接。例如,用户在网络中的一台计算机上运行浏览器来使用位于NT服务器上的应用程序,该NT服务器又从UNIX主机上运行的Oracle数据库中检索数据。会话会话是用户与Oracle服务器的一种特定连接。会话在Oracle服务器验证用户后启动,当用户退出或出现异常终止时会话结束。对某个具体的数据库用户来说,如果该用户从很多工具、应用程序或者终端同时登录,则可能有很多并发会话。除了一些专用的数据库管理工具以外,启动数据库会话还要求Oracle服务器可供使用。注:在此处所讲的连接类型中,用户进程和服务器进程之间存在一对一的通信关系,这称作专用服务器连接。使用共享服务器(SharedServer)配置时,多个用户进程可以共享服务器进程。Oracle数据库Oracle数据库:是所有数据的集合由三种类型的文件组成口令文件参数文件归档日志文件控制文件数据文件重做日志文件Oracle数据库Oracle数据库Oracle数据库具有逻辑结构和物理结构。数据库的物理结构是数据库中操作系统文件的集合。Oracle数据库包含以下三类文件:•数据文件,包含数据库中的实际数据•重做日志文件,包含数据库的更改记录,可以在出现故障时恢复数据•控制文件,包含维护和验证数据库完整性所需的信息Oracle数据库Oracle服务器还使用一些其它文件,这些文件并不是数据库的一部分:•参数文件,用来定义Oracle例程的特性。例如,它包含调整SGA中一些内存结构大小的参数。•口令文件验证哪些用户有权启动和关闭Oracle例程。•归档的重做日志文件是重做日志文件的脱机副本,当必须从介质失败中进行恢复时可能会需要这些副本。物理结构物理结构包含三种类型的文件:控制文件数据文件联机重做日志控制文件数据文件联机重做日志内存结构Oracle的内存包括两个内存区域:系统全局区(SGA):是Oracle实例的基本组成部分,随实例的启动而分配程序全局区(PGA):服务器进程启动时分配系统全局区SGA由以下几种内存结构组成:共享池(SharedPool)数据库缓冲区(DatabaseBufferCache)重做日志缓冲区(RedoLogBuffer)其它结构SGA中的两种可选的附加内存结构:大池(LargePool)Java池(JavaPool)系统全局区(SGA)SGA也称作共享全局区,用于存储数据库进程共享的数据库信息。它包含有关Oracle服务器的数据和控制信息,在Oracle服务器所在计算机的虚拟内存中分配。要查看SGA内存的分配情况,可以使用下面的语句:SQLshowsgaTotalSystemGlobalArea131144544bytesFixedSize453472bytesVariableSize113246208bytesDatabaseBuffers16777216bytesRedoBuffers667648bytes系统全局区SGA是ORACLE系统为实例分配的一组共享缓冲存储区,用于存放数据库数据和控制信息,以实现对数据库数据的管理和操作系统全局区动态分配的参数SGA_MAX_SIZE决定其大小SGA中的存储器由被称作细粒的存储单元来分配的由连续的细粒来分配细粒的大小依赖于参数SGA_MAX_SIZE动态SGA从Oracle9i开始,动态SGA实施了一种体系结构,可以对SGA配置进行更改,而不必关闭例程。这样,在不关闭例程的情况下,就可以更改数据库缓冲区高速缓存和共享池的大小。因此,开始时可将数据库缓冲区高速缓存和共享池配置为一个较小的值,然后根据它们各自的工作量增减,但最大值不能超过由SGA_MAX_SIZE指定的值。调整SGA的大小SGA的大小由几个初始化参数决定。对SGA的大小影响最大的参数有:DB_CACHE_SIZE:标准块的高速缓存大小。对于UNIX,缺省值是48MB,对于NT,缺省值是52MBLOG_BUFFER:为重做日志缓冲区分配的字节数SHARED_POOL_SIZE:专用于共享SQL和PL/SQL的内存区的大小(以字节为单位)。缺省值是16MB。如果是64位,则缺省值是64MBLARGE_POOL_SIZE:大型共享池的大小。缺省值是零(如果未将init.ora参数PARALLEL_AUTOMATIC_TUNING设置为TRUE,则自动计算缺省值。)JAVA_POOL_SIZE:Java池的大小。缺省值是24MB因此,SGA的大小不能超过SGA_MAX_SIZE-DB_CACHE_SIZE-LOG_BUFFER–SHARED_POOL_SIZE-LARGE_POOL_SIZE-JAVA_POOL_SIZE。系统全局区(续)分配单位:粒组是一个连续虚拟内存分配单位。粒组的大小取决于估算的SGA的总大小,这个总大小是根据参数SGA_MAX_SIZE的值计算的。•如果估算的SGA的大小小于128MB,那么粒组大小是4MB•否则为16MB共享池用来存储:最近执行的SQL语句最近使用的数据定义由两个主要的与性能相关的内存结构组成:库缓冲区(LibraryCache)数据字典缓冲区(DataDictionaryCache)决定其大小的参数:SHARED_POOL_SIZE共享池数据字典缓存库缓存ALTERSYSTEMSETSHARED_POOL_SIZE=64M;共享池共享池环境既包含固定结构,也包含可变结构。固定结构的大小相对
本文标题:ORACLE数据库管理基础
链接地址:https://www.777doc.com/doc-12550 .html