ORACLE培训教程(289页).ppt_第1页
ORACLE培训教程(289页).ppt_第2页
ORACLE培训教程(289页).ppt_第3页
ORACLE培训教程(289页).ppt_第4页
ORACLE培训教程(289页).ppt_第5页
已阅读5页,还剩284页未读 继续免费阅读

下载本文档

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

文档简介

ORACLE数据库培训教程 内容纲要 数据库基础 DBA基本管理 数据库备份与恢复 数据库性能调整 SQL PL SQL 数据库管理员是一个或一组全面负责管理和控制数据库系统的人员 简称 DBA DataBaseAdministrator 序 数据库管理员的主要职责 了解ORACLE数据库的体系结构负责数据库管理系统的安装和升级建立数据库启动和关闭数据库管理和监控数据库用户管理数据库特权管理存储空间数据库性能调整 数据库管理员的主要职责 续 备份和恢复数据库问题发现及处理 第一章 ORACLE发展综述及前景 数据管理得发展和特点 人工管理阶段文件系统阶段数据库系统阶段 人工管理阶段 50年代中期 早期的数据处理都是通过手工进行的 因为当时的计算机主要用于科学计算 应用程序2 数组2 手工处理数据有两个缺点 第一 应用程序之间的依赖性太强 不独立 第二 数据组和数据组之间可能有许多重复数据 造成数据冗余 应用程序1 数组1 应用程序N 数组N 文件系统阶段 50年代中期 60年代中期 文件系统的最大特点是解决了应用程序和数据之间的一个公共接口问题 使得应用程序采用统一的存取方法来操作数据 不过 文件系统只是简单地存放数据 相互之间并没有有机的联系 应用程序1 应用程序2 应用程序N 数据库管理系统 数据库系统阶段 60年代后期 现在 数据库系统由计算机软 硬件资源组成 它实现了有组织地 动态地存储大量有关联数据 方便多用户访问 它与文件系统的主要区别是数据的充分共享 交叉访问 与应用程序的高度独立性 数据库管理系统对数据的处理方式和文件系统不同 它把所有应用程序中所使用的数据汇集在一起 并以记录为单位存储起来 以便于应用程序查询和使用 数据库系统和文件系统的区别是 数据库对数据的存储是按照同一结构进行的 不同的应用程序都可以直接操作这些数据 即对应用程序的高度独立性 数据库系统的组成 数据应用程序用户软件硬件 ORACLE发展历史 LarryEllison 拉里 埃利森 作为Oracle公司的董事长兼首席执行官于1977年和RobertMinor 罗伯特 迈诺 一道在Redwood创建了Oracle公司 他们率先推出了基于IBMSystem R 关系 模型的关系数据库管理系统 RDBMS 同时它也是第一个使用IBM结构化查询语言 SQL 的RDBMS 今天 OracleRDBMS支持80多种不同工作环境 这些环境包括IBM大型机 DECVAX小型机 基于UNIX的小型机 WindowsNT以及多种专利硬件操作系统平台 很显然 Oracle是世界上最大的RDBMS开发商 从收入 软件和服务的角度讲 Oracle是仅次于Microsoft的第二大软件公司 什么是ORACLEORACLE的中文含义为 神谕 ORACLE发展里程碑 1977Oracle公司成立1979商用RDBMS1983可移植的RDBMS1984可移植的 SQL 工具集1986客户 服务器RDBMS1987CASE工具1988发布Oracle61990基于客户机的工具集1992发布UNIX版本的Oracle71993发布合作开发环境 CDE 发布OracleMediaServer 媒体服务器 1994发布PC版本的Oracle71996发布OracleUniversalServer1997发布Oracle8 ORACLE产品及其组成 数据服务器应用服务器开发工具决策支持产品应用软件工作组产品 ORACLE的特点 支持大型数据库和多用户的高性能事物处理具有可移植性 可兼容性和可连接性先进性 支持大型数据库和多用户的高性能事物处理 Oracle支持最大的数据库 其大小10万G 支持上万个并发用户 在同一数据上实现各种数据应用 并司数据争用最小 保证数据一致性 系统维护具有很高的性能 Oracle每天可连接24小时工作 Oracle将存放在多台计算机上的数据组合成一个逻辑数据库 可被全部网络用户存取 分布式系统像集中式数据库一样具有用户透明性和数据一致性 具有可移植性 可兼容性和可连接性 由于Oracle软件可在许多不同的操作系统上运行 因而在Oracle上所开发的应用可移植到任何操作系统 只需很少修改或不需要修改 Oracle软件同工业标准相兼容 包括许多工业标准的操作系统 所开发系统可在任何操作系统上运行 可连接性是指Oracle允许不同类型的计算机和操作系统通过网络共享信息 先进性 Oracle是数据库领域的排头兵 从最早的关系型数据库到Oracle8 一直到最新的全面支持Internet的数据库Oracle8i 它把数据库和Internet彻底地结合在一起 其技术都处于领先地位 ORACLE的未来 基于INTERNET的网络应用e business企业级应用 CRM ERP 第二章 ORACLE的体系结构 基本概念 数据库表空间文件实例 数据库 数据库是一个数据的集合 Oracle能够提供关系模式存储和访问数据的方法 因此Oracle是一种关系型数据库管理系统 RDBMS 数据库 不只是指物理上的数据 也指在本章中描述的物理 存储及进程对象的一个组合 除了以关系格式存储数据 Oracle8支持面向对象结构如抽象数据类型及方式 无论是面向对象结构还是关系结构 Oracle数据库都将其数据存储在文件中 表空间 表空间是数据库的逻辑划分 每个数据库至少有一表空间 叫system表空间 为便于管理及提高运行效率 其他表空间可供用户群及应用系统共同使用 一个表空间只能属于一个数据库 文件 每个表空间由同一磁盘上的一个或多个文件组成 这些文件叫做数据文件 一个数据文件只能属于一个表空间 实例 数据库实例 也称为服务器server 就是用来访问一个数据库文件集的一个存储结构及后台进程的集合 ORACLE的体系结构体系结构概述 物理结构数据文件 日志文件 控制文件 参数文件系统全局区 SystemGlobalArea 共享池 数据缓冲区 日志缓冲区进程用户进程 服务器进程 后台进程 总观 Oracle内存结构 进程 文件 ORACLE的体系结构体系结构图示 数据文件日志文件控制文件参数文件 ORACLE的体系结构物理结构 数据文件 DataFile 是物理存储ORACLE数据库数据的文件 其特点如下 每一个数据文件只与一个数据库相联系 数据文件一旦被建立则不能修改其大小 一个表空间可包含一个或多个数据文件 ORACLE的体系结构物理结构 日志文件 LogFile 记录所有对数据库数据的修改 以备恢复数据时使用 其特点如下 每一个数据库至少包含两个日志文件组 日志文件组以循环方式进行写操作 每一个日志文件成员对应一个物理文件 ORACLE的体系结构物理结构 日志开关 LogSwitch 是为实现日志文件组的循环使用而设置的 出现日志开关的情况如下 当一个日志文件组被填满时关闭数据库时DBA手动转移日志开关 ORACLE的体系结构物理结构 日志文件写操作图示 Group1 Group2 Member2 1 Member1 1 ORACLE的体系结构物理结构 镜像日志文件是为防止日志文件的丢失 在不同磁盘上同时维护两个或多个联机日志文件的副本 其特点如下 每个日志文件组至少包含两个日志文件成员 每组的成员数目相同 同组的所有成员同时被修改 同组的成员大小相同 不同组的成员大小可不同 ORACLE的体系结构物理结构 ORACLE的体系结构物理结构 镜像日志文件 Group1 Group2 Group3 Disk1 Disk2 MemberA MemberA MemberA MemberB MemberB MemberB 控制文件 ControlFile 是一个较小的二进制文件 用于描述数据库结构 描述信息如下 数据库建立的日期 数据库名 数据库中所有数据文件和日志文件的文件名及路径 恢复数据库时所需的同步信息 要点注意 在打开和存取数据库时都要访问该文件 镜像控制文件 记录控制文件名及路径的参数为 CONTROL FILES ORACLE的体系结构物理结构 参数文件 ParameterFile 是一个文本文件 可直接使用操作系统下的文本编辑器对其内容进行修改 该文件只在建立数据库或启动实例时才被访问 在修改该文件之前必须关闭实例 初始参数文件 init ora生成参数文件 initSID oraconfig ora ORACLE的体系结构物理结构 参数文件的作用 确定存储结构的大小 设置数据库的全部缺省值 设置数据库的范围 设置数据库的各种物理属性 优化数据库性能 ORACLE的体系结构物理结构 参数文件中参数的数据类型 整型例 DB BLOCK SIZE 2048字符型例 DB NAME ora7 逻辑型例 CHECKPOINT PROCESS true ORACLE的体系结构物理结构 共享池数据库缓冲区日志缓冲区 ORACLE的体系结构系统全局区 实例 INSTANCE 是存取和控制数据库的软件机制 它由系统全局区 SystemGlobalArea 简称SGA 和后台进程组成 ORACLE的体系结构系统全局区 Oracle实例 服务器进程 SharedPool DatabaseBufferCache SGA RedoLogBuffer 用户进程 OracleInstance SGA是ORACLE系统为实例分配的一组共享缓冲存储区 用于存放数据库数据和控制信息 以实现对数据库数据的管理和操作 ORACLE的体系结构系统全局区 共享池 SharedPool 由共享SQL区和数据字典区组成 参数SHARED POOL SIZE确定共享池的大小 共享SQL区包括SQL或PL SQL语句的文本SQL或PL SQL语句的语法分析形式SQL或PL SQL语句的执行方案 数据字典区用于存放数据字典信息行 ORACLE的体系结构系统全局区 数据缓冲存储区 DatabaseBufferCache 用于存储从数据文件中读的数据的备份 DB BLOCK SIZE确定数据块的大小 一般为2K或4K 对于大数据块的数据库 此参数值为物理块的倍数 DB BLOCK BUFFERS确定数据块的数目 ORACLE的体系结构系统全局区 数据缓冲存储区分为脏列表包括被修改过但尚未写到数据文件的缓冲块 LRU LeastRecentlyUsed 列表包括空闲缓冲块 正在存取的缓冲块 已被修改但尚未移到脏列表的缓冲块 ORACLE的体系结构系统全局区 日志缓冲存储区 LogBuffer 以记录项的形式备份数据库缓冲区中被修改的缓冲块 这些记录将被写到日志文件中 LOG BUFFER确定日志缓冲区的大小 ORACLE的体系结构系统全局区 用户进程服务器进程后台进程 ORACLE的体系结构进程 用户进程当用户运行一个应用程序时 就建立一个用户进程 ORACLE的体系结构用户进程 服务器进程处理用户进程的请求 处理过程分析SQL命令并生成执行方案 从数据缓冲存储区中读取数据 将执行结果返回给用户 ORACLE的体系结构服务器进程 后台进程为所有数据库用户异步完成各种任务 ORACLE的体系结构后台进程 DBWR DataBaseWriter 将数据缓冲区中所有修改过的缓冲块数据写到数据文件中 并使用LRU算法来保持缓冲区中的数据块为最近经常使用的 以减少I O次数 该进程在启动实例时自动启动 ORACLE的体系结构后台进程 DBWR进行写操作的情况 脏列表达到最低限制 相当于参数DB BLOCK WRITE BATCH值的一半 一个进程在LRU列表中扫描指定数目的缓冲块 未找到空闲缓冲块 参数DB BLOCK MAX SCAN CNT确定扫描数目 ORACLE的体系结构后台进程 DBWR进行写操作的情况 出现超时3秒钟内该进程未活动 则该进程将在LRU列表中查找尚未查找的缓冲块 这组缓冲块的数目相当于参数DB BLOCK WRITE BATCH值的2倍 出现检查点 ORACLE的体系结构后台进程 LGWR LogWriter 将日志缓冲区中的所有记录项写到日志文件中 该进程在启动实例时自动启动 ORACLE的体系结构后台进程 LGWR进行写操作的情况 用户进程提交一个事务 Commit 日志缓冲区达到1 3范围DBWR对一个检查点需要清除缓冲块出现超时 3秒钟内未活动 则进行一次写操作 ORACLE的体系结构后台进程 检查点 Checkpoint 在检查点出现期间 DBWR进程将数据缓冲区中的所有脏缓冲块写到数据文件中 LGWR进程将日志缓冲区中的所有记录项写到日志文件中 以确保上一个检查点至今修改过的所有数据块都被写到磁盘上 ORACLE的体系结构后台进程 检查点 预定数目的记录项被填满 参数LOG CHECKPOINT INTERVAL确定了预定数目 设置指定的秒数 参数LOG CHECKPOINT TIMEOUT确定了间隔秒数 每个日志开关处关闭实例时 DBA手动操作 表空间离线 ORACLE的体系结构后台进程 CKPT Checkpointer 在控制文件中记录检查点 参数CHECKPOINT PROCESS确定了检查点的启动 不启动状态 若CKPT进程不启动 则该进程的工作将由LGWR进程代劳 如果数据库的数据文件过多 这样操作会降低系统性能 ORACLE的体系结构后台进程 ARCH Archiver 在日志文件组出现切换时 将旧日志文件的内容拷贝到脱机存储介质上 出现介质失败时用于恢复数据 LOG ARCHIVE START确定了该进程的启动 不启动状态 ORACLE的体系结构后台进程 ARCH Archiver LOG ARCHIVE DEST当数据库在归档模式下操作时 该参数确定了日志文件的归档目标 LOG ARCHIVE FORMAT当数据库在归档模式下操作时 该参数确定了归档日志文件的缺省文件名格式 ORACLE的体系结构后台进程 SMON SystemMonitor 负责完成自动实例恢复 该进程在启动实例时自动启动 回收用户不在使用的临时段所站的空间 连接所有数据文件中空闲表空间 ORACLE的体系结构后台进程 ORACLE的体系结构后台进程 PMON Process 撤消异常中断的用户进程 并释放该进程已获得的系统资源或锁 回滚未提交操作 RECO Recover 在分布式操作的情况下 恢复一个事务的失败 LCKn Lock 在并行服务器系统间加锁 最多可加10个锁 分别为LCK0 LCK1 LCK9 ORACLE的体系结构后台进程 处理SQL语句的三个阶段语法分析 parse 执行 execute 返回指令 fetch ORACLE的体系结构示例 SELECT操作 SQL SELECTsalFROMempWHEREjob CLERK ORACLE的体系结构示例 UPDATE操作为了支持读一致性 恢复和回滚 所有修改操作需要回滚段 修改操作执行 将数据块送到数据缓冲区将回滚块送到数据缓冲区在修改行上设置行锁保存回滚数据到回滚段块将修改写到数据块 ORACLE的体系结构示例 UPDATE操作 SQL SELECTsalFROMempWHEREjob CLERK SQL UPDATEempSETsal sal 1 1WHEREjob CLERK ORACLE的体系结构示例 第三章 ORACLE的存储逻辑结构 ORACLE的逻辑结构 ORACLE的逻辑结构是由一个或多个表空间组成 一个表空间由一组分类段组成一个段由一组范围组成一个范围由一批数据库块组成一个数据库块对应一个或多个物理块 逻辑结构示意图 Database File NextExtent5MB Segment20MB InitialExtent15MB DatabaseBlocks Tablespace 数据库块 DatabaseBlock 是数据库使用的I O最小单元 又称逻辑块或ORACLE块 一个数据库块对应一个或多个物理块 块的大小由参数DB BLOCK SIZE确定 ORACLE的逻辑结构数据库块 数据库块的格式 ORACLE的逻辑结构数据库块 标题 包括通用的块信息 如块地址 段类型等 最佳大小为85 100bytes 表目录 存储聚集中表的信息 这些信息用于聚集段 行目录 包括这块中的有效行信息 允许使用每行开头的2bytes 自由空间 这块中能插入或修改的一组空间 行数据 存储表或索引的数据 ORACLE的逻辑结构数据库块 PCTFREE用于行的UPDATE操作 在遇到PCTFREE后 这块被填满且不能进行INSERT操作 ORACLE的逻辑结构数据库块 控制PCTFREE参数值 设定一个较小的PCTFREE参数值允许插入更多的记录 要求相对较少的数据块来存储数据 会造成行迁移 链接会因为源于同一个逻辑行的数据被分配到不同的物理位置 而影响运行性能 控制PCTFREE参数值 设定一个较大的PCTFREE参数值保留更多的空间用来做更新操作 要求相对较多的数据块来存储数据 会减少行迁移 PCTUSED用于行的INSERT的操作 当块的百分比小于PCTUSED时 可通过行DELETE或UPDATE来减少列存储 ORACLE的逻辑结构数据库块 设定一个较大的PCTUSED参数值因为数据块不总是空闲 故而会降低Processingcosts 会造成空间的浪费 设定一个较大的PCTUSED参数值因为数据块会经常空闲 故而会增大Processingcosts 提高空间利用率 控制PCTUSED参数值 PCTFREE 20 PCTUSED 40 ORACLE的逻辑结构数据库块 范围 Extent 是数据库存储空间分配的逻辑单位 一个范围由一组数据库块组成 范围是由段分配的 分配的第一个范围称初始范围 以后分配的范围称增量范围 ORACLE的逻辑结构范围 逻辑结构范围 控制范围分配的参数 段 Segment 是表空间中一个指定类型的逻辑存储结构 它由一个或多个范围组成 段将占用并增长存储空间 ORACLE的逻辑结构段 段的分类 ORACLE的逻辑结构段 表空间 Tablespace 是数据库中物理编组的数据仓库 对应一个或多个数据文件 表空间的大小是它所对应的数据文件大小的总和 ORACLE的逻辑结构表空间 SystemTablespace DataTablespace ORACLE的逻辑结构表空间 ORACLE数据库中的数据逻辑存储在表空间中 物理存储在数据文件中 ORACLE的逻辑结构数据库结构 第四章 数据库的安装 硬件结构 数据库的安装硬件需求 服务器CPUIntel486网卡支持TCP IP协议内存16M外存1GB 客户Intel486支持TCP IP协议16M400MB 服务器操作系统TCP IP协议 客户操作系统TCP IP协议 数据库的安装软件需求 1 修改OS参数SEMMNI20SEMMNS60SHMMAX20971520SHMMNI100SHMSEG15 2 重新启动系统 3 建立一个ORACLE用户 DBA组 并登录到ORACLE用户下 数据库的安装安装示例 4 设置环境变量vi profile追加下列语句 ORACLE HOME 目录名 用户名 oracle oracle7 ORACLE SID 数据库名 ora7 TK2DEV 终端类型 ansi 数据库的安装安装示例 5 读介质磁盘 切入root用户 mkdir cdrom chmod777 cdrom将光盘放入光驱内 mount fRCKRDG lower dev cd0 cdrom 数据库的安装安装示例 6 设置安装环境 换入oracle用户 cd cdrom orainst orainst su cd home oracle orainst rootpre sh设置安装环境 exit 数据库的安装安装示例 tcpctlstartSQL NETV1或 lsnrctlstartSQL NETV2 数据库的安装安装示例 一个产品对应一个子目录公共目录 命令 bin管理和维护软件dbs有关安装的软件orainst 数据库的安装安装示例 DBA应用程序 SQL DBASQL LoaderExport Import SQL DBA允许DBA控制和监视ORACLE数据库 只有DBA特权的用户可以使用 DBA应用程序 SQL DBASQL LoaderExport Import 命令执行方式 行命令 svrgrm30SQLDBA 输入行命令 DBA应用程序 SQL DBASQL LoaderExport Import SQL Loader将标准操作系统文件 文本文件或C数据格式文件 中的数据安装到ORACLE数据基表中 DBA和用户都可以使用 DBA应用程序 SQL DBASQL LoaderExport Import Export Import允许DBA卸出 恢复ORACLE格式的数据 ORACLE特殊用户 internalsystemsys internal只能在服务器端使用的超级用户 它具有DBA的所有特权 连接方式与普通用户相同 ORACLE特殊用户 internalsystemsys System manager 在建立数据库时自动建立的一个超级用户 它拥有显示管理信息的附加表和视图 以及由ORACLE工具使用的所有表和视图 连接方式与普通用户相同 ORACLE特殊用户 internalsystemsys Sys change on install 只能在服务器端使用的超级用户 它具有DBA的所有特权 连接方式与普通用户相同 第五章 数据库的启动和关闭 数据库的启动 启动步骤 启动ServerManager连接INTERNAL用户启动实例 读参数文件分配SGA启动后台进程打开后台跟踪文件 数据库的启动 启动状态 状态描述 NOMOUNT MOUNT OPEN 仅仅启动例程 用来创建数据库 例程启动并同时打开控制文件 用来改变文件结构和控制文件的标志 使数据库对所有用户可用 数据库的启动 STARTUP MOUNT NOMOUNT mount options PFILE filename RESTRICT FORCE OPEN RECOVER database PARALLEL EXCLUSIVE SHARED RETRY 启动语法 数据库的启动 约束条件 Open 允许用户进入数据库Mount 允许某些DBA操作 但是不允许用户进入数据库Nomount 创建SGA区并启动后台进程 但不允许进入数据库Exclusive 只允许当前的用户例程进入数据库 数据库的启动 约束条件 Parallel 允许多个例程访问数据库 OracleParallelServer SharedRetry 提供一种并行的选项 指明一个并行例程应该在5秒钟后启动Pfile parfile 允许标识一个非缺省的初始化文件 约束条件 Force 在启动实例前 强行关闭当前实例 Restrict 数据库启动后 只有DBA特权的用户才能访问数据库 Recover 在启动实例时 用日志文件做数据库恢复 数据库的启动 关闭步骤 启动ServerManager连接INTERNAL用户关闭数据库 数据库的关闭 SHUTDOWN IMMEDIATE ABORT NORMAL 关闭语法 数据库的关闭 数据库的关闭 约束条件 Normal处理完用户提交的所有事务 等待用户退出连接后 关闭数据库 卸载数据库 关闭实例 在下次启动实例时 不做实例恢复操作 此方式是数据库关闭的缺省方式 约束条件 Immediate结束正在处理的SQL语句 回滚未提交事务 不等待当前的用户退出数据库 关闭数据库 卸载数据库 关闭实例 在下次启动实例时 不做实例恢复操作 数据库的关闭 约束条件 Abort最快的一种关闭数据库方式 不等待当前用户退出联结 而且不回滚当前未提交操作 下次数据库启动时进行例程恢复 数据库的关闭 数据库的关闭 例 用行命令关闭数据库 svrmgrlSVRMGR connectinternalSVRMGR shutdownabort 练习 1 用MOUNT的方式启动数据库 2 打开数据库 通过dba users查询当前的所有数据库用户 第六章 数据库存储空间管理 表空间 SYSTEM表空间进行数据库操作所必须要求的表空间包含数据字典的信息 存储过程和数据库触发子的定义包括系统回滚段可以存储用户数据 但最好不要非SYSTEM表空间可以包括回滚段 临时段 应用数据 应用索引和用户空间提供了一种更加灵活的数据库管理基础 创建表空间 参数说明 Name 表空间名DataFiles 数据文件名及大小Storage 设置表空间的存储参数BringOnlineAfterCreation 表空间在线LeaveOffineAfterCreation 表空间离线 创建表空间的例子 CREATETABLESPACEuser stuDATAFILE diska user stu1 dat SIZE20MDEFAULTSTORAGE INITIAL10KNEXT50KMINEXTENTS1MAXEXTENTS99PCTINCREASE10 ONLINE 使表空间在线 修改表空间的例子 ALTERTABLESPACEaccountingONLINE 使表空间离线 参数说明 Normal ORACLE检测该离线表空间所对应的数据文件是否有问题 如果没有问题可离线 Temporary ORACLE检测该离线表空间所对应的数据文件是否有问题 如果有问题可离线 Immediate 不检测该离线表空间所对应的数据文件 直接离线 删除表空间 参数说明 Includingcontainedobjects删除表空间的同时 将该表空间包含的对象一并从数据库中删除 Cascadedropofintegrityconstraints在删除表空间包含的对象的同时 将每个模式对象所对应的约束一并从数据库中删除 数据库存储空间的管理表空间 行命令删除表空间 DROPTABLESPACE表空间名INCLUDINGCONTENTSCASCADECONSTRAINTS 删除表空间的例子 DROPTABLESPACEuser stuINCLUDINGCONTENTSCASCADECONSTRAINTS 修改缺省的段存储参数 InitialExtentSize 在表空间中创建的对象的第一个区间的缺省大小NextExtentSize 在表空间中创建的对象的第二个区间的缺省大小Mininum ofExtents 指定区间缺省的最小值Maxnum ofExtents 在表空间中创建的对象的缺省最大值 IncreaseNext 连续区间分配的缺省增加百分比 例 某表NextExtentSize的大小是1000字节 pctincrease的值为10 那么第二个区间将是1000字节 第三个区间将是1100字节 第四个区间将是1210字节 参数说明 练习 1 以system manager登录创建一个表空间TAB 存放在 c temp tab01 dbf 大小为10M 并查看dba tablespaces 2 在TAB的表空间下创建一个基表TEST 然后删除该TAB表空间 第七章 安全管理 一 用户管理 创建用户 参数说明 Name 用户名PasswordAuthentication 用户密码OSAuthentication 操作系统识别方式 设参数OS AUTHENT PREFIX的值为 OPS DefaultTablespace 用户对象保存的表空间TemporaryTablespace 临时用户对象保存的表空间Quotas 用户使用的表空间限量Profile 用户使用的系统资源限量 行命令建立用户语法 CREATEUSER用户名INDENTIFIEDBY口令EXTERNALLYDEFAULTTABLESPACE表空间名TEMPORARYTABLESPACE表空间名QUOTA整数K MON表空间名UNLIMITEDPROFILE环境文件名 例1 建立用户sidneyCREATEUSERsidneyINDENTIFIEDBYcartonDEFAULTTABLESPACEcases tsTEMPORARYTABLESPACEtemp tsQUOTA5MONcases tsQUOTA5MONtemp tsPROFILEengineer 例2 建立按操作系统帐号george可存取的用户 CREATEUSEROPS georageINDENTIFIEDEXTERNALLYDEFAULTTABLESPACEaccs tsTEMPORARYTABLESPACEtemp tsQUOTAUNLIMITEDONaccs tsQUOTAUNLIMITEDONtemp ts 修改用户 参数说明 NochangeinAuthentication 无识别方式PasswordAuthentication 用户密码OSAuthentication 操作系统识别方式DefaultTablespace 用户对象保存的表空间TemporaryTablespace 临时用户对象保存的表空间Quotas 用户使用的表空间限量Profile 用户使用的系统资源限量DefaultRole 分配给用户的角色 行命令修改用户 ALTERUSER用户名INDENTIFIEDBY口令EXTERNALLYDEFAULTTABLESPACE表空间名TEMPORARYTABLESPACE表空间名QUOTA整数K MON表空间名UNLIMITEDPROFILE环境文件名DEFAULTROLE角色名ALLEXCEPT角色名NONE 例1 ALTERUSERscottINDENTIFIEDBYlionDEFAULTTABLESPACEtstest 例2 ALTERUSERscottPROFILEclerk 行命令修改用户的例子 删除用户 行命令删除用户 DROPUSER用户名CASCADE例如 DROPUSERbradleyCASCADE 二 资源管理 创建环境文件 参数说明 Sessions User 限制一个用户的并发会话个数 CPUTime Session 限制一次会话的CPU时间 单位 百分之一秒 CPUTime Call 限制一次调用 一次语法分析 执行或获得 的CPU时间 单位 百分之一秒 ConnectTime 限制一会话总的使用时间 单位 分 IdleTime 限制会话期间连接不活动周期 单位 分 长的运行查询和其它操作不受这个限制 参数说明 LogicalReads Session 限制在一次会话中读的数据块的数目 包括从内存或磁盘读的块数 LogicalReads Call 限制处理一个SQL语句 语法分析 执行和获取 一次调用所读的数据块的数目 PrivateSGA Session 限制一次会话在SGA的共享池可分配的专用空间的数目 单位 bytes Kbytes Mbytes CompositeLimit 一次会话总的资源开销 以服务单位表示该参数的值 ORACLE以下列资源的带权的和计算总的资源开销 CPUTime SessionConnectTimeLogicalReads SessionPrivateSGA Session 行命令建立环境文件 CREATEPROFILE环境文件名LIMITSESSION PER USER整数CPU PER SESSIONUNLIMITEDCPU PER CALLDEFAULTCONNECT TIMEIDLE TIMELOGICAL READS PER SESSIONLOGICAL READS PER CALLCOMPOSITE LIMITPRIVATE SGA整数 K MUNLIMITEDDEFAULT 例如 建立环境文件SYSTEM MANAGERCREATEPROFILEsystem managerLIMITSESSIONS PER USERUNLIMITEDCPU PER SESSIONUNLIMITEDCONNECT TIME45LOGICAL READS PER SESSIONDEFAULTLOGICAL READS PER CALL1000PROVATE SGA15KCOMPOSITE LIMIT5000000 行命令修改环境文件语法 ALTERPROFILE环境文件名LIMITSESSION PER USER整数CPU PER SESSIONUNLIMITEDCPU PER CALLDEFAULTCONNECT TIMEIDLE TIMELOGICAL READS PER SESSIONLOGICAL READS PER CALLCOMPOSITE LIMITPRIVATE SGA整数 K MUNLIMITEDDEFAULT 例 在ENGINEER环境文件中定义5个并行会话的限制 ALTERPROFILEengineerLIMITSESSION PER USER5 行命令删除环境文件 DROPPROFILE环境文件名CASCADE 删除Profile文件 更改资源开销 行命令更改资源开销 ALTERRESOUCECOSTCPU PER SESSION整数CONNECT TIME整数LOGICAL READS PER SESSION整数PRIVATE SGA整数例如 指定资源的权 ALTERRESOUCECOSTCPU PER SESSION100CONNECT TIME1 三 特权管理 系统特权 完成特殊活动或在一个特殊类型的对象上完成特殊活动的一个特权 对象特权 在一个指定的对象 表 视图 序列 过程 函数或包 上完成一个特殊活动的特权 授系统特权或角色给用户 例1 将CREATESESSION系统特权授予RICHARD GRANTcreatesessionTOrichard 例2 将CREATETABLE系统特权授予RICHARD并带有允许授权选项 GRANTcreatetableTOrichardWITHADMINIOPTION 回收系统特权或角色 例 从用户Bill和Mary回收DROPANYTABLE系统特权 REVOKEdropanytableFROMbill mary 回收系统特权的连锁反映分析 对象特权的授权 例1 GRANTselectONdeptTOstu10 stu11 例2 GRANTselect insert empno ename update ename ONempTOscottWITHGRANTOPTION 对象特权的回收 例1 REVOKEselectONdeptFROMstu10 stu11 例2 REVOKEallONempFROMscott 四 角色管理 角色是由一个命名的关联特权组组成 用来维护和控制特权 角色的特点 减少授权次数动态的特权管理选择可用特权 无角色管理的授权示意图 使用角色管理的授权示意图 ORACLE数据库预定义的角色 CONNECT 创建会话 聚簇 数据库链 序列 同义词 表 触发器RESOURCE 创建聚簇 存储过程 序列 表 触发器DBA 所有权限EXP FULL DATABASE 选择 备份任何表和在SYS INCVID SYS INCFILandSYS INCEXP表上进行插入 修改 删除的权限 创建角色 例1 CTEATEROLEacct 例2 CTEATEROLEacctIDENTIFIEDBYbicent 修改角色 例 ALTERROLEacctNOTIDENTIFIED 删除角色 行命令删除角色 DROPROLE角色名例 DROPROLEacct 注 授予角色特权和回收角色特权的操作与给用户授权和回收操作相同 练习 1 进入SERVERMANAGER或者SQL PLUS 用SYSTEM MANAGER连接 创建一个用户bert 临时表空间为TEMP 不设定缺省表空间并给该用户无限的在SYSTEM表空间上的使用权 2 检查视图dba users查看bert用户相关的表空间信息 通过dba ts quotas查看用户的引用情况 3 用bert用户连接 看有何现象产生 4 给bert用户授权 使其可以连接并可以对数据库进行操作 第八章 数据库的备份和恢复 一 数据库的备份 备份方法 操作系统备份 物理备份 无归档备份归档备份Export程序备份 逻辑备份 归档需求 数据库必须在ARCHIVELOG模式下操作启动自动归档进程ARCHIVER有足够的资源保存归档日志文件 指定归档模式 建立数据库时建立控制文件时 修改归档模式的方法 SQLDBA CONNECTinternal SQLDBA STARTUPMOUNT SQLDBA ALTERDATABASEARCHIVELOG SQLDBA ALTERDATABASEOPEN 修改归档进程状态 修改参数LOG ARCHIVE START的值为true falseALTERSYSTEMARCHIVELOGSTARTTOdirectoryordevicename STOP 做好数据库的备份工作 可以在数据库出现故障时 能尽可能快的修复数据库 因此做好数据库的备份工作是十分重要的 定期执行整个操作系统的备份 频繁修改的表空间要经常备份 在修改数据库结构之前和之后 要备份所影响的数据文件 日志文件和控制文件 操作系统备份离线数据库全备份 数据库无归档操作在线数据库全备份 数据库归档操作在线表空间备份 数据库归档操作离线表空间备份 数据库无归档操作控制文件备份 离线数据库全备份 需要备份的文件 数据文件 日志文件 控制文件和参数文件步骤 记录数据库所有文件的路径及文件名用NORMAL关闭数据库用操作系统命令拷贝数据库所有文件重新启动ORACLE实例 显示数据文件路径及文件名 SQL SELECTfile nameFROMdba data files 显示日志文件路径及文件名 SQL SELECTmemberFROMv logfile 显示控制文件路径及文件名 SQL SELECTvalueFROMv parameterWHEREname control files 操作系统备份数据库的例子 SQLDBA CONNECTinternal 用SELECTfile nameFROMdba data files找出数据文件的位置 用SELECTmemberFROMv logfile找出日志文件的位置 用SELECTvalueFROMv parameterWHEREname control files 找出控制文件的位置 用查找命令找出initSID ora参数文件的位置 SID为实例名 SQLDBA SHUTDOWNnormal 用操作系统命令备份找出的数据文件 日志文件 控制文件 初始化文件 如 SQLDBA hostcp SQLDBA STARTUPopen 在线数据库全备份的方法 确保数据库在ARCHIVELOG模式下操作 用在线表空间备份方法备份数据库所有表空间 用控制文件备份方法备份数据库的控制文件 用操作系统命令备份日志文件 在线表空间的备份的方法 确保数据库在ARCHIVELOG模式下操作 使要备份的表空间在线 开始在线表空间的备份用操作系统命令拷贝表空间所对应的数据文件 结束在线表空间的备份 在线表空间备份的例子 SQLDBA ALTERTABLESPACEusersBEGINBACKUP SQLDBA hostcp SQLDBA ALTERTABLESPACEusersENDBACKUP 控制文件的备份的例子 SQLDBA ALTERDATABASEBACKUPCONTROLFILETO backupdirectory 在线数据库全备份的例子 确保数据库在ARCHIVELOG模式下操作 SQLDBA CONNECTinternal SQLDBA STARTUPMOUNT SQLDBA ALTERDATABASEARCHIVELOG SQLDBA ALTERDATABASEOPEN 用在线表空间备份方法备份数据库所有表空间 SQLDBA ALTERTABLESPACEusersBEGINBACKUP SQLDBA hostcp SQLDBA ALTERTABLESPACEusersENDBACKUP 用控制文件备份方法备份数据库的控制文件 SQLDBA ALTERDATABASEBACKUPCONTROLFILETO backupdirectory 用操作系统命令备份日志文件 其位置在v logfile视图中 SQLDBA hostcp 在下列操作前后要做数据库全备份 增加在线日志文件组增加在线日志文件成员重命名在线日志文件成员删除在线日志文件组删除在线日志文件成员建立表空间增加数据文件重命名数据文件删除表空间 Export应用程序将数据库表保存到操作系统文件 这个文件只能由Import应用程序读入数据库 EXPORT备份 命令执行方式如下 行命令EXP userid username password 文件名 卸出模式 卸出类型 卸出授权 卸出数据 是否压缩 参数文件EXP userid username password PARFILE filename交互EXP具有EXP FULL DATABASE角色的用户可操作此项 参数说明 userid 用户名 密码 格式 userid username password文件名 存放卸出数据的文件名 一般带路径否则放在缺省目录下 卸出模式Table 卸出用户的指定表 User 卸出用户模式中的所有对象 Full 卸出数据库中的所有对象 格式 Table table name User user name Full Y 卸出类型 Complete 卸出数据库的所有对象 Imcremental 卸出上次某类卸出后修改的对象 Cumulative 卸出上次累加或完全卸出后修改的对象 格式 inctype complete cumulative incremental 卸出授权 是否卸出授权 格式 grants Y N 卸出数据 是否卸出表中数据 格式 rows Y N 是否压缩 卸出时是否压缩数据 格式 compress Y N PARFILE 参数文件 文件内容同行命令下的各种参数类似例 参数文件的内容可以如下USERID system managerFILE export filenameCOMPRESS YGRANTS YROWS YFULL YINCTYPE COMPLETE EXPORT备份的例子 卸出数据库中test用户中的全部数据 要求 卸出授权 完全卸出 expuserid system managerfile export filenameuser testinctype completegrants yrows y 二 数据库恢复 数据库可能出现的错误 用户错误语句失败用户进程失败实例失败介质失败 用户错误一般原因 用户意外删除了一个对象用户删除表中的所有行用户提交有错误的数据解决方法 培训数据库用户用表的Export恢复用日志文件进行时间片恢复 语句失败一般原因 应用中有逻辑错误用户往表中输入错误数据用户使用不适当特权操作用户建立超过分配量的表表空间中剩余空间不够 解决方法 调整应用修改错误数

温馨提示

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

评论

0/150

提交评论