Oracle-DBA教程(适合Oracle11g).ppt_第1页
Oracle-DBA教程(适合Oracle11g).ppt_第2页
Oracle-DBA教程(适合Oracle11g).ppt_第3页
Oracle-DBA教程(适合Oracle11g).ppt_第4页
Oracle-DBA教程(适合Oracle11g).ppt_第5页
已阅读5页,还剩574页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、Oracle数据库(DBA),何明,第1章,Oracle的体系结构,引入复杂体系结构的原因,资源不足 有效地使用稀有资源,内存与外存的比较,主要组件,Oracle 服务器,Oracle 服务器: 是一个数据库管理系统,它提供一种开放的,全面的,和集成的信息管理方法。 它由Oracle实例和Oracle数据库两部份组成。,Oracle Instance(实例),是一种访问Oracle数据库的机制 总是打开一个而且只能打开一个数据库 由内存和后台进程结构所组成,Oracle Database(数据库),An Oracle database: 是一数据的集合,该集合要做为一个整体来处理 由三种类型的

2、文件组成,物理结构,物理结构包括三种类型的文件: 控制文件 数据文件 连机重做日志文件,内存结构,Oracle内存结构由以下两个内存区组成: 系统全局区 (SGA): 在实例启动时分配、它是Oracle实例的基本组件 程序全局区(PGA): 当服务(器)进程启动时分配,系统全局区(SGA),SGA由若干个内存结构组成: Shared Pool (共享池) Database Buffer cache 数据高速缓存 Redo Log Buffer (重做日志缓冲区) 其它的结构(例如, lock and latch 管理, 统计数据) 在SGA之内还可能配置如下的两个附加的内存结构: Large

3、Pool Java Pool,系统全局区(SGA),Oracle9i开始为动态的 其大小由 SGA_MAX_SIZE 参数指定 其分配和追踪都是按 SGA 组件的最小单位(granules)进行的: granules 为所分配的连续虚拟内存 Granule 的大小为基于所估计的 SGA_MAX_SIZE总数,Shared Pool(共享池),用来存储: 刚刚执行过的 SQL 语句(statements) 刚刚使用过的数据定义(data definitions) 共享池由两个关键的与性能相关的内存结构组成: Library Cache Data Dictionary Cache 其大小是由以下参

4、数指定 SHARED_POOL_SIZE,Library Cache,存储有关最近使用过的SQL和PL/SQL语句 使通用语句的共享成为可能 它是由一个最近最少使用(LRU)的队列算法来管理 它由如下的两个结构所组成: 共享SQL 区 共享PL/SQL 区 其大小由 Shared Pool的大小来决定,Data Dictionary Cache,数据库中一组最近刚刚使用过的定义的集合 该集合包括了数据库文件、表、索引、列、用户、权限、和其它的数据库对象的相关信息 在编译阶段,服务器进程要查看数据字典的这些信息,以完成对象名字解析和访问权限的效验工作 将数据字典信息装入内存可改进查询语句和DML

5、语句的响应时间 其大小由 Shared Pool的大小来决定,Database Buffer Cache,存储从数据库文件取出的数据块拷贝 可极大地提高获取和修改数据的效率 它是由一个最近最少使用(LRU)队列算法来管理 DB_BLOCK_SIZE 决定了主数据块的大小,Database Buffer Cache,由以下的相互独立的子缓冲区组成: DB_CACHE_SIZE DB_KEEP_CACHE_SIZE DB_RECYCLE_CACHE_SIZE Oracle9i开始其大小可动态地改变 通过设置DB_CACHE_ADVICE 可收集预测不同大小的缓冲区对系统效率影响的统计信息 这些统计

6、信息可通过查询V$DB_CACHE_ADVICE来获得,ALTER SYSTEM SET DB_CACHE_SIZE = 250M;,Redo Log Buffer,记录了数据库中数据块的所有变化 主要目的是恢复(在Oracle8i之前也是唯一的用途) 在该缓冲区所记录的变化叫做重做日志记录(redo entries) Redo entries 包含了重新构造或重做变化所需的信息 其大小由 LOG_BUFFER所决定,Large Pool(大池),为 SGA中一可选的内存区 它可以减轻Shared Pool的负担 它在以下情况下使用: 在共享服务配置(Shared Server)下,存储内存的

7、会话信息(UGA) 在使用I/O服务进程 在进行备份和恢复操作时,或在使用RMAN时 它不使用LRU 队列 其大小由 LARGE_POOL_SIZE所决定 其大小可动态地改变,Java Pool,用来编译Java命令 如果安装和使用 Java,就必须设置 其大小由 JAVA_POOL_SIZE参数所决定,程序全局区(PGA),为每个用户进程连接到数据库上时所保留的内存区 当进程建立时分配 当进程终止时释放 仅为一个进程所使用,进程结构,User process(用户进程): 在一个数据库用户请求与Oracle服务器连接时启动 Server process (服务器进程) : 与Oracle i

8、nstance(实例)相连,当一用户创建一会话时启动 Background processes(后台进程): 当 Oracle 实例启动时启动,Background Processes,它们用来维护和保证物理(外存)结构和内存结构之间的关系: 强制型后台进程(background processes)有: DBWnPMONCKPT LGWRSMON 常用可选型后台进程 有: ARCnLMDnLMON LMSLCKn等,数据库写进程(DBWn),当以下情况发生时DBWn写 : Checkpoint 发生 脏数据缓冲区达到限额 没有空闲的数据缓冲区 时间间隔到 有RAC ping请求 Tables

9、pace OFFLINE Tablespace READ ONLY Table DROP or TRUNCATE Tablespace BEGIN BACKUP,重做日志写进程(LGWR),以下情况发生时LGWR写 : At commit(提交) 当1/3满时 当redo数据达到 1 MB 每三秒钟 在 DBWn写之前,系统监督进程(SMON),负责: 实例恢复 前滚 打开数据库允许用户访问 回滚没有提交的事务 合并空闲磁盘空间 释放临时段,进程监督进程(PMON),负责进程失败后的清理工作: 回滚事务 释放锁 释放其它资源 重新启动死掉的 dispatchers,检查点进程(CKPT),负责

10、: 在检查点时调用DBWn 用检查点信息修改数据文件头 用检查点信息修改控制文件,归档日志进程(ARCn),可选型后台进程 (background processes) 当数据库设置为归档(ARCHIVELOG)模式时,将联机重做日志文件自动地归档 保留对数据库所做的所有的变化的记录,第2章,Oracle管理工具,数据库管理工具,描述,工具,用来安装,升级,或删除软件组件,Oracle Universal Installer (OUI),一个与OUI工具交互的图形用户界面工具,它可以独立地使用,用来创建,删除,或修改数据库,Oracle Database Configuration Assis

11、tant,一个在Oracle数据库中访问数据的实用程序(工具),SQL*Plus,一个图形界面(工具),它用来管理,监督,和调优一个或多个数据库,Oracle Enterprise Manager,安装11g:系统要求,内存要求: 1 GB 用于Database Control 实例 磁盘空间要求: 1.5 GB 的交换空间 在/tmp 目录中保留400 MB 的磁盘空间 1.5 GB 至3.5 GB 用于Oracle 软件 1.2 GB 用于预配置数据库(可选) 2.4 GB 用于快速恢复区(可选) 操作系统(请参阅文档),Oracle11g R2 Windows 64位版本安装,下载完之后

12、的文件(我是64位系统)如下:,解压后覆盖到同一文件夹下:,Oracle11g R2 Windows 64位版本安装,首先设置权限,以管理员权限运行:,Oracle11g R2 Windows 64位版本安装,启动 ,出现如下画面:,Oracle11g R2 Windows 64位版本安装,不要选电子邮件一项,Oracle11g R2 Windows 64位版本安装,Oracle11g R2 Windows 64位版本安装,Oracle11g R2 Windows 64位版本安装,Oracle11g R2 Windows 64位版本安装,Oracle11g R2 Windows 64位版本安装

13、,Oracle11g R2 Windows 64位版本安装,Oracle11g R2 Windows 64位版本安装,Oracle11g R2 Windows 64位版本安装,Oracle11g R2 Windows 64位版本安装,Oracle11g R2 Windows 64位版本安装,Oracle11g R2 Windows 64位版本安装,Oracle11g R2 Windows 64位版本安装,Oracle11g R2 Windows 64位版本安装,Oracle11g R2 Windows 64位版本安装,Oracle11g R2 Windows 64位版本安装,Oracle11g

14、 R2 Windows 64位版本安装,Oracle11g R2 Windows 64位版本安装,Oracle11g R2 Windows 64位版本安装,Oracle11g R2 Windows 64位版本安装,Oracle11g R2 Windows 64位版本安装,Oracle11g R2 Windows 64位版本安装,Oracle11g R2 Windows 64位版本安装,Oracle Universal Installer,用来安装、升级、或删除软件组件、和创建数据库 基于 Java engine 其特性包扩: 自动的依赖解析 允许基于网上的安装 追踪组件库和部件的安装 卸载已安

15、装的组件 支持多个 Oracle homes 支持全球化技术,启动the Universal Installer,在UNIX上启动 Oracle Universal Installer : 在NT上启动 Oracle Universal Installer :,$ ./runInstaller,Start Programs Oracle Installation Products Universal Installer,启动the Universal Installer,使用响应文件进行非交互式安装,允许没有用户的交互 响应文件: 一定要编辑模板. 正文文件包含了变量和值. 要修改参数来满足用

16、户的实际需要. 以非交互式来启动Universal Installer :,./runInstaller -responsefile dogrespfile -silent,数据库配置助手(DBCA),可使用 数据库配置助手来: 创建数据库 修改数据库配置选项 删除数据库 管理模板,数据库配置助手(DBCA),数据库管理员用户,SYS 和 SYSTEM用户是Oracle系统自动创建的 它们是在创建数据库时生成的 它们被授预数据库管理员角色( DBA role) SYS用户 数据库中数据字典的拥有者 默认口令: change_on_install 在Oracle9.2或以上的版本不允许使用默认口

17、令 SYSTEM用户 由Oracle工具所使用的附加的内部表和视图的拥有者 默认口令: manager 在Oracle9.2或以上的版本不允许使用默认口令,SQL*Plus,一个 Oracle 工具、它提供了: 与数据库进行交互的能力、和维护数据库的能力 可以被用来启动和关闭数据库、建立和运行查询、添加数据行、修改数据、和生成个性化的报告(Reports) 是标准SQL语言的子集并进行了一些特殊的扩展 可以通过SQL*Plus与数据库建立连接:,sqlplus /nolog connect / as sysdba Connected to an idle instance.,SQL*Plus,

18、Oracle Enterprise Manager,为数据库管理员(DBAs) 提供的一个集中的系统管理工具 一个用来管理、诊断、和调试(调优)多个数据库的工具 一个用来管理来自多个地点的多个网络节点和服务的工具 可以使不同的数据库管理员之间共享一些工作 还提供了一些管理并行服务器和分部式数据库的工具,Oracle Enterprise Manager Framework,Grid Control,Management server,Management repository,Database Control,Database,OS/third-party application,Applic

19、ation Server,Application Server Control,Managed targets,Agent,Agent,Agent,Grid Control Components,Oracle Management Repository,Oracle Management Services,Oracle Management Agents,Managed targets,Oracle9i databases,Oracle10g databases,Oracle 11g databases,Oracle9i Application Servers,Oracle 10g Appli

20、cation Servers,Administrator,登录Oracle 11g OEM,利用OEM管理和维护数据库,登录Oracle 10g OEM,利用OEM管理和维护数据库,将SYSDBA权限授予普通用户,以sys用户登录Oracle数据库,第3章,Oracle实例的管理,初始化参数文件,初始化参数文件,实例启动时Oracle将读入该文件的每个参数项 有两种类型的参数: 显式: 在该文件中有一个参数项 隐式:在该文件中没有参数项,但使用Oracle的默认值 可以有多个初始化参数文件共存 文件中参数项的变化何时起作用取决于所使用的初始化参数文件的类型: 静态参数文件, PFILE 动态服

21、务器参数文件,SPFILE,PFILEinitSID.ora,正文文件 使用操作系统编辑器修改 手动地修改 所做的修改要在实例下次启动时才起作用 只在实例启动期间读取 默认位置为 $ORACLE_HOME/dbs,创建 PFILE,从样本文件init.ora 开始创建PFILE: 该样本文件是由Oracle Universal Installer安装的 使用操作系统的复制命令复制样本文件 文件由数据库的SID来唯一的标识 修改 initSID.ora: 编辑参数 说明数据库的特殊需要,cp init.ora $ORACLE_HOME/dbs/initdba01.ora,PFILE 例子,# I

22、nitialization Parameter File: initdba01.ora db_name = dba01 instance_name = dba01 control_files = ( /home/dba01/ORADATA/u01/control01dba01.ctl, /home/dba01/ORADATA/u02/control01dba02.ctl) db_block_size = 4096 db_cache_size = 4M shared_pool_size = 50000000 java_pool_size = 50000000 max_dump_file_size

23、 = 10240 background_dump_dest = /home/dba01/ADMIN/BDUMP user_dump_dest = /home/dba01/ADMIN/UDUMP core_dump_dest = /home/dba01/ADMIN/CDUMP undo_management = AUTO undo_tablespace = UNDOTBS . . .,SPFILEspfileSID.ora,二进制文件 由Oracle服务器来维护 总是存在服务器端 能够在不关闭实例的情况下改变初始化参数,也可将这种变化保存到下一次实例重启 可以自己调整一些初始化参数的值 可以使恢

24、复管理器(Recovery Manager)支持对初始化参数文件的备份,创建 SPFILE,从PFILE文件来创建SPFILE文件 在这里: SPFILE-NAME: 要创建的SPFILE文件 PFILE-NAME: 创建SPFILE的PFILE文件 该语句可以在实例启动之前或之后执行,CREATE SPFILE = $ORACLE_HOME/dbs/spfileDBA01.ora FROM PFILE = $ORACLE_HOME/dbs/initDBA01.ora;,SPFILE 例子,*.background_dump_dest= /home/dba01/ADMIN/BDUMP *.co

25、mpatible=9.2.0 *.control_files=/home/dba01/ORADATA/u01/ctrl01.ctl *.core_dump_dest= /home/dba01/ADMIN/CDUMP *.db_block_size=4096 *.db_name=dba01 *.db_domain= world *.global_names=TRUE *.instance_name=dba01 *.remote_login_passwordfile=exclusive *.java_pool_size=50000000 *.shared_pool_size=50000000 *.

26、undo_management=AUTO *.undo_tablespace=UNDOTBS . . .,修改SPFILE中的参数,改变参数的值 说明是临时改变还是永久改变,ALTER SYSTEM SET undo_tablespace = UNDO2;,ALTER SYSTEM SET undo_tablespace = UNDO2 SCOPE=BOTH;,STARTUP 命令如何执行的,执行的优先次序: spfileSID.ora 默认 SPFILE initSID.ora 默认 PFILE 指定PFILE 可以覆盖优先次序 在PFILE中可以指定所使用的 SPFILE,STARTUP

27、PFILE = $ORACLE_HOME/dbs/initDBA1.ora,SPFILE = /database/startup/spfileDBA1.ora,启动数据库(NOMOUNT),OPEN,MOUNT,NOMOUNT,SHUTDOWN,Instance started,STARTUP (启动),SHUTDOWN (关闭),启动数据库(MOUNT),OPEN,MOUNT,NOMOUNT,SHUTDOWN,Control file opened for this instance,Instance started,STARTUP,SHUTDOWN,启动数据库(OPEN),OPEN,MOU

28、NT,NOMOUNT,SHUTDOWN,All files opened as described by the control file for this instance,Control file opened for this instance,Instance started,STARTUP,SHUTDOWN,STARTUP命令,启动实例并打开数据库:,STARTUP,STARTUP PFILE=$ORACLE_HOME/dbs/initdb01.ora,ALTER DATABASE命令,将数据库的状态从非加载修改为加载: 将数据库以只读( read-only)状态打开:,ALTER

29、DATABASE dog MOUNT;,ALTER DATABASE cat OPEN READ ONLY;,将数据库以限制模式打开,使用 STARTUP 命令来限制对数据库的访问: 使用 ALTER SYSTEM 命令将实例置为限制模式:,STARTUP RESTRICT,ALTER SYSTEM ENABLE RESTRICTED SESSION;,关闭数据库,Shutdown mode(关闭方式): A = ABORT(流产的) I = IMMEDIATE(立既的) T = TRANSACTIONAL(事物的) N = NORMAL(正常的),A No No No No,T No No

30、Yes Yes,I No No No Yes,关闭方式 允许新的连接 等待到当前所有的会话结束 等待到当前所有的事物(交易)结束 强制型检查点和关闭文件,N No Yes Yes Yes,关闭的选项,On the way down (在关闭的过程中): 数据缓冲区的数据 被写到数据文件中 回滚没有提交的变化 释放资源,On the way up (在开启的过程中) 没有实例的恢复,During (期间) SHUTDOWN NORMAL 或 SHUTDOWN TRANSACTIONAL 或 SHUTDOWN IMMEDIATE,Consistent database(一致的数据库) Clean

31、database(干净的数据库),关闭的选项,On the way down (在关闭的过程中): 修改的数据缓冲区没有被写到数据文件中 不回滚没有提交的变化,On the way up (在开启的过程中) : 使用联机重做日志文件来重新提交已提交的变化 使用还原(回滚)段来回滚没提交的变化 释放资源,During SHUTDOWN ABORT 或 Instance Failure 或 STARTUP FORCE,Inconsistent database (不一致的数据库) Dirty database: (脏数据库),诊断文件 包含所碰到的重大事件的有关信息 用来解决问题( resolve

32、 problems) 用来在日常工作中更好地管理数据库 有几种类型的文件存在: 报警文件(alertSID.log files) 后台进程追踪文件(Background trace files) 用户进程追踪文件(User trace files),利用诊断文件来监督实例,Alert Log File(报警日志文件),报警日志文件(alertSID.log file): 记录了一些命令 记录了重要事件的结果 其信息用于日常的操作 用来诊断数据库的错误 每一记录项都有与之相关的时间戳 必需由DBA来管理 存放的位置由 BACKGROUND_DUMP_DEST参数来定义,后台进程追踪文件,后台进程

33、追踪文件(Background trace files) 记录由任何一个后台进程所探测到的错误 用来进行诊断和排错 当一个后台进程遇到错误时创建 存放的位置由 BACKGROUND_DUMP_DEST参数来定义,用户进程追踪文件,用户进程追踪文件(User trace files) 由用户进程创建 也可以由服务器进程产生 包含了用来追踪SQL语句的统计信息 包含了用户的错误信息 当一个用户(进程)遇到用户会话错误时创建 存放的位置由 USER_DUMP_DEST参数来定义 其大小由 MAX_DUMP_FILE_SIZE参数来定义、默认为10M,开启或终止用户进程追踪,会话级(Session l

34、evel): 使用ALTER SESSION 命令:ALTER SESSION SET SQL_TRACE=TRUE 运行 DBMS软件包中的过程: dbms_system.SET_SQL_TRACE_IN_SESSION 实例级(Instance level) 设置初始化参数: SQL_TRACE = TRUE,Oracle 11g 诊断文件,使用一个新参数DIAGNOSTIC_DEST,取代了早期版本中的以下三个参数 : BACKGROUND_DUMP_DEST USER_DUMP_DEST CORE_DUMP_DEST 参数DIAGNOSTIC_DEST默认位置为: $ORACLE_BA

35、SE/diag,Oracle 11g 自动诊断资料库,Oracle 11g 的两个报警文件,一个为正文格式: 与之前版本中的一模一样,该文件存放在每个ADR home的TRACE目录下。 另一个为XML格式: 通过企业管理器和ADRCI命令行工具来浏览,该文件存放在每个ADR home中的ALERT目录下。,确定诊断和追踪的位置,SQL desc V$DIAG_INFO SELECT name, value FROM V$DIAG_INFO;,命令行工具ADRCI,是ADR命令行解释器(ADR Command Interpreter)的缩写 是一个操作系统下的应用程序 可用来浏览所有ADR中的

36、追踪文件 也可浏览XML格式的报警文件 能以命令行方式完成所有OEM的支持工作台 (Support Workbench)所允许的所有操作,ADRCI的启动与使用,cd i:appadministratordiagrdbmsdogdogalert I:appAdministratordiagrdbmsdogdogalertadrci 列出ADR家目录的全路径 adrci show homes 使用记事本开启XML格式的报警文件 adrci show alert 显示报警文件中最后10条记录 adrci show alert -tail,第4章,数据字典和控制文件,内置(Built-In)数据库对

37、象,与数据库一起创建的其它对象: 数据字典 性能表 PL/SQL 软件包 数据库事件触发器,数据字典(Data Dictionary),是每个数据库的中心 描述了数据库和它的对象 包括了只读表和视图 存储在SYSTEM 表空间中 用户 SYS为它们的所有者 由 Oracle 服务器来维护 利用SELECT语句来访问,Control files,Data files,Redo Log files,Database,Data Dictionarytables,基表和数据字典视图,数据字典包括两部份: 基表(Base tables) 存储数据库的描述 由CREATE DATABASE命令创建 数据字

38、典视图(Data dictionary views) 用来简化基表中的信息 通过公共同义词来访问 由catalog.sql 脚本创建,创建数据字典视图,脚本目的 catalog.sql 建立通常使用的数据字典视图和同义词 catproc.sql运行服务器端的PL/SQL 所需的脚本,数据字典的内容,数据字典提供了与下面有关的信息: 数据库的逻辑结构和物理结构 对象的定义和磁盘空间分配 完整性约束 用户(Users) 角色(Roles) 权限(Privileges) 审计(Auditing),如何使用数据字典,主要用途: 服务器端使用数据字典来发现与下面有关的信息: 用户(Users) 模式对象

39、(Schema objects) 存储结构(Storage structures) 当一个DDL语句被执行时, 服务器端修改数据字典。 用户和数据库管理员可把它们当作只读表来获取数据库的信息。,数据字典的分类,三种静态视图,由它们的范围来区别: DBA: 所有模式上 ALL: 用户可以访问的 USER: 用户模式上的,USER_xxx 当前用户所拥有的对象,ALL_xxx 当前用户可访问的对象,DBA_xxx 数据库中所有的对象,数据字典的例子,通用概要类型: DICTIONARY、 DICT_COLUMNS 模式对象: DBA_TABLES、 DBA_INDEXES、 DBA_TAB_COL

40、UMNS, DBA_CONSTRAINTS 磁盘空间分配: DBA_SEGMENTS、DBA_EXTENTS 数据库的结构: DBA_TABLESPACES、 DBA_DATA_FILES,动态性能表,虚表(Virtual tables) 记录当前数据库的活动 在数据库操作期间被持续地修改 信息是从内存和控制文件中访问的 用来监督和调试数据库 用户SYS 为拥有者 同义词以V$开头 可用 V$FIXED_TABLE列出,动态性能表,V$CONTROLFILE V$DATABASE V$DATAFILE V$INSTANCE V$PARAMETER V$SESSION V$SGA $SPPARA

41、METER V$TABLESPACE V$THREAD V$VERSION,管理脚本的命名惯例/习惯,惯例 cat*.sql dbms*.sql prvt*.plb utl*.sql,描述 目录和数据字典信息 数据库软件包说明 加密数据库软件包代码 数据库实用程序所需的视图和表,控制文件( Control File ),一个小的二进制文件 定义了物理数据库的当前状态 维护数据库的完整性(integrity) 数据库以如下方式启动时需要管理控制文件: 数据库以装载/加载( MOUNT)方式启动 数据库打开(OPEN) 与单个数据库连接 丢失可能需要恢复 其大小由CREATE DATABASE 命

42、令限定,Control files,Database,控制文件的内容,控制文件中包含了如下的记录项: 数据库名称和标识符 数据库创建时间 表空间名称 数据文件和联机重做日志的名字和位置 当前联机重做日志序号 检查点信息 还原段的开始与结束 重做日志归档/存档(archive)信息 备份信息,多重映像控制文件,CONTROL_FILES= $HOME/ORADATA/u01/ctrl01.ctl, $HOME/ORADATA/u02/ctrl02.ctl,Disk 1 (u01),Disk 2 (u02),ctrl02.ctl,ctrl01.ctl,使用SPFILE时多重映像控制文件,1.修改

43、SPFILE: 2.关闭数据库: 3.创建附加的控制文件: 4.启动数据库:,ALTER SYSTEM SET control_files = $HOME/ORADATA/u01/ctrl01.ctl, $HOME/ORADATA/u02/ctrl02.ctl SCOPE=SPFILE;,cp $HOME/ORADATA/u01/ctrl01.ctl $HOME/ORADATA/u02/ctrl02.ctl,startup,shutdown immediate,使用PFILE时多重映像控制文件,1.关闭数据库: 2.创建附加的控制文件: 3.将控制文件名加入到PFILE文件中: 4.启动数据库

44、:,shutdown immediate,CONTROL_FILES = $HOME/ORADATA/u01/ctrl01.ctl, $HOME/ORADATA/u02/ctrl02.ctl),cp $HOME/ORADATA/u01/ctrl01.ctl $HOME/ORADATA/u02/ctrl02.ctl,startup,OMF多重映像控制文件,如果没有说明CONTROL_FILES 参数, OMF将被使用。 其位置由 DB_CREATE_ONLINE_LOG_DEST_n 参数定义。 系统产生唯一的控制文件名并记录在 alertSID.log 文件中。,获得控制文件的信息,有关控制文

45、件的状态和位置的信息可以通过查询下列视图来获取: V$CONTROLFILE: 列出所有与当前实例相关的控制文件的名和状态 V$PARAMETER: 列出所有参数的状态和位置 V$CONTROLFILE_RECORD_SECTION: 给出控制文件记录段相关的信息 SHOW PARAMETER CONTROL_FILES: 列出控制文件的名,状态,和位置,第5章,联机重做日志的管理与维护,联机重做日志的特性,联机重做日志文件具有如下特性: 记录了所有对数据所作的改变 提供了一种恢复机制 它们可以被组织成若干组 Oracle 数据库要求只少两个组,Redo log files,联机重做日志文件的

46、结构,联机重做日志文件如何工作,联机重做日志文件是以一种循环的方式来使用 当一组联机重做日志文件被写满时,LGWR 将开始写下一组日志文件: 这被称为日志切换 此时还要产生检查点操作 一些信息要被写到控制文件中,强制产生日志切换和检查点,强制产生日志切换: 可以通过如下的方式来强制产生检查点 设置 FAST_START_MTTR_TARGET参数 使用 ALTER SYSTEM CHECKPOINT 命令,ALTER SYSTEM CHECKPOINT;,ALTER SYSTEM SWITCH LOGFILE;,FAST_START_MTTR_TARGET = 900,添加联机重做日志文件组,

47、Group 1,Group 2,Group 3,ALTER DATABASE ADD LOGFILE GROUP 3 ($HOME/ORADATA/u01/log3a.log, $HOME/ORADATA/u02/log3b.log) SIZE 15M;,Log3b.log,log3a.log,添加联机重做日志文件成员,ALTER DATABASE ADD LOGFILE MEMBER $HOME/ORADATA/u07/log1c.log TO GROUP 1, $HOME/ORADATA/u07/log2c.log TO GROUP 2, $HOME/ORADATA/u07/log3c.l

48、og TO GROUP 3;,Group 1,Group 2,Group 3,删除联机重做日志文件组,ALTER DATABASE DROP LOGFILE GROUP 3;,Group 1,Group 2,Group 3,删除联机重做日志文件成员,ALTER DATABASE DROP LOGFILE MEMBER $HOME/ORADATA/u07/log3c.log;,Group 1,Group 2,清除联机重做日志文件,可以使用ALTER DATABASE CLEAR LOGFILE 命令重新初始化联机重做日志文件。 使用UNARCHIVED 关键字来避免归档已崩溃的联机重做日志文件。

49、,ALTER DATABASE CLEAR UNARCHIVED LOGFILE GROUP 2;,ALTER DATABASE CLEAR LOGFILE GROUP 2;,联机重做日志文件的配置,Group 2,Group 3,Group 1,Disk 3,Disk 2,Disk 1,?,以OMF来管理重做日志文件,定义 the DB_CREATE_ONLINE_LOG_DEST_n 参数: 在添加联机重做日志文件组时不需要说明文件: 删除一组:,DB_CREATE_ONLINE_LOG_DEST_1 DB_CREATE_ONLINE_LOG_DEST_2,ALTER DATABASE D

50、ROP LOGFILE GROUP 3;,ALTER DATABASE ADD LOGFILE;,获得组和成员的信息,可以通过查询以下视图来获取组和成员的信息: V$LOG V$LOGFILE,归档重做日志文件,添满的联机重做日志文件可以被归档 数据库运行在归档模式时存档联机重做日志文件有以下两个好处: 恢复: 数据库的备份连同联机和归档重做日志文件一起可以保证恢复所有已提交的数据。 备份: 在数据库打开期间可以进行备份。 默认, 数据库是以非归档( NOARCHIVELOG )模式创建的 。,归档重做日志文件,存档由ARCn后台进程自动完成 可以通过SQL语句来手工完成 当存档成功时: 一个

51、记录项被写入控制文件 记录: 归档日志名、日志序列号、及高和低系统变化数 (SCN) 直到下列情况发生之前所添满的联机重做日志文件是不可重用的: 一个检查点已产生 ARCn进程已对该文件进行了存档 可以被多重映像 由DBA 来维护,第6章,表空间和数据文件的管理,数据库的逻辑和物理结构,表空间和数据文件,Oracle将数据逻辑地存在表空间里而物理地存在数据文件里 表空间(Tablespaces): 在任一时刻只能属于一个数据库 由一个或多个数据文件所组成 可进一步划分成一些逻辑存储单位 数据文件(Data files): 可以而且只能属于一个表空间 和一个数据库 是存储模式对象数据的 一个容器

52、/仓库,Database,Tablespace,Data files,表空间的分类,系统(包括SYSTEM和SYSAUX表空间) 与数据库一起建立 为强制性( mandatory )表空间 必须为联机状态 非系统(Non-SYSTEM)表空间 存储一些单独的段 方便磁盘空间管理 控制分配给用户磁盘空间的数量,SYSTEM 和SYSAUX表空间,SYSTEM表空间用于数据库的核心功能: 存有数据字典 包含了系统还原段 SYSAUX表空间为辅助的系统表空间: 存放附加的数据库组件,如企业管理器资料库( Enterprise Manager Repository ),表空间中的磁盘空间管理,本地管理

53、的表空间: 空闲区段在表空间中管理。 用位图(Bitmap)来记录空闲区段。 位图中的每一位对应于一块或一组块。 位值(0或1)指示空闲或分配。 数据字典管理的表空间: 空闲区段由数据字典来管理。 当区段被分配或收回时对应的(系统)表将被修改。,本地管理的表空间的优点,减少数据字典表的竞争 当磁盘空间分配或收回时不会产生回滚(还原数据) 不需要合并碎片,CREATE TABLESPACE wuda_data DATAFILE /u13/oradata/wuda_data.dbf SIZE 380M EXTENT MANAGEMENT LOCAL UNIFORM SIZE 128K;,数据字典管

54、理的表空间,区段的管理是在数据字典中进行的 每一个存储在同一表空间中的段可以具有不同的存储子句 需要合并碎片,CREATE TABLESPACE userdata DATAFILE /u01/oradata/userdata01.dbf SIZE 500M EXTENT MANAGEMENT DICTIONARY DEFAULT STORAGE (initial 1M NEXT 1M PCTINCREASE 0);,迁移数据字典管理的表空间,将迁移数据字典管理的表空间为本地管理的:,DBMS_SPACE_ADMIN.TABLESPACE_MIGRATE_TO_LOCAL(jinlian_dat

55、a);,还原表空间,用来存储还原段 不能包含任何其它对象 分区/区段(Extents)由本地管理 只能使用 DATAFILE 和 EXTENT MANAGEMENT 子句,CREATE UNDO TABLESPACE wuda_undo DATAFILE /u07/oradata/undo07.dbf SIZE 38M;,临时表空间,用做排序操作 可以由多个用户共享 不能包含任何永久对象 Oracle推荐使用本地管理的分区/区段(Extents),CREATE TEMPORARY TABLESPACE wuda_temp TEMPFILE /u13/oradata/temp13.dbf SIZ

56、E 80M EXTENT MANAGEMENT LOCAL UNIFORM SIZE 4M;,默认临时表空间,说明一个数据库范围的默认临时表空间 消除使用系统( SYSTEM )表空间对临时数据进行排序的现象 可使用如下命令来建立: CREATE DATABASE ALTER DATABASE,创建临时表空间,在数据库创建期间:,CREATE DATABASE DBA01 LOGFILE GROUP 1 (/$HOME/ORADATA/u01/redo01.log) SIZE 100M, GROUP 2 (/$HOME/ORADATA/u02/redo02.log) SIZE 100M, MA

57、XLOGFILES 5 MAXLOGMEMBERS 5 MAXLOGHISTORY 1 MAXDATAFILES 100 MAXINSTANCES 1 DATAFILE /$HOME/ORADATA/u01/system01.dbf SIZE 325M UNDO TABLESPACE undotbs DATAFILE /$HOME/ORADATA/u02/undotbs01.dbf SIZE 200 DEFAULT TEMPORARY TABLESPACE temp TEMPFILE /$HOME/ORADATA/u03/temp01.dbf SIZE 4M CHARACTER SET US7

58、ASCII,创建临时表空间,在数据库创建之后: 通过查询 DATABASE_PROPERTIES 可找到数据库的默认临时表空间:,ALTER DATABASE DEFAULT TEMPORARY TABLESPACE jinlian_temp;,SELECT * FROM DATABASE_PROPERTIES;,临时表空间上的一些限制,默认临时表空间不能被: 删除,除非有一个新的默认临时表空间可以使用 设置为脱机 改为一个永久表空间,只读(Read-Only)表空间,使用如下的命令将一个表空间设置为只读状态: 产生检查点 其中的数据只能进行读操作 可以删除只读表空间中的对象,ALTER TA

59、BLESPACE wuda_data READ ONLY;,设置表空间为脱机,上面的数据不可以访问 以下的表空间不能被置为脱机: 系统(SYSTEM)表空间 上面有活动的还原/回滚段的表空间 默认临时表空间 将表空间设置为脱机的命令: 将表空间设回为联机的命令:,ALTER TABLESPACE wuda_data OFFLINE;,ALTER TABLESPACE wuda_data ONLINE;,改变存储设置,使用 ALTER TABLESPACE 命令来改变存储设置: 本地管理的表空间的存储设置不能改变。,ALTER TABLESPACE jinlian_data MINIMUM EXTENT 2M;,ALTER TABLESPACE jinlian_data DEFAULT STORAGE (INITIAL 2M NEXT 2M MAXEXTENTS 999);,重置表空间的大小,表空间的大小可以重新设置: 改变数据文件的大小: 使用 AUTOEXTEND自动地改变 使用 ALTER DATABASE手动地改变 使用ALTER TABLESPA

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论