Oracle数据库维护培训胶片.ppt

上传人:za****8 文档编号:2986696 上传时间:2019-12-05 格式:PPT 页数:187 大小:1.93MB
返回 下载 相关 举报
Oracle数据库维护培训胶片.ppt_第1页
第1页 / 共187页
Oracle数据库维护培训胶片.ppt_第2页
第2页 / 共187页
Oracle数据库维护培训胶片.ppt_第3页
第3页 / 共187页
点击查看更多>>
资源描述
Oracle数据库维护培训胶片,Oracle 体系结构,Page 3,目 标,通过这部分课程的学习,您将了解以下内容: 描述 Oracle 服务器的体系结构及其主要构件 列举用户连接到 Oracle 实例所涉及的结构 双机模式:RAC/HOT STANDBY,Page 4,主要组件一览,实例,系统全局区,重做日志 缓冲区,共享池,数据字典 缓冲区,库缓冲区,DBWR,SMON,PMON,CKPT,LGWR,Others,用户端进程,服务器进程,程序全局区,控制文件,数据文件,归档日志文件,参数文件,密码文件,重做日志文件,数据库,数据块高速 缓冲区,Page 5,Oracle服务器,一个Oracle服务器: 是一个提供开放式的、全面的、综合性信息管理服务的数据库管理系统 由一个Oracle数据库和一个Oracle实例组成,Oracle 服务器,Page 6,Oracle实例,一个Oracle 实例: 是一种访问 Oracle 数据库的基本方式 总是打开一个且只打开一个数据库 由内存结构和进程结构组成,后台进程,内存结构,SGA,Redo log buffer cache,Database buffer cache,Shared pool,DBWR,SMON,PMON,CKPT,LGWR,Others,Data Dict. cache,Library cache,实例,Page 7,创建连接和会话,Page 8,Oracle 数据库,Oracle数据库 : 是作为一个单元对待的数据的集合体 由三种文件类型组成,控制文件,数据文件,归档日志文件,参数文件,密码文件,重做日志文件,Oracle 数据库,Page 9,物理结构,Oracle数据库的物理存储是由实际的操作系统文件决定 控制文件 数据文件 重做日志文件,Page 10,内存结构,Oracle的内存结构由以下两个内存区域构成: 系统全局区(SGA): 在实例启动的时候分配,是Oracle实例中的一个基本成分 程序全局区(PGA): 服务器进程启动时分配,Page 11,系统全局区,系统全局区(SGA)由几部分内存区域组成: 共享池 数据块高速缓冲区 重做日志缓冲区 有两个可选择的内存结构能配置在系统全局区内: 大型池 JAVA池,Page 12,系统全局区,系统全局区分配大小上限由SGA_MAX_SIZE参数决定. 系统全局区分配原则依赖其中的组件: 分配邻近的虚拟内存 大小基于SGA_MAX_SIZE,Page 13,共享存储区,用来存储最近最多执行的SQL语句和最近最多使用的数据定义. 它由两个主要的内存存结构组成: 库缓冲区 数据字典缓冲区 大小由参数SHARED_POOL_SIZE决定.,ALTER SYSTEM SET SHARED_POOL_SIZE = 64M;,Page 14,库缓存区,库缓冲区存储最近使用的SQL和PL/SQL语句信息: 它能够使普遍使用的语句能够共享 通过LRU算法进行管理 由两种结构组成: 共享SQL 区域 共享 PL/SQL 区域 其中各自的大小由共享池内部指定,Page 15,数据字典缓冲区,数据字典缓冲区是数据库里最经常使用的对象定义的集合. 它包括数据文件名、表、索引、列、用户权限和其它数据库对象等信息. 在解析期间,服务器进程会查找数据字典获取允许接入的关联对象信息. 缓存数据字典信息在内存区能提高查询数据的响应时间. 它的大小由共享池的大小决定.,Page 16,数据块高速缓冲区,数据块高速缓冲区储存以前从数据文件中取出过的数据块的拷贝信息. 当你得到或修改数据时,它能使性能得到提高. 它通过LRU算法进行管理. oracle9i由DB_CACHE_SIZE决定大小. oracle8i: db_block_size*db_block_buffers,Database buffer cache,Page 17,数据块高速缓冲区,由独立的子缓存组成: DB_CACHE_SIZE DB_KEEP_CACHE_SIZE DB_RECYCLE_CACHE_SIZE 数据库缓冲区可以动态的改变尺寸. DB_CACHE_ADVICE 可以设置以收集统计信息用来预测不同的缓冲大小,ALTER SYSTEM SET DB_CACHE_SIZE = 96M;,Page 18,重做日志缓冲区,重做日志缓冲区记录数据块的所有变化. 首要目的是恢复. 记录的信息可用来重做改变. 尺寸大小由LOG_BUFFER定义.,Redo log buffer cache,Page 19,大型池,大型池是在SGA内一种可选择的存贮区域,只配置在共享服务器环境中. 能减轻在共享池的负担. 用在UGA、备份和恢复等操作中. 不使用 LRU 列表算法. 大小由 LARGE_POOL_SIZE决定.,ALTER SYSTEM SET LARGE_POOL_SIZE = 64M;,Page 20,Java 区,Java 区是为了解开Java命令: 如果安装并使用 Java 是必需的. 在数据库表格中,它存贮的方式非常像PL/SQL . 它的尺寸由JAVA_POOL_SIZE 参数决定.,Page 21,User process,程序全局区,PGA是为每个用户进程连接Oracle数据库分配的区域,Stack space,Session information sort area, cursor information,SGA,Shared SQL areas,SGA,PGA Dedicated server Shared server,Server process,Shared SQL areas,Stack space,sort area, cursor information,Page 22,进程结构,Oracle进程是一种程序,依赖它要求信息的类型,执行一系列的步骤或者实施一项具体的任务. 用户进程 : 当数据库用户要求连接到 Oracle 服务器时开始启动. 服务器进程 : 连接 Oracle 实例,当用户建立一个会话时开始启动. 后台进程 : Oracle 实例启动即可用.,Page 23,用户进程,用户进程是要求 Oracle 服务器交互的一种进程: 它必须首先建立一个连接. 不直接和 Oracle 服务器交互.,Database user,Server process,User process,Connection established,Page 24,服务进程,服务进程是直接和 Oracle 服务器交互的一段程序. 它响应用户要求,向服务器发起呼叫并返回结果给用户. 可用专用服务器模式,也可用共享服务器模式创建对话.,Page 25,后台进程,保持物理和内存结构的关系. 必须的后台进程 DBWn PMON CKPT LGWR SMON RECO 可选择的后台进程 ARCn LMON Snnn QMNn LMDn CJQ0 Pnnn LCKn Dnnn,Page 26,数据库复写器,DBWn 开始写: 检查点执行 脏块上限数到达 缓存区没有自由空间 超时 连接RAC要求 表空间脱机 表空间只读 清空和删除表 表空间开始备份,Database,Page 27,Instance,SGA,DBWn,Redo log buffer,日志复写器,LGWR 开始写: 提交时 三分之一缓冲区满的时候 当有1MB日志的时候 每三秒 在DBWn写之前,Control files,Data files,Redo log files,LGWR,Database,Page 28,Instance,SGA,SMON,系统监控进程,责任: 实例恢复: 回滚日志文件中 的改变信息 打开数据库,让用户进入 回滚未提交的事务 每三秒接合空闲空间 回收临时段,Control files,Data files,Redo log files,Instance,SGA,SMON,Database,Page 29,进程监控器,处理失败后进行清理: 回滚事务 释放锁 释放其它资源 重启死的dispatchs,PGA area,Page 30,Instance,SGA,DBWn,LGWR,CKPT,Control files,Data files,Redo log files,检查点,负责: 给 DBWn 发信号 修改数据文件块头 修改控制文件信息,Page 31,归档进程(ARCn),可选择的后台进程 当ARCHIVELOG模式被设置时自动归档联机重做日志文件 保存所有数据库变化,Control files,Data files,Redo log files,Archived Redo log files,ARCn,Page 32,逻辑结构,Oracle体系的逻辑结构描述了数据库的物理空间怎样运用,包括表空间、段、片区和块.,Tablespace,Page 33,RAC方式,原理结构图,Page 34,RAC方式,优点 良好的可伸缩性 高可用性 先进的Cache Fusion技术 降低硬件成本 切换时间短 缺点 管理复杂 对网络有较高要求,Page 35,HOTSTANDBY(双机热备)方式,原理结构图,Page 36,HOTSTANDBY(双机热备)方式,优点 管理较为简单 运行较为稳定 缺点 切换时间较长 在系统切换的过程中,客户端与服务器之间的数据库连接会中断,需重新连接 备用机闲置,不能实现负载均衡,Page 37,总结,通过这部分课程的学习,您应该已经了解: 数据库文件 : 数据文件、控制文件、联机重做日志. 系统全局区内存结构: 数据块高速缓冲区、共享池、重做日志缓冲区. 主要的后台进程: DBWn, LGWR, CKPT, PMON, SMON, 和 ARCn 双机模式:RAC/HOT STANDBY,管理表空间和数据文件,Page 39,目标,通过这部分课程的学习,您将了解以下内容 : 数据库的逻辑结构 创建表空间 改变表空间的大小 为临时段分配空间 改变表空间的状态 改变表空间的存储参数设置,Page 40,概观,Control files,Data files,Redo log files,Database,Page 41,Database,逻辑上,物理上,Tablespace,Data file,OS block,Oracle block,Segment,Extent,数据库的存储层次,Page 42,系统和非系统表空间,系统表空间: 随着数据库创建被创建 包含数据字典信息 包含系统回滚段 非系统表空间: 不同的segments分开存放(如:回滚段, 临时段, 应用数据 ) 控制分配给用户对象的空间容量,Page 43,表空间的管理,本地管理的表空间 : 自由扩展信息被记录在本身的位图中 位图中的每一位都对应一个数据块或一组数据块 位图中的标志位显示数据块使用或未使用状态信息 字典管理的表空间: 缺省的表空间管理方式 自由扩展信息被记录在数据字典中,Page 44,本地管理的表空间,简化了数据字典中的内容 空间分配和回收不产生回滚信息 没有接合邻近extents的要求,CREATE TABLESPACE userdata DATAFILE /u01/oradata/userdata01.dbf SIZE 500M EXTENT MANAGEMENT LOCAL UNIFORM SIZE 256K;,Page 45,字典管理的表空间,Extents 在数据字典中管理 每个存储在表空间的segments都可以有不同的存储参数设置 有邻近接合extents的要求,CREATE TABLESPACE userdata DATAFILE /u01/oradata/userdata01.dbf SIZE 500M EXTENT MANAGEMENT DICTIONARY DEFAULT STORAGE ( initial 1M NEXT 1M );,Page 46,回滚段表空间,用来存储回滚段信息 不能包含其它对象 Extents 本地管理 在创建时仅仅能使用 DATAFILE and EXTENT MANAGEMENT 条件,CREATE UNDO TABLESPACE undo1 DATAFILE /u01/oradata/undo101.dbf SIZE 40M;,Page 47,临时表空间,用来做排序操作 不能包含固定的对象 最好使用本地表空间管理,CREATE TEMPORARY TABLESPACE temp TEMPFILE /u01/oradata/temp01.dbf SIZE 500M EXTENT MANAGEMENT LOCAL UNIFORM SIZE 10M;,Page 48,缺省临时表空间的限制,直到新的缺省表空间被使用时才能删除 不能下线. 不能将缺省的临时表空间修改成永久表空间,Page 49,删除表空间,DROP TABLESPACE userdata INCLUDING CONTENTS AND DATAFILES;,从数据字典中删除表空间信息 通过 AND DATAFILES条件可在操作系统上删除表空间的数据文件:,Page 50,改变表空间的大小,增加数据文件 改变数据文件大小: 自动 手动,app_data_02.dbf,app_data_01.dbf,app_data_03.dbf,100M,100M,200M,100M,Tablespace APP_DATA,Page 51,app_data_02.dbf,app_data_01.dbf,app_data_03.dbf,100M,100M,200M,200M,app_data_04.dbf,手动改变数据文件大小,ALTER DATABASE DATAFILE /u03/oradata/userdata02.dbf RESIZE 200M;,100M,Tablespace APP_DATA,Page 52,Tablespace APP_DATA,app_data_02.dbf,app_data_01.dbf,app_data_03.dbf,100M,在表空间中增加一个数据文件,ALTER TABLESPACE app_data ADD DATAFILE /u01/oradata/userdata03.dbf SIZE 200M;,Page 53,移动数据文件(修改表空间),表空间必须为下线状态。 目标数据文件必须存在.,ALTER TABLESPACE userdata RENAME DATAFILE /u01/oradata/userdata01.dbf TO /u01/oradata/userdata01.dbf;,Page 54,获取表空间信息,表空间信息: DBA_TABLESPACES V$TABLESPACE 数据文件信息: DBA_DATA_FILES V$DATAFILE 临时文件信息: DBA_TEMP_FILES V$TEMPFILE,Page 55,总结,通过这部分内容的学习,您应该已经了解: 怎样使用表空间分开存放数据 改变表空间大小: 增加数据文件 扩展数据文件 使用本地管理表空间 使用临时表空间,练习,练习包括以下几个主题: 创建表空间 修改表空间 请见Oracle数据库维护上机任务书 课堂练习-表空间管理,管理重做日志文件,Page 58,目标,通过这部分课程的学习,您将了解以下内容 : 在线重做日志文件的作用 在线重做日志文件的结构 控制日志文件切换和检查点执行 多路复用在线重做日志文件,Page 59,使用重做日志文件,重做日志文件记录数据所有的修改信息并提供一种介质失败时的恢复机制. 重做日志文件分组管理. 一个Oracle数据库要求至少有两组重做日志文件. 组中每个日志文件被称作一个组成员.,Redo log files,Database,Page 60,重做日志文件的结构,Group 2,Group 3,Group 1,Member,Disk 1,Disk 2,Member,Member,Member,Member,Member,Page 61,重做日志文件怎样工作,重做日志文件循环使用 当一个重做日志文件充满时, LGWR 将日志写入到下个重做日志组. 这个被叫做日志切换 检查点执行动作被触发 相关信息写入控制文件,Page 62,强迫日志切换并执行检查点,日志切换能使用命令 ALTER SYSTEM SWITCH LOGFILE. 检查点被迫使执行: 设置 FAST_START_MTTR_TARGET 参数 ALTER SYSTEM CHECKPOINT 命令,ALTER SYSTEM CHECKPOINT;,Page 63,log2b.rdo,log1b.rdo,增加在线重做日志组,Group 1,Group 2,Group 3,ALTER DATABASE ADD LOGFILE GROUP 3 ($HOME/ORADATA/u01/log3a.rdo, $HOME/ORADATA/u02/log3b.rdo) SIZE 1M;,log3b.rdo,log2a.rdo,log3a.rdo,log1a.rdo,Page 64,增加在线重做日志组成员,ALTER DATABASE ADD LOGFILE MEMBER $HOME/ORADATA/u04/log1c.rdo TO GROUP 1, $HOME/ORADATA/u04/log2c.rdo TO GROUP 2, $HOME/ORADATA/u04/log3c.rdo TO GROUP 3;,Page 65,log2a.rdo,log1a.rdo,Group 1,Group 2,Group 3,log3a.rdo,删除在线重做日志组,ALTER DATABASE DROP LOGFILE GROUP 3;,Page 66,log1a.rdo,log1a.rdo,删除在线重做日志组成员,ALTER DATABASE DROP LOGFILE MEMBER $HOME/ORADATA/u04/log3c.rdo;,log2c.rdo,log1c.rdo,Group 1,Group 2,log1b.rdo,log1b.rdo,Page 67,清空, 重新指定位置或更名在线重做日志文件,清空在线重做日志文件: 重新指定位置、更名在线重做日志文件能通过增加新日志文件,删除旧日志文件代替.,ALTER DATABASE CLEAR LOGFILE $HOME/ORADATA/u01/log2a.rdo;,Page 68,获取日志组及其成员信息,通过查询下列数据字典获取日志组及其成员信息 V$LOG V$LOGFILE,Page 69,归档日志文件,装满的在线重做日志文件能被归档. 归档在线重做日志文件两种优势: 恢复:一套一致的数据文件完整备份与在线重做日志文件、归档日志文件一起能保证所有已经提交的事务恢复到先前状态. 备份: 能在数据库打开的情况下进行. 缺省数据库以非归档模式创建.,Page 70,归档日志文件,归档日志文件能通过ARCn或手工SQL归档得到. 控制文件中记录有归档日志名称、日志序列号,在线日志文件成功归档时最高、最低的SCN. 一个装满的在线日志文件需要在检查点发生、在线日志文件被ARCn归档完成以后才能重新使用,否则等待. 归档日志文件能多路复用.,Page 71,总结,通过这部分课程的学习,您应该已经了解: 在线重做日志文件的作用 怎样获取在线重做日志文件信息 控制日志切换和检查点执行 多路复用管理多个在线重做日志文件,Page 72,练习,这部分练习包括以下主题: 创建和增加重做日志文件组及其成员. 删除重做日志文件组及其成员. 请见Oracle数据库维护上机任务书 课堂练习-管理重做日志文件,管 理 用 户 和 权 限,Page 74,目标,通过这部分课程的学习,您将了解以下内容: 创建新的数据库用户 修改和删除存在的数据库用户 监控已存在用户的信息 识别系统和对象权限 授予和回收权限,Page 75,数据库模式,模式是一种命名的对象集合 一个用户被创建,对应的模式就被创建 一个用户仅仅对应一个模式 用户名其实就等同于模式名,Page 76,创建用户所涉及内容,确定用户需要将对象存储在哪个表空间 决定每个表空间中该用户的使用限额. 指派缺省表空间和临时表空间. 开始创建一个用户. 赋予权限和角色给用户.,Page 77,创建用户: 数据库级鉴别,设定初始口令:,CREATE USER aaron IDENTIFIED BY soccer DEFAULT TABLESPACE data TEMPORARY TABLESPACE temp QUOTA 15m ON data PASSWORD EXPIRE;,Page 78,删除用户,使用 CASCADE 条件删除用户及其用户中包含的所有对象. 当前正连接到Oracle服务器的用户不能被删除,DROP USER aaron;,DROP USER aaron CASCADE;,Page 79,获取用户相关信息,获取用户相关信息能通过查询以下数据字典. DBA_USERS DBA_TS_QUOTAS,Page 80,系统权限,有100多种 ANY 关键字 是指用户在任何模式下都具有 GRANT 命令由于授予权限 REVOKE 命令回收权限,Page 81,系统权限举例,Category Examples INDEX CREATE ANY INDEX ALTER ANY INDEX DROP ANY INDEX TABLE CREATE TABLE CREATE ANY TABLE ALTER ANY TABLE DROP ANY TABLE SELECT ANY TABLE UPDATE ANY TABLE DELETE ANY TABLE SESSION CREATE SESSION ALTER SESSION RESTRICTED SESSION TABLESPACE CREATE TABLESPACE ALTER TABLESPACE DROP TABLESPACE UNLIMITED TABLESPACE,Page 82,授予系统权限,GRANT CREATE SESSION TO emi;,GRANT CREATE SESSION TO emi WITH ADMIN OPTION;,Page 83,回收系统权限,REVOKE CREATE TABLE FROM emi;,Page 84,授予对象权限,GRANT EXECUTE ON dbms_output TO jeff;,GRANT UPDATE ON emi.customers TO jeff WITH GRANT OPTION;,Page 85,回收对象权限,REVOKE SELECT ON emi.orders FROM jeff;,Page 86,获取权限信息,查询数据字典 DBA_SYS_PRIVS SESSION_PRIVS DBA_TAB_PRIVS DBA_COL_PRIVS,Page 87,总结,通过这部分课程的学习,您应该已经了解: 创建用户时指定适当的口令机制 控制用户对空间的使用 控制系统和对象权限,Page 88,练习,这部分练习包括以下主题: 创建用户 显示用户在数据字典中的相关信息 移去用户表空间配额 请见Oracle数据库维护上机任务书 课堂练习-管理用户和权限,管理一个ORACLE实例,Page 90,目标,通过这部分课程的学习,您将了解以下内容 : 创建和管理初始化参数文件 启动和关闭实例 监控和使用诊断文件,Page 91,spfiledb01.ora,初始化参数文件,SQL CONNECT / AS SYSDBA SQL STARTUP,Page 92,初始化参数文件,访问实例的入口 存在两种类型参数: 显性的: 在文件中有个入口 隐性的: 在文件中没有入口,但被指派了缺省的值 在不同的环境下可使用不同的初始化文件优化单个数据库的执行. 改变文件中参数设置并使其生效依赖使用的初始化参数文件类型; 静态初始化参数文件 PFILE 延续性初始化参数文件 SPFILE,Page 93,PFILE initSID.ora,PFILE 是一个能被操作系统编辑器修改的文本文件. 手动对该文件进行修改. 下次数据库启动修改才能生效. 它的缺省路径是 $ORACLE_HOME/dbs.,Page 94,PFILE 举例,# Initialization Parameter File: initdb01.ora db_name = db01 instance_name = db01 control_files = ( /u03/oradata/db01/control01db01.ctl, /u03/oradata/db01/control02db01.ctl) db_block_size = 4096 db_block_buffers = 500 shared_pool_size = 31457280 # 30M Shared Pool db_files = 1024 max_dump_file_size = 10240 background_dump_dest = /u05/oracle9i/admin/db01/bdump user_dump_dest = /u05/oracle9i/admin/db01/udump core_dump_dest = /u05/oracle9i/admin/db01/cdump undo_management = auto undo_tablespace = undtbs . . .,Page 95,SPFILE spfileSID.ora,是一个不用重启数据库而能将改变生效的二进制文件 保存在ORACLE服务器端 能通过ALTER SYSTEM 命令直接对参数进行修改 能指定改变临时在内存中生效还是从现在开始永久生效 修改的值能被删除重置到实例缺省的值,ALTER SYSTEM SET undo_tablespace = UNDO2;,创建 SPFILE,SPFILE能使用命令CREATE SPFILE命令从initSID.ora中创建,并且在数据库开启前或开启后都能执行,CREATE SPFILE FROM PFILE;,Page 97,SPFILE 举例,*.background_dump_dest=$ORACLE_HOME/admin/db01/bdump *.compatible=9.0.0 *.control_files=/u03/oradata/db01/ctrl01db01.ctl,/u03/oradata/db01/ctrl02db01.ctl *.core_dump_dest=$ORACLE_HOME/admin/db01/cdump *.db_block_buffers=500 *.db_block_size=4096 *.db_files=40 *.db_name=db01 *.instance_name=db01 *.remote_login_passwordfile=exclusive *.shared_pool_size=31457280 # 30M Shared Pool *.undo_management=AUTO db01.undo_tablespace=UNDOTBS01 db02.undo_tablespace=UNDOTBS02 . . .,Page 98,启动一个数据库 NOMOUNT,OPEN,MOUNT,NOMOUNT,SHUTDOWN,实例启动,STARTUP,SHUTDOWN,Page 99,启动一个数据库 MOUNT,OPEN,MOUNT,NOMOUNT,SHUTDOWN,控制文件打开,实例启动,STARTUP,SHUTDOWN,Page 100,启动一个数据库 OPEN,OPEN,MOUNT,NOMOUNT,SHUTDOWN,实例中控制文件描述的所有文件被打开,控制文件打开,实例启动,STARTUP,SHUTDOWN,Page 101,STARTUP 命令,STARTUP,启动实例并打开数据库:,STARTUP PFILE=$ORACLE_HOME/dbs/initdb01.ora,Page 102,The ALTER DATABASE Command,改变数据库的状态(UNMOUNT TO MOUNT):,ALTER DATABASE db01 MOUNT;,打开数据库:,ALTER DATABASE db01 OPEN;,Page 103,关闭 数据库,关闭模式: NORMAL TRANSACTIONAL IMMEDIATE ABORT,A x x x x,T x x o o,I x x x o,关闭模式 允许新的接入 等待直到当前的会话都结束 等待直到当前的事务都结束 强制执行 checkpoint 并关闭所有文件,N x o o o,YES,NO,x o,Page 104,关闭对象,During a Shutdown Normal, Shutdown Transactional or Shutdown Immediate,一致性的数据库 (干净的数据库),这种方式关闭: 数据块高速缓冲区内容写入数据文件 未提交的事务回滚 释放资源,这之后重新启动数据库: 不用做实例恢复,Page 105,关闭对象,During a Shutdown Abort or Instance Failure or Startup Force,不一致的数据库 (脏数据库),这样关闭: 已经修改的数据块缓冲区的内容不写入数据文件 未提交的事务不被回滚,这之后重新启动数据库: 改变的信息将被重新写入重做日志文件 必须使用回滚段来回滚未提交的改变 释放资源,Page 106,通过检查诊断文件来管理实例,诊断文件包含实例运行过程中所遇到的重要的事件信息. 作为日常管理数据库的基础,能为解决问题提供帮助. 存在以下几种诊断文件: 警告日志文件(alertSID.log) 后台跟踪文件 用户跟踪文件,Page 107,警告日志文件,警告日志文件记录了数据库运行中的一些操作命令和主要事件结果. 它被用来诊断日常数据库运行错误信息. 每条都对应有时间戳信息. 它所在路径定义在 初始化参数BACKGROUND_DUMP_DEST中.,Page 108,后台跟踪文件,后台跟踪文件记录有被后台进程检测到的错误信息. 当后台进程遇到错误时才被创建 它所在路径定义在 初始化参数BACKGROUND_DUMP_DEST中,Page 109,用户跟踪文件,用户跟踪文件当用户进程通过服务器进程连接到Oracle服务器时产生。 一个用户跟踪文件包含跟踪到的SQL执行语句或用户通讯错误信息. 当用户会话过程中遇到错误信息时产生. 它的路径定义在 USER_DUMP_DEST中. 它的大小定义在 MAX_DUMP_FILE_SIZE中 ,缺省为10M.,Page 110,打开或关闭用户跟踪,用户跟踪文件能在会话或实例级别使用下列命令、参数打开或关闭: 会话级别使用 ALTER SESSION 命令: ALTER SESSION SET SQL_TRACE = TRUE 会话级别也可以通过执行DBMS 包: dbms_system.SET_SQL_TRACE_IN_SESSION 实例级别可通过设置初始化文件中的参数: SQL_TRACE = TRUE,Page 111,总结,通过这部分内容的学习,您应该了解: 创建和管理初始化参数文件 启动和关闭实例、数据库 监控和使用诊断文件,总结练习,练习包括以下主题: 创建 SPFILE文件 通过不同的方式启动和关闭数据库 请见Oracle数据库维护上机任务书 课堂练习-管理一个ORACLE实例,Page 113,数据库推荐书目,介绍几本oracle入门的好书 Oracle8i 备份恢复手册 Oracle8I初学者指南 Oracle8i PLSQL程序设计 Oracle8数据库管理员手册 Oracle9 statspack高性能调整 OCP的教学用书 ORACLE随机手册,Page 114,数据库推荐网站, oracle的官方文档网站 oracle的技术支持网站。有海量的Knowledge Base,各种问题解决经验。 oracle的官方网站,可以在这里down oracle的软件、官方文档和获得最新的消息 国内人气最强的数据库等IT技术论坛 oug.org 中国Oracle官方论坛,SQL*Plus使用介绍,Page 116,目标,通过这部分课程的学习,您将了解以下内容 : 登录到 SQL*Plus环境 编辑SQL 命令 SQL*Plus 命令格式化并输出结果 结合脚本文件执行,Page 117,登录到 SQL*Plus. 描述表的结构. 编辑SQL语句. 在SQL*Plus中执行SQL. 保存或插入SQL语句到文件,SQL*Plus主要内容,Page 118,登录到 SQL*Plus,从 Windows 环境: 通过命令行: sqlplus username/password database,Page 119,Name Null? Type - - - DEPARTMENT_ID NOT NULL NUMBER(4) DEPARTMENT_NAME NOT NULL VARCHAR2(30) MANAGER_ID NUMBER(6) LOCATION_ID NUMBER(4),显示表的结构内容,SQL DESCRIBE departments,Page 120,SQL*Plus 编辑命令,APPEND text CHANGE / old / new CHANGE / text / CLEAR BUFFER DEL DEL n DEL m n,Page 121,SQL*Plus 编辑命令,INPUT INPUT text LIST LIST n LIST m n RUN n n text 0 text,Page 122,1 SELECT last_name 2* FROM employees,SQL LIST,1* SELECT last_name,SQL A , job_id,1* SELECT last_name, job_id,1 SELECT last_name, job_id 2* FROM employees,使用 LIST, n, and APPEND,SQL 1,SQL L,Page 123,1* SELECT * from employees,SQL L,1* SELECT * from departments,SQL c/employees/departments,1* SELECT * from departments,使用 CHANGE 命令,SQL L,Page 124,SQL*Plus 文件命令,SAVE filename GET filename START filename filename EDIT filename SPOOL filename EXIT,Page 125,Created file my_query,SQL START my_query,SQL L 1 SELECT last_name, manager_id, department_id 2* FROM employees SQL SAVE my_query,使用 SAVE 和START 命令,LAST_NAME MANAGER_ID DEPARTMENT_ID - - - King 90 Kochhar 100 90 . 20 rows selected.,Page 126,小结,SQL*Plus 环境下: 执行SQL 语句 编辑SQL 语句 格式化输出 与脚本文件交互,Page 127,练习,这部分练习包括以下主题: 请见Oracle数据库维护上机任务书 课堂练习-Sqlplus Utility,逻辑备份恢复简介,Page 129,目标,逻辑备份的概念 Oracle 数据库逻辑备份使用工具 Oracle 数据库逻辑备份形式,Page 130,数据库的备份和恢复,ORACLE数据库有两类备份方法。 第一类为物理备份,该方法实现数据库的完全恢复,但数据库必须运行在归挡模式下,备份较为复杂,需要恢复管理器RMAN来辅助备份恢复工作,且需要大量的外部存储设备,例如磁带库; 第二类备份方式为逻辑备份,此方法不需要数据库运行在归挡模式下,不但备份简单,而且可以不需要大量的外部存储设备。 ORACLE数据库的逻辑备份分为三种方式:表方式、用户方式和完全方式。 恢复与备份紧密相关,也分为三种方式:表方式、用户方式和完全方式。,Page 131,备份工具,备份工具 EXPORT (使用命令EXP) 恢复工具 IMPORT(使用命令IMP),Page 132,数据库的备份和恢复,EXPORT备份 原则上,备份和恢复程序exp和imp的版本应和Server端一致。建议备份在服务器上进行,以保证字符集,软件版本的一致性。以下备份恢复语句示例都是直接在数据库服务器上运行的。 备份和恢复操作的时间一定不要和数据库的定时任务在时间上重叠,否则可能会因为回滚段或临时段的争用而导致备份恢复操作异常终止。 此外,建议进行备份操作定在非系统繁忙时间,避开数据库频繁写操作的时段,例如在凌晨2点进行备份。,Page 133,Export 命令,语法,举例,exp hr/hr TABLES=(employees,departments) rows=y file=exp1.dmp,exp keyword = (value, value2, ,valuen),exp system/manager OWNER=hr direct=y file=expdat.dmp,exp system/manager FULL=y inctype=cumulative file=expcum1.dmp,exp system/manager TRANSPORT_TABLESPACE=y TABLESPACES=(ts_emp) log=ts_emp.log,Page 134,数据库的备份和恢复,表方式 表方式用于备份某个用户模式下指定的对象(表、索引、约束等)。 若备份到主机本地硬盘,使用如下命令: exp ring/ring rows=y indexes=n compress=n buffer=1024000 direct=y feedback=100000 file=exp_ring_tables_yyyymmdd.dmp log=exp_ring_tables_yyyymmdd.log tables=RBT_ADMININFO,RBT_CONFIG,Page 135,数据库的备份和恢复,用户方式 用户方式用于备份某个用户模式下的所有对象。 若备份到主机本地硬盘,使用如下命令: exp ring/ring rows=y indexes=n compress=n buffer=1024000 direct=y feedback=100000 file=exp_ring_yyyymmdd.dmp log=exp_ring_yyyymmdd.log,Page 136,Import 工具的命令行,语法,举例,imp hr/hr TABLES=(employees,departments) rows=y file=exp1.dmp,imp keyword = value or keyword = (value, value2, value n),imp system/manager FROMUSER=hr file=exp2.dmp,imp system/manager TRANSPORT_TABLESPACE=y TABLESPACES=ts_employees,Page 137,数据库的备份和恢复,IMPORT恢复 ignore参数 Oracle在恢复数据的过程中,当恢复某个表时,该表已经存在,就要根据ignore参数的设置来决定如何操作。 若ignore=y,Oracle不执行CREATE TABLE语句,直接将数据插入到表中,如果插入的记录违背了约束条件,比如主键约束,则出错的记录不会插入,但合法的记录会添加到表中。 若ignore=n,Oracle不执行CREATE TABLE语句,同时也不会将数据插入到表中,而是忽略该表的错误,继续恢复下一个表。 indexes参数 在恢复数据的过程中,若indexes=n,则表上的索引不会被恢复,但是主键对应的唯一索引将无条件恢复,这是为了保证数据的完整性。,Page 138,数据库的备份和恢复,IMPORT恢复 表方式 此种恢复方式根据用表方式备份出来的数据进行恢复。 若从本地文件恢复,使用如下命令: imp ring/ring rows=y indexes=n ignore=n commit=y buffer=1024000 feedback=100000 file=exp_ring_tables_yyyymmdd.dmp log=imp_ring_tables_yyyymmdd.log tables=RBT_ADMININFO,RBT_CONFIG,Page 139,数据库的备份和恢复,IMPORT恢复 用户方式 此种恢复方式根据用用户方式备份出来的数据进行恢复。 若从本地文件恢复,使用如下命令: imp ring/ring rows=y indexes=n ignore=n commit=y buffer=1024000 file=exp_ring_yyyymmdd.dmp log=imp_ring_yyyymmdd.log,Page 140,数据库的备份和恢复,定时备份cron脚本 此处设定备份cron脚本在每天的凌晨2点进行,对所有业务数据进行备份。 定义步骤: 给oracle用户分配定时任务的权限 以oracle用户身份,执行crontab e ,添加定时任务 在备份目录下建立任务脚本exp_cron.sh,注意设置ORACLE_HOME,ORACLE_SID,PATH环境变量 给exp_cron.sh增加执行权限 修改完毕后通过crontab l来查看设置是否正确,Page 141,总结,Export 和 Import 工具概念 Export 和 Import 工具的使用方法 使用Export 和 Import 的一些原则,Page 142,练习,这部分练习包括以下主题: 请见Oracle数据库维护上机任务书 课堂练习-逻辑备份,数据库的日常检查,Page 144,目标,数据库状态检查 数据库版本检查 查看SGA区域 回滚段竞争检查 查看日志文件 查看表空间 检查job状态,Page 145,数据库的日常检查,检查数据库状态 确认数据库是否在open状态,正常提供服务。 oracle% sqlplus “/as sysdba“ SQL select status, instance_role from v$instance; STATUS INSTANCE_ROLE - - OPEN PRIMARY_INSTANCE,Page 146,数据库的日常检查,数据库版本检查 数据库应该打了最新的patchset; 8i要求是8.1.7.4; 9i要求是9.2.0.5或者更高的补丁版本 。 SQLselect * from v$version;,Page 147,查看SGA区域 SGA区各项buffer之和应该小于系统物理内存的一半 检查数据库SGA区: SQLshow sga 检查系统物理内存: Solaris: $ /usr/sbin/prtconf |grep -i “Memory size“ HP: $ grep Physical /var/adm/syslog/syslog.log AIX: $ /usr/sbin/lsattr -E -l sys0 -a realmem,数据库的日常检查,Page 148,回滚段竞争检查 8i:返回值应该低于2%。如果该值过高,8i需要手工建立更多的回滚段。 SQL select The average of waits/gets is | round(sum(waits) / sum(gets) * 100,2)|% From v$rollstat; 9i:Nospace值应该为0。如果持续存在非零值,建议增加回滚表空间的大 SQLselect distinct nospaceerrcnt as nospace From v$undostat Where begin_timesysdate-(1/12);,数据库的日常检查,Page 149,查看日志文件 数据库运行时,可以通过查询v$log_history来观察log switch的切换时间。 推荐联机日志最好是业务非高峰期每小时切换一次,业务高峰期20分钟左右切换一次。 SQLselect to_char(first_time,yyyy-mm-dd hh24:mi:ss) change_time from v$log_history; CHANGE_TIME - 2004-04-06 10:02:52 2004-04-06 10:10:45 2004-04-06 10:17:01,数据库的日常检查,Page 150,查看表空间 查看各个表空间所占的大小,剩余空间,使用空间百分比等信息 特别是当业务表空间的剩余空间低于50M或者使用空间百分比大于90%时,需要考虑增加表空间的大小。 SQL select a.tablespace_name, a.bytes totalbytes, sum(b.bytes) freebytes from dba_data_files a, dba_free_space b where a.file_id = b.file_id group by a.tablespace_name, a.bytes ; TABLESPACE_NAME TOTALBYTES FREEBYTES - CWMLITE 209715
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 图纸专区 > 课件教案


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!