?OCPOCMOracle培训考证系列?

丰富的线上&线下活动,深入探索云世界

做任务,得社区积分和周边

最真实的开发者用云体验

让每位学生受益于普惠算力

让创作激发创新

资深技术专家手把手带教

遇见技术追梦人

技术交流,直击现场

海量开发者使用工具、手册,免费下载

极速、全面、稳定、安全的开源镜像

开发手册、白皮书、案例集等实战精华

为开发者定制的Chrome浏览器插件

【OCM】想考11g和12cOCM的小伙伴可以和我(lhrbestxh)私聊,非诚勿扰。11gOCM可以保证最低学费、最快训练速度和100%的通过率,非诚勿扰。

若要考12COCM请私聊。

注:

0.5

Linux的安装(RHEL5.5)

1.5

Oracle软件单机安装

1

OracleASM的安装

2

Oracle监听和TNS的简单配置

0.1

删除数据库的几种方式

0.2

创建数据库

管理工具介绍

Oracle软件的卸载

其它内容

SQL*Plus

基本SELECT语句

WHERE条件和排序

连接类型

查询分类

合并查询(集合查询)

函数

dual表

操作数据

存储过程、函数、包的开发

约束

视图

0.3

其它数据库对象

创建和管理表

体系结构部分扩展

OracleRestart

OracleDB系统

用户及其密码文件

权限

角色

课程模块

培训要点

学时

0:NONE

1:NULL

2:SS(Row-S)

3:SX(Row-X)

4:S(Share)

5:SSX(S/Row-X)

6:X(Exclusive)

会话

Undo

Undo和Redo

分区

SCN

备份

恢复

闪回

RMAN高级应用之Duplicate复制数据库

bbed简介

rman之块介质恢复

非归档模式备份恢复

OPENRESETLOGS

4条RECOVERDATABASE命令的区别是什么?

日志挖掘logminer

利用增量数据库备份进行恢复

跨版本恢复

OS备份(物理备份)和恢复

数据泵(expdp和impdp)

SQL*Loader

外部表

第1章安装Oracle软件-6-

1.1OracleDB管理员的任务-6-

1.2用于管理OracleDB的工具-7-

1.3制定安装计划-8-

1.4OracleGridInfrastructure和OracleDB安装:系统要求-9-

1.5准备操作系统-10-

1.5.1设置环境变量-11-

1.5.2检查系统要求-12-

1.5.3OUI-13-

1.5.4GI安装-15-

1.5.4.1InstallationOption(安装选项)-15-

1.5.4.2选择产品语言-16-

1.5.4.3创建ASM磁盘组-17-

1.5.4.4定义ASM口令-17-

1.5.4.6指定安装位置-20-

1.5.4.7创建清单-21-

1.5.4.8执行先决条件检查-22-

1.5.4.9验证安装概要数据-23-

1.5.4.10监视安装进度-24-

1.5.4.11执行root配置脚本-25-

1.5.4.12执行ConfigurationAssistant-25-

1.5.4.13完成安装-27-

1.5.4.14配置FRA磁盘组-27-

1.5.5安装OracleDB软件-30-

1.5.5.1选择安装类型-30-

1.5.5.2选择网格安装选项-31-

1.5.5.3选择语言设置-32-

1.5.5.4选择数据库版本-33-

1.5.5.5指定安装位置-34-

1.5.5.6选择操作系统组-35-

1.5.5.7执行先决条件检查-36-

1.5.5.8安装概要页-37-

1.5.5.9安装产品页-38-

1.5.5.10安装完成-39-

1.5.5.11安装选项:无提示模式-41-

1.5.5.12小测验-41-

1.5.5.13小结-42-

1.5.6使用DBCA创建OracleDB-42-

1.5.6.1计划数据库-42-

1.5.6.2选择适当的字符集-44-

1.5.6.3DatabaseConfigurationAssistant(DBCA)-48-

1.5.6.4DatabaseTemplates(数据库模板)-49-

1.5.6.5DatabaseIdentification(数据库标识)-49-

1.5.6.6ManagementOptions(管理选项)-50-

1.5.6.7DatabaseCredentials(数据库身份证明)-50-

1.5.6.8DatabaseFileLocations(数据库文件位置)-51-

1.5.6.9RecoveryConfiguration(恢复配置)-52-

1.5.6.10DatabaseContent(数据库内容)-52-

1.5.6.11InitializationParameters(初始化参数)-53-

1.5.6.12DatabaseStorage(数据库存储)-54-

1.5.6.13CreateOptions(创建选项)-54-

1.5.7创建数据库设计模板-57-

1.5.8使用DBCA删除数据库-58-

1.5.9小测验-60-

1.5.10小结-60-

第2章RHEL5.5的OS版本-60-

2.1安装VMwareWorkstation12Pro-60-

2.1.1校验MD5值-61-

2.2安装RHEL5.5的OS版本-63-

2.2.1简易安装-63-

2.2.2一般安装过程-68-

2.2.2.1开始安装-83-

2.2.2.2建立自定义的分区结构-87-

2.2.2.3继续-92-

2.3其它软件安装-99-

2.3.1安装VMwareTools-99-

2.3.1.1安装完成后设置共享文件-104-

2.3.1.2设置桌面背景和桌面的大小-105-

2.3.2设置主机IP地址-106-

2.3.3中文环境切换成英文环境-107-

2.3.4配置本地yum源(rhel5.5)-107-

2.3.5安装rlwrap-108-

2.4对/dev/sdb进行分区-109-

2.4.1逻辑卷管理的命令-116-

第3章安装11.2.0.364位单机数据库软件-117-

3.1安装前的准备工作-117-

3.1.1软件准备-117-

3.1.2检查硬件-117-

3.1.3修改hosts文件、修改主机名-118-

3.1.4安装软件包检查-118-

3.1.5内核参数--shell限制-120-

3.1.5.1/etc/security/limits.conf-120-

3.1.5.2/etc/pam.d/login-121-

3.1.5.3/etc/profile-121-

3.1.5.4/etc/sysctl.conf-121-

3.1.6关闭防火墙-122-

3.1.7关闭耗费资源的服务-123-

3.1.8禁用selinux-123-

3.2新建用户和组-124-

3.2.1配置用户的环境变量-124-

3.3新建安装目录-125-

3.4将oracle使用者加入到sudo群组中-125-

3.5准备oracle安装文件-125-

3.5.1拷贝安装文件-125-

3.5.1.1计算MD5值-128-

3.5.2解压安装文件-129-

3.6开始安装-130-

3.6.1安装前的检查-141-

3.6.2执行root.sh脚本-144-

3.7扩展(静默安装软件)-145-

第4章创建数据库-148-

4.1DBCA图形创建-148-

4.1.1启动监听-159-

4.2DBCA静默方式建库(必会)-161-

4.2.1.1什么是静默建库?-161-

4.3CREATEDATABASE手动建库(OCM)-163-

4.4删除数据库的几种方式-164-

4.5在多个不同版本的数据库情况下,如何确定实例的ORACLE_HOME地址?-164-

第5章配置监听和TNS-165-

5.1静默创建监听-167-

第6章其它-167-

6.1让OracleDB、监听和oem开机启动(dbstart)-167-

6.1.1方法1:配置Linux的service服务-168-

6.1.2方法2:配置/etc/rc.d/rc.local文件-170-

6.1.3总结-172-

6.2PLSQLDeveloper软件使用和Windows下绿色版Oracle客户端的安装和使用-172-

6.2.1Linux下绿色版Oracle客户端的安装-172-

6.3配置glogin.sql-173-

6.4如何判断Oracle是32位还是64位?-173-

第7章数据库软件的卸载-176-

第8章安装grid软件-177-

8.1OS修改-177-

8.1.1编辑/etc/security/limits.conf文件,在文件尾部添加如下内容:-177-

8.1.2添加grid用户-177-

8.1.3配置grid用户的环境变量-178-

8.1.4扩展磁盘空间-179-

8.2ASM磁盘准备(创建asm磁盘)-179-

8.2.1创建ASM磁盘的方法1--Faking方式-179-

8.2.2创建ASM磁盘的方法2--直接修改/etc/sysconfig/rawdevices配置raw(rhel6之后不支持)-182-

8.2.3创建ASM磁盘的方法3--Udev方式-184-

一、uuid方式-184-

2、配置udev绑定的scsi_id-187-

3、创建并配置udevrules文件-188-

4、udevadm进行测试-189-

5、添加完成后,重启udev,不同Linux发行版本重启方式不一样。-189-

6、查看绑定的asm,如果此时还是看不到asmdisk,请重启操作系统后再查看。-189-

二、raw方式-190-

8.2.4创建ASM磁盘的方法4--ASMLIB方式-191-

一、系统版本号-191-

二、Oracleasmlib下载-191-

三、上传并安装上述的三个rpm软件包-193-

四、配置ASM-193-

五、系统添加磁盘-194-

六、grid软件安装完毕后配置asm_diskstring路径-195-

七、测试-197-

8.3安装grid软件-198-

8.3.1解压软件-198-

8.3.2开始安装grid软件(图形界面)-199-

8.3.2.1创建ASM磁盘组-203-

8.3.2.2执行root脚本-209-

8.3.2.3继续安装-210-

8.3.2.4测试ASM实例-211-

8.3.3静默安装grid软件(可选)-212-

8.3.3.1安装grid软件-212-

8.3.3.2静默创建ASM实例-215-

8.3.3.3静默创建grid用户的监听-216-

8.4创建DATA和FRA的ASM磁盘组-218-

8.5创建asm管理的数据库-221-

8.6创建EM-223-

8.7其它扩展-225-

8.7.1在AIX或Linux下,如何查看磁盘是否包含数据?-225-

8.7.2如何让crs_stat命令显示完整-227-

8.7.3kfod命令-227-

8.7.3.1在采用asmlib时,确认物理磁盘的方法-228-

目录-1-

序言-12-

第1章SQL简介-12-

1.1SQL的起源和分类-13-

1.1.1SQL的起源-13-

1.1.2SQL的分类-13-

1.2提交(COMMIT)类型-15-

1.3如何查询在线和离线的官方文档-19-

第2章SQL*Plus工具-20-

2.1SQL与SQL*Plus-20-

2.2SQL语句与SQL*Plus-20-

2.2.1关系对比-20-

2.2.2关系图-21-

2.3.1EZCONNECT方式-22-

2.3.2使用SQL*Plus-24-

2.4SQL*Plus和SQLDeveloper-24-

2.4.1从Shell脚本调用SQL*Plus-25-

2.4.1.1shell调用-25-

一、最简单的shell里调用sqlplus-25-

二、把sqlplus执行结果传递给shell方法一-26-

三、把sqlplus执行结果传递给shell方法二-26-

四、把shell程序参数传递给sqlplus-27-

五、为了安全要求每次执行shell都手工输入密码-27-

六、为了安全从文件读取密码-28-

2.4.1.2bat调用-28-

2.4.2从SQL*Plus调用SQL脚本-29-

2.4.3sqlplus中将行转为列输出-31-

2.5SQL*Plus的设置-34-

2.5.1显示表结构-35-

2.5.2SETTIMINGON;和SETTIMEON-35-

2.5.3SQL*Plus编辑命令-35-

2.5.4使用LIST,n,和APPEND-36-

2.5.5SQL*Plus文件命令-36-

2.5.5.1导出csv、和html文件-37-

一、导出csv文件格式-37-

二、导出html文件格式-38-

2.5.6如何使用上下左右方向键-40-

2.5.7设置执行脚本时的搜寻路径-41-

2.5.8SQL*Plus中@和@@的区别是什么?-41-

2.5.9SQL*Plus中&与&&的区别是什么?-41-

2.5.10glogin.sql脚本的作用是什么?如何修改命令的提示符?-42-

2.5.11SQL*Plus的ERRORLOGGING的作用是什么?-42-

2.5.12如何给SQL*Plus安装帮助-43-

2.6iSQL*Plus简介-44-

2.6.1iSQL*Plus概览-46-

2.6.2SQL和iSQL*Plus交互作用-46-

第3章基本SELECT语句-46-

3.1SELECT语句的功能-47-

3.2选择所有列-48-

3.3选择指定的列-48-

3.4SQL语句的编辑-49-

3.5列标题默认属性-49-

3.6算术表达式-51-

3.7定义空值-52-

3.7.1NULL的注意事项-54-

3.7.2ISNULL走索引-55-

3.7.3多表查询中的空值问题-56-

3.7.3.1情形一:-57-

3.7.3.2情形二:-58-

3.8定义列别名-59-

3.9连字运算符-61-

3.9.1文字字符串-62-

3.10相同的行--去重(distinct)-62-

3.11Quote(q)--11g新增-64-

3.12Oracle特殊字符的处理-67-

3.13本章学习目的-68-

第4章条件和排序-69-

4.1用选择限定行-69-

4.1.1限定语法-70-

4.1.2使用WHERE子句-71-

4.1.3条件中使用字符串和日期-71-

4.1.4比较条件-72-

4.1.4.1使用比较条件-72-

4.1.4.2使用BETWEEN条件-73-

4.1.4.3使用IN条件-73-

4.1.4.4使用LIKE条件-75-

一、LIKE模糊查询如何使用索引-77-

4.1.4.5使用NULL/NOTNULL条件-79-

4.1.5逻辑条件(AND、OR、NOT)-81-

4.1.5.1注意问题-83-

4.1.6优先规则-84-

4.2排序-85-

4.2.1降序排序-86-

4.2.2用列别名排序-87-

4.2.3多列排序-88-

4.3总结-89-

第5章OracleSQL单行函数-89-

5.1学习目的-89-

5.2SQL函数介绍-89-

5.3SQL函数分类-90-

5.3.1单行函数-90-

5.4DUAL表介绍-91-

5.4.1扩展-92-

5.5字符函数-93-

5.5.1大小写处理函数-93-

5.5.2字符处理函数-94-

5.6数字函数-96-

5.7日期函数-97-

5.7.1系统日期-97-

5.7.2用日期计算-98-

5.7.3日期函数-99-

5.7.4转换函数-100-

5.7.5隐式数据类型转换-101-

5.7.5.1扩展-101-

5.7.6显式数据类型转换-103-

5.7.6.1日期格式模板-103-

5.7.6.3数字格式模板-104-

5.8嵌套函数-104-

5.9通用函数-104-

5.10条件表达式-106-

5.10.1CASE表达式-106-

5.10.2DECODE函数-107-

5.11总结-108-

5.12扩展-109-

5.12.1如何将一个数字转换为字符串并且按照指定格式显示?-109-

5.12.2ORA-00904:"wm_concat":invalididentifier错误解决-110-

5.12.3如何判断一个字符串是否含有中文汉字?-115-

5.12.4在Oracle中,如何判断一个字符串是否为数字?-117-

5.12.5在Oracle中,如何让日期显示为"年-月-日时:分:秒"的格式?-118-

5.12.6如何判断当天是否月份最后一天?-119-

第6章用组函数合计数据-120-

6.1学习目的-120-

6.2组函数的概念-121-

6.3组函数使用-121-

6.3.1使用AVG、SUM、MAX、MIN-122-

6.3.1.1MAX和MIN优化写法-122-

6.4使用COUNT-124-

6.4.1使用COUNT(DISTINCT列)-125-

6.4.2COUNT(1)、COUNT(*)、COUNT(常量)、COUNT(主键)、COUNT(ROWID)、COUNT(非空列)、COUNT(允许为空列)、COUNT(DISTINCT列名)-125-

6.5组函数与空值-126-

6.6GROUPBY子句-127-

6.7HAVING子句-128-

6.8嵌套组函数-128-

6.9总结-129-

第7章从多表中查询数据-129-

7.1从多表中查询数据-129-

7.2有效连接条件与笛卡儿积-130-

7.2.1笛卡尔积是什么?-130-

第8章连接的类型-131-

8.1等值连接-132-

8.1.1等值连接中的列别名、表别名-134-

8.1.2多于两个表的等值连接-135-

8.2外连接-136-

8.2.1外连接(扩展)-140-

8.3自连接-143-

8.3.1自连接(SelfJoin)-144-

8.4SQL1999连接语法介绍-145-

8.4.1交叉连接-145-

8.4.2自然连接-145-

8.4.3ON子句-146-

8.5关于SQLJoin中where和and的区别-147-

8.6层次查询分层查询树形查询-150-

8.6.1层次查询语法结构-151-

8.6.2分析-153-

8.6.3SYS_CONNECT_BY_PATH用于行列转换-166-

8.6.4层次查询进阶-167-

8.6.5综合案例-170-

8.6.6快速构造大表-173-

8.7WITH语法-174-

8.8总结-175-

第9章子查询-175-

9.1学习目的-176-

9.2子查询介绍-176-

9.3子查询分类-178-

9.3.1单行子查询-178-

单行子查询:子查询只返回一行-178-

针对单行子查询的条件和普通条件一样-178-

单行子查询中使用HAVING-178-

可以把单行子查询想像作一个可变的值。它和一个单一值没什么区别-178-

9.3.2单行子查询错误-181-

9.3.3多行子查询-182-

9.3.4总结-184-

9.3.5子查询扩展-184-

9.3.5.1标量子查询和关联子查询-185-

9.3.5.2子查询中的IN和EXISTS-186-

9.3.5.3多行子查询-187-

9.4一个案例-188-

第10章合并查询(集合查询)-190-

10.1UNION-190-

10.2UNIONALL-191-

10.3INTERSECT(相交)-191-

10.4MINUS(相减)-192-

第11章数据字典-192-

11.1动态性能视图-193-

11.1.1动态性能视图:注意事项-195-

11.2数据字典-196-

11.2.1数据字典视图-197-

11.3扩展-199-

第12章创建和管理表-201-

12.1数据库对象及表介绍-201-

12.2有关表的最大列数-202-

12.3表的分类-203-

12.3.1Oracle的表可以分为哪几类?-203-

12.4表和列的命名规则-204-

12.5CREATETABLE语句创建表-205-

12.5.1用子查询语法创建表(CTAS)-206-

12.5.1.1CTAS及其优化-207-

12.6DEFAULT选项-207-

12.7引用表-208-

12.8数据类型介绍-209-

12.8.1.1TIMESTAMP类型-210-

12.8.1.2INTERVALYEARTOMONTH数据类型-212-

12.8.1.3INTERVALDAYTOSECOND数据类型-213-

12.9ALTERTABLE语句-214-

12.9.1添加列-214-

12.9.2修改列-215-

12.9.2.1修改字段的类型、大小和默认值(不能有数据)-215-

12.9.3删除列(删除一个字段或清空某一列的数据)-215-

12.9.3.1SETUNUSED选项-216-

12.9.4修改表的存储特征-217-

12.9.5修改表的名字-217-

12.9.6修改字段的名字-217-

12.9.7移动表所在的表空间-218-

12.10删除表-218-

12.11改变对象名称-218-

12.12截断表(TRUNCATE)-219-

12.13给表和列添加注释-219-

12.13.1利用SQL生成需要的SQL语句-220-

12.14总结-222-

第13章操作数据-222-

13.1学习目的-222-

13.2数据操纵语言-223-

13.3INSERT插入数据的语法-223-

13.3.1INSERT插入值的变化-225-

13.3.1.1插入特殊值-225-

13.3.1.2插入指定日期-226-

13.3.1.3插入可输入变量-226-

13.3.1.4从另外一个表复制-226-

13.3.1.5在INSERT语句中使用子查询-227-

13.4UPDATE更新数据的语法-227-

13.4.1UPDATE更新的例子和问题-228-

13.4.2用子查询更新两列-228-

13.4.3更新基于另一个表的行(多表关联更新--使用子查询更新数据)-229-

13.4.3.1例子-230-

13.4.4更新导致完整性约束报错-232-

13.5DELETE删除数据的语法-233-

13.5.1TRUNCATE语句-234-

13.5.2DELETE更新的例子和问题-235-

13.5.3从表中删除行-235-

13.5.4删除基于另一个表的行-235-

13.5.4.1一道OCM题-236-

13.5.5删除数据导致的完整性约束-237-

13.5.6查找和删除重复的记录-237-

13.6显示默认值-238-

13.7MERGE合并语句语法-238-

13.7.1MERGE语句在优化中的巨大作用-242-

13.7.2DML语句优化的方法-243-

13.8DELETE、DROP和TRUNCATE的区别是什么?-244-

13.9本章总结-245-

第14章约束-245-

14.1约束的概念和原则-245-

14.1.1约束的概念-246-

14.1.2约束的原则-246-

14.2定义约束-246-

14.2.1定义约束的语法-246-

14.2.2定义约束分类-247-

14.3几种常见的约束-248-

14.3.1NOTNULL约束-249-

14.3.2UNIQUE约束-249-

14.3.3PRIMARYKEY约束-251-

14.3.4FOREIGNKEY约束-251-

14.3.4.1外键列的索引-255-

14.3.4.2外键的死锁(外键未加索引)-258-

一、脚本-263-

二、找出没有建立索引的外键-265-

14.3.5CHECK约束-266-

14.4管理约束-268-

14.4.1添加约束-268-

14.4.2删除约束-270-

14.4.3禁用、启用约束-271-

14.4.4级联约束-271-

14.4.5查看约束-272-

14.5ocp-273-

14.6总结-274-

第15章视图-274-

15.1视图的概念和优势-274-

15.2视图的概念-275-

15.2.1使用视图的优势-275-

15.3创建简单视图-276-

15.3.1视图中查询数据-277-

15.4创建复杂视图-277-

15.5视图中DML操作的执行规则-277-

15.5.1WithCheckOPTION子句-278-

15.5.2WithREADONLY子句-278-

15.6管理视图-278-

15.6.1修改视图-279-

15.6.2删除视图-279-

15.6.3内建视图-279-

15.7视图扩展-280-

15.7.1Oracle中的视图-280-

15.7.2在什么情况下可以对视图执行增、删、改操作?-281-

15.8Top-N分析-282-

15.8.1扩展-283-

15.9物化视图简介-285-

15.9.1扩展-286-

查询重写(QueryRewrite):-287-

15.10总结-290-

第16章其他数据库对象-290-

16.1其他数据库对象的作用-291-

16.2序列-291-

16.2.1序列的语法-292-

16.2.2定义及查询序列-292-

16.2.3NEXTVAL和CURRVAL伪列-293-

16.2.4使用序列-293-

16.2.5修改序列-294-

16.2.6删除序列-295-

16.2.7麦苗扩展-295-

16.2.7.1注意内容-295-

16.2.7.2性能问题-296-

16.2.7.3OCP和OCM题举例-296-

16.3索引-297-

16.3.1索引的优缺点-297-

16.3.2索引的使用原则-298-

16.3.3创建索引-299-

16.3.4查询索引-300-

16.3.5基于函数的索引-300-

16.3.6删除索引-301-

16.3.7麦苗扩展-301-

16.3.7.1如何预估即将创建索引的大小?-301-

16.3.7.2如何监控索引的使用状况?-302-

16.3.7.3哪些操作会导致索引失效?-305-

16.3.7.4什么是索引的选择性(IndexSelectivity)?-306-

16.3.7.5为什么索引没有被使用?-307-

16.3.7.6ISNULL如何用到索引?-310-

16.3.7.7LIKE模糊匹配如何选择索引?-310-

16.4同义词-311-

16.4.1概念语法-311-

16.4.2创建和删除同义词-311-

16.4.3扩展-312-

16.4.3.1PLAN_TABLE表的真谛-312-

16.5数据库链接(dblink)-313-

16.5.1dblink扩展-314-

16.5.2一道OCM考题-317-

===================================================-317-

存储过程、函数、包的开发-318-

第17章PL/SQL块-318-

17.1PL/SQL简介-318-

17.2程序形式-318-

17.3编写规范-318-

17.3.1注释-318-

17.3.2标志符号的命名规范-319-

17.4PL/SQL块(匿名块)结构-319-

17.4.2可执行部分-322-

第18章控制结构(分支,循环,控制)-323-

18.1简介-323-

18.2条件分支语句--if-323-

18.3循环-326-

18.3.1loop-326-

18.3.2while循环-328-

18.3.3for循环-330-

18.3.3.1游标for循环-332-

18.4顺序控制–goto,null-333-

18.4.1goto语句-333-

18.4.2null-335-

第19章异常处理-337-

19.1概述-337-

19.2异常处理-337-

19.2.1预定义异常(Predefined)-337-

19.2.2非预定义异常(NonPredefined)-343-

19.2.3自定义异常(User_define)-345-

19.3抛出异常-348-

19.3.1raise-348-

19.3.2RAISE_APPLICATION_ERROR-349-

19.4存过中捕获异常的行号-350-

19.5如何捕获错误并记录到表中?-354-

第20章存储过程(StoredProcedure)-359-

20.1存储过程和函数的区别是什么?-359-

20.2示例-359-

20.2.1执行和调用存储过程-360-

20.2.1.1执行存过-360-

20.2.1.2存过调用存过-362-

第21章Oracle中的触发器-362-

21.1一些常用的监控-369-

21.2Oracle的自治事务是什么?-374-

第22章Oracle中过程/函数返回集合-376-

22.1.1函数返回系统游标-376-

第23章Oracle分批提交DML-377-

23.1分批update-377-

23.2分批delete-378-

23.3分批insert-379-

第1章备份和恢复的概念-15-

1.1故障类别-17-

1.1.1语句失败-17-

1.1.2用户进程失败-18-

1.1.3网络故障-19-

1.1.4用户错误-19-

1.1.5介质故障-20-

1.2Oracle的SCN是什么?-20-

1.2.1SCN的组成-20-

1.2.2SCN的分类-21-

1.2.3如何查看系统当前SCN-22-

1.2.5SYS.SMON_SCN_TIME字典基表-24-

1.3实例恢复(实例故障)-25-

1.3.1实例故障-25-

1.3.2了解实例恢复:检查点(CKPT)进程-26-

1.3.3实例恢复的阶段-28-

1.3.4优化实例恢复-30-

1.3.4.1使用MTTR指导-31-

1.3.5麦苗扩展-32-

1.3.5.1实例恢复(前滚和回滚)-32-

1.4配置可恢复性-35-

1.5配置快速恢复区-36-

1.6测验-37-

1.7小结-37-

第2章闪回体系-38-

2.1什么是闪回?闪回有哪些分类?-39-

2.1.1闪回查询(FlashbackQuery)-42-

2.1.2闪回版本查询(FlashbackVersionQuery)-44-

2.1.3闪回事务查询(FlashbackTransactionQuery)-46-

2.1.4闪回表(FlashbackTABLE)-47-

2.1.5闪回删除(FlashbackDROP)-51-

2.1.6闪回数据库(FlashbackDatabase)-52-

2.1.7闪回数据归档(FlashbackDataArchive)-52-

2.2Oracle的回收站是什么?-54-

2.3什么是闪回数据归档(FlashbackDataArchive)-58-

2.4什么是闪回数据库?-63-

2.5其它扩展-67-

2.5.1如何让普通用户可以对DBA_SOURCE视图进行闪回查询?-67-

第3章执行数据库备份-68-

3.1课程目标-68-

3.2OracleSecureBackup-70-

3.3用户管理的备份-71-

3.4术语-72-

3.5RecoveryManager(RMAN)-74-

3.5.1rman连接数据库-75-

3.5.2RMAN数据字典-75-

3.5.3rman命令-76-

3.6RMAN简介-76-

3.7RMAN的配置-79-

3.7.1定义RMAN配置-79-

3.7.2显示RMAN默认配置-80-

3.7.2.1CONFIGURERETENTIONPOLICY配置备份保留策略-81-

一、设置RMAN备份的保存策略-84-

3.7.2.2CONFIGUREBACKUPOPTIMIZATION配置备份优化-86-

3.7.2.3CONFIGUREDEFAULTDEVICETYPE配置IO设备类型-89-

3.7.2.4CONFIGURECONTROLFILEAUTOBACKUP配置控制文件自动备份-89-

一、控制文件快照自动备份-90-

二、11G新特性-控制文件延迟自动备份-90-

3.7.2.5CONFIGUREDEVICETYPE设置并行备份-96-

3.7.2.6CONFIGUREDATAFILEBACKUPCOPIES设置备份文件冗余度-97-

3.7.2.7CONFIGUREMAXSETSIZE配置备份集的最大尺寸-98-

3.7.2.8CONFIGUREARCHIVELOGDELETIONPOLICY-98-

3.7.3FORMAT参数-102-

3.7.4配置备份设置-102-

3.7.4.1调度备份:策略-104-

3.7.4.2调度备份:选项-105-

3.7.5OCP-110-

3.8rman其它命令-113-

3.8.1列出备份信息(list)-113-

3.8.2删除备份(delete)-115-

3.8.2.1RMAN中关于备份或归档文件状态OBSOLETE和EXPIRED的区别是什么?-118-

3.8.3报告命令(report)-119-

3.8.3.1可以报告哪些文件需要备份-119-

3.8.3.2报告不可恢复的备份集-119-

3.8.3.3报告数据库的信息-120-

3.8.4交叉检查(crosscheck)-125-

3.8.5show-126-

3.8.6VALIDATEDATABASE-126-

3.9批处理命令RUN-126-

3.10物理备份和逻辑备份分别是什么?-127-

3.11catalog库-128-

3.11.1恢复目录(RecoveryCatalog)的概念-128-

3.11.2如何创建恢复目录(RecoveryCatalog)-129-

3.11.2.1例子-129-

3.11.2.2官网-131-

一、Prerequisites-131-

二、基本恢复目录-133-

三、虚拟私有目录--RVPC(RMANvirtualprivatecatalog)-133-

3.11.3Recoverycatalogresyncing恢复目录同步-138-

3.11.4IMPORTCATALOG-138-

3.11.4.1例子-141-

3.11.5ManagingaRecoveryCatalog-142-

3.11.6OCP-142-

3.12BACKUP命令---RMAN备份-151-

3.12.1.1wholebackup-153-

3.12.1.2fullbackup-154-

一、完全备份示例-156-

3.12.2备份表空间-157-

3.12.2.1temp表空间-158-

3.12.3备份指定数据文件-158-

3.12.3.1system-159-

3.12.4备份控制文件-159-

3.12.4.1在线镜像备份-162-

3.12.4.2自动备份-162-

一、显式自动备份-162-

二、隐式自动备份-163-

3.12.4.3手动备份-163-

一、备份集备份-163-

二、镜像复制备份-163-

三、重建脚本-164-

3.12.4.4控制文件快照-165-

3.12.5备份spfile-172-

3.12.6备份归档日志文件-172-

3.12.6.1归档重做日志的备份与恢复-173-

3.12.6.2联机日志的备份-174-

3.13管理备份-175-

3.13.1查看备份报告-177-

3.13.2监视快速恢复区-178-

3.13.3使用RMAN命令行-179-

3.14麦苗扩展-180-

3.14.1差异增量备份和累积增量备份的区别是什么?-180-

3.14.2什么是块改变跟踪(BlockChangeTracking)?-185-

3.14.2.1OCP-186-

3.15我的备份脚本-188-

3.15.1linux-189-

3.15.1.1nocatalog全备-189-

一、简易版-归档-191-

二、简易版-非归档mount全备-192-

3.15.1.2catalog增量备份脚本-193-

一、我自己的-195-

3.15.1.3Nocatalog增量备份脚本-198-

一、我自己的-211-

3.15.2windows-213-

3.15.2.1全备--我自己的-215-

3.15.2.2增量备份-216-

3.15.2.3设置windows定时任务-219-

一、XP下设置-222-

3.16OCP-224-

3.17小测验-234-

3.18小结-234-

第4章执行数据库恢复-234-

4.1课程目标-234-

4.2打开数据库-235-

4.2.1使数据库保持在打开状态-237-

4.3数据库归档恢复-238-

4.4对数据库进行完全介质恢复-238-

4.5物理文件恢复-239-

4.5.1口令文件(密码文件)-239-

4.5.2spfile丢失-239-

4.5.2.1数据库没有挂掉-239-

4.5.2.2数据库已经挂掉-240-

一、从rman的自动备份中找回-240-

二、手动创建-246-

4.5.3controlfile丢失-246-

4.5.3.1控制文件恢复前的准备-248-

4.5.3.2有备份情况下的恢复-251-

一、控制文件之一丢失(单个控制文件丢失或损坏)-251-

二、各种情况下的丢失-252-

三、使用控制文件快照-275-

4.5.3.3重建控制文件---无备份情况下的恢复-278-

一、重建控制文件resetlogs和noresetlogs的区别-280-

二、在线日志无损情况下的重建-300-

三、在线日志损坏情况下的重建-301-

四、具有只读数据文件情况下的重建-303-

4.5.3.4控制文件不一致-307-

4.5.3.5OCP-308-

4.5.4Redo文件丢失(online+archive)-310-

4.5.4.1在线Redo日志-310-

一、查看日志文件的状态-312-

二、日志文件的恢复方法-313-

三、数据库归档/非归档模式下inactiveredo异常ORA-00316ORA-00327-315-

四、正常关闭数据库currentredo异常ORA-00316ORA-01623-318-

五、数据库异常关闭current/activeredo异常ORA-00316ORA-01624ORA-01194-321-

六、LossofaRedoLogFile-332-

七、LossofaRedoLogGroup-337-

八、lossallonlineredologs-339-

九、数据库未挂掉的情况下的恢复-340-

4.5.4.2恢复归档日志archivelog-341-

一、restorearchivelog的各种选项-341-

二、我的例子-351-

三、怎样清除v$archived_log视图中的过期信息-356-

4.5.4.3OCP-358-

4.5.5datafile丢失-362-

4.5.5.1在NOARCHIVELOG模式下丢失了数据文件-364-

4.5.5.2在ARCHIVELOG模式下丢失了非关键数据文件-365-

一、在ARCHIVELOG模式下丢失了系统关键数据文件-366-

4.5.5.3open状态下可以脱机的文件(sysaux,user等等)-367-

一、修改数据文件名称-368-

4.5.5.4open状态下不能脱机的文件(system,undo,temp)-368-

一、undo文件丢失-373-

4.5.5.5LossofaNoncriticalDataFileinARCHIVELOGMode-374-

4.5.5.6LossofaSystem-CriticalDataFileinARCHIVELOGMode-374-

一、system数据文件丢失-375-

二、【RMAN】SYSTEM表空间数据文件丢失恢复模拟-380-

三、system-395-

4.5.5.7非归档模式-397-

4.5.5.8如果删除表空间之前删除了表空间文件,解决办法:-398-

4.5.5.9OCP-398-

4.5.5.10数据文件没有备份的情况-399-

4.5.6表空间丢失-406-

4.5.6.1临时表空间数据文件(tempfile)丢失-408-

4.5.6.2RecoveringfromaLostIndexTablespace-411-

4.5.6.3RecoveringaRead-OnlyTablespace-412-

4.5.6.4undo表空间-412-

一、有备份-426-

二、无备份-429-

三、使用bbed恢复-454-

四、数据库还没有挂掉的情况下-454-

4.5.7ORACLE丢失各种文件导致数据库不能OPEN恢复-455-

4.6麦苗扩展-458-

4.6.1恢复的分类-458-

4.6.2介质恢复(MEDIARECOVERY)-459-

4.6.2.1数据库还原(RESTORE)与数据库恢复(RECOVER)-459-

4.6.2.2完全恢复和不完全恢复-462-

4.6.2.3完全恢复(CompleteRecovery)-463-

一、完全恢复的几种场景-465-

4.6.2.4不完全恢复的几种类型-475-

4.6.2.5实例恢复和介质恢复的区别-476-

4.6.3rm-rf误操作的恢复过程----数据库在无备份且open情况下的恢复-477-

4.6.3.1实验-479-

4.6.3.3模拟rm-rf误操作-481-

4.6.3.4开始恢复-483-

一、判断句柄位置-483-

二、恢复数据文件、控制文件、tmp文件和onlinelog文件-485-

三、如果数据库还没有关掉则关闭数据库-489-

4.6.3.5总结-491-

4.6.4TRUNCATE恢复方法-491-

4.6.6在丢失归档的情况下如何进行数据文件的恢复-495-

4.6.7数据文件OFFLINE之后必须要做的一件事是什么?-495-

4.6.8什么是DRA(DataRecoveryAdvisor)?-498-

4.6.8.1DataRecoveryAdvisor(数据恢复指导)-499-

4.6.8.2数据恢复指导-501-

4.6.8.3数据故障-503-

一、列出数据故障-504-

二、提供修复建议-505-

4.7基于用户管理恢复的方法-508-

4.8基于用户管理的完全恢复-508-

4.9小测验-510-

第5章日志挖掘logminer-511-

5.1演示-515-

第6章利用增量数据库备份进行恢复-516-

6.1自己的脚本-516-

第7章RMAN高级应用之Duplicate复制数据库-519-

7.1简介-519-

7.2duplicate体系结构-520-

7.2.1DuplicatinganActiveDatabase-521-

7.2.1.1PrerequisitesSpecifictoActiveDatabaseDuplication-525-

7.2.1.2自己的例子-525-

7.2.2CloningADatabaseOnTheSameServerUsingRmanDuplicateFromActiveDatabase-526-

7.2.2.1ConfigureTheNetwork-527-

7.2.2.2CreateAPasswordFileForTheNewDatabase-528-

7.2.2.3CreateAnInit.OraForTheNewDatabase-528-

7.2.2.4CreateTheAdminDirectoryForTheNewDatabase-528-

7.2.2.5ShutdownAndStartupMountTheSourceDatabase-528-

7.2.2.6StartupNomountTheNewDatabase-529-

7.2.2.7ConnectToTheTarget(Source)AndAuxiliary(NewClone)DatabasesUsingRman-529-

7.2.2.8ExecuteTheDuplicateCommand-529-

7.2.2.9RemoveTheOldPfile-535-

7.2.2.10CheckTheNewDatabase-535-

7.2.3DuplicatingaDatabasewithaTargetConnection-536-

7.2.4DuplicatingaDatabasewithRecoveryCatalogWithoutTargetConnection-537-

7.2.5DuplicatingaDatabaseWithoutRecoveryCatalogorTargetConnection-538-

7.2.5.1老师例子-539-

7.3CreatingaBackup-BasedDuplicateDatabase-556-

7.3.1CreatinganInitializationParameterFilefortheAuxiliaryInstance-557-

7.3.2SpecifyingNewNamesforYourDestination-558-

7.3.2.1SETNEWNAME-559-

7.3.3SpecifyingParametersforFileNaming-562-

7.3.3.1DB_FILE_NAME_CONVERT-563-

7.4OCP-563-

第8章BBED简介-567-

第9章rman之块介质恢复-568-

9.1坏块的简介-568-

9.2坏块的检测方法-569-

9.3BMR恢复坏块-571-

9.4如何确定坏块的对象名-571-

9.5如果发现有坏块,那么如何检索其它未坏的数据?-572-

9.6模拟坏块-573-

9.6.1blockrecover恢复坏块-573-

9.6.1.1创建演示环境-573-

9.6.1.2单块数据块损坏的恢复处理-574-

9.6.1.3多块数据块损坏的恢复处理-575-

9.6.1.4坏块的对象定位与影响-577-

9.6.2bbed模拟-579-

9.6.2.1bbed修复坏块示例-580-

9.7坏块模拟脚本-584-

9.8OCP-585-

第10章OS备份(物理备份)和恢复-587-

10.1操作系统备份(物理备份)-587-

10.1.1冷备份(一致性备份、脱机备份)--coolbackup-587-

10.1.1.1冷备份的优缺点-588-

10.1.1.2冷备份一般步骤-588-

10.1.1.3冷备脚本的写法-589-

一、冷备脚本-592-

10.1.1.4存在冷备下的还原(非归档模式)-592-

一、丢失数据文件-592-

二、日志文件丢失-608-

三、控制文件丢失-612-

四、参数文件丢失-616-

五、密码文件丢失-616-

10.1.1.5OCP-617-

10.1.2热备份(非一致性备份、联机备份)--只能用于归档模式-617-

10.1.2.1简介-617-

10.1.2.2具体操作-618-

一、热备的过程-618-

二、基于数据库的热备-619-

三、基于表空间的热备-620-

四、控制文件的热备-621-

五、参数文件的热备-622-

六、临时表空间的数据文件、日志文件不需要备份-622-

10.1.2.4热备ocp-625-

10.1.2.5存在热备下的还原-629-

一、还原控制文件-629-

二、还原数据文件-632-

第11章非归档模式备份恢复-637-

11.1非归档的备份方法-640-

11.1.1非归档全备份-641-

11.2非归档模式下的恢复-643-

11.3非归档模式的备份与恢复示例(使用冷备)-646-

第12章OPENRESETLOGS-650-

12.1使用alterdatabaseopenresetlogs的场合-650-

12.2为什么使用RESETLOGS?-650-

12.3RESETLOGS会执行什么操作?-650-

12.4ocp-651-

第13章其它-651-

13.1下列4条RECOVERDATABASE命令的区别是什么-651-

13.2RESETLOGS和NORESETLOGS的区别是什么?-652-

第14章跨版本恢复-653-

14.1RMAN可以跨版本或跨平台执行还原或复制命令吗?-653-

14.2跨小版本-655-

14.3跨大版本-656-

第15章只存在备份片的数据库恢复过程-656-

15.1.1总结-656-

第16章Oracle恢复流程图-656-

第17章移动数据-658-

17.1移动数据:一般体系结构-659-

17.2exp和imp-660-

17.2.1EXP导出数据-661-

17.2.1.1导出表-664-

17.2.1.2导出方案-665-

17.2.1.3导出数据库-665-

17.2.2IMP导入数据-665-

17.2.2.1导入表-667-

17.2.2.2导入方案-668-

17.2.2.3导入数据库-668-

17.2.2.4imp导入常见问题处理-670-

17.2.3exp和imp的一些其它用法-671-

17.2.4其它实用内容-672-

17.2.4.1可以从dmp文件获取哪些信息?-672-

二、获取dmp文件中的表信息-672-

三、解析dmp文件生成parfile文件-673-

四、如何查看dmp文件的字符集-673-

五、如何将US7ASCII字符集的dmp文件导入到ZHS16GBK字符集的数据库中?-674-

17.2.4.2exp的query参数和parfile的使用-675-

一、query和parfile示例-676-

17.2.4.3什么是延迟段创建(DeferredSegmentCreation)?-677-

一、Oracle11g不能导出空表的三种解决方法-679-

17.2.4.4exp导出ASH数据-680-

一、方法1:ctas建表导出,有的客户不让建表-680-

二、方法2:导出基表的数据-682-

17.2.5常见错误-684-

17.2.5.1EXP-00091:Exportingquestionablestatistics问题处理方法-684-

17.2.5.2EXP-00026:conflictingmodesspecified-687-

17.2.5.3IMP-00013:onlyaDBAcanimportafileexportedbyanotherDBA-689-

17.2.5.4IMP-00031:必须指定FULL=Y或提供FROMUSER/TOUSER或TABLES参数-690-

17.2.5.5IMP-00002:无法打开要读取的impD:/admin.dmp-692-

17.2.5.6EXP-00008:遇到ORACLE错误904-692-

17.2.5.7imp导入报错:IMP-00037:Charactersetmarkerunknown-693-

17.2.5.8IMP-00010:notavalidexportfile,headerfailedverification-696-

17.2.5.9imp-00051,imp-00008-698-

17.2.5.10IMP-00132:firstfileinthemulti-fileexportis32-699-

17.2.6注意事项-699-

17.3数据泵(expdp和impdp)-699-

17.3.1Oracle数据泵:概览-701-

17.3.2Oracle数据泵:优点-702-

17.3.3OracleDatabase11g中的数据泵增强功能-703-

17.3.4数据泵的目录对象-704-

17.3.4.1创建目录对象-705-

17.3.5数据泵导出与导入客户机:概览-706-

17.3.6数据泵实用程序:界面与模式-707-

17.3.7使用DatabaseControl进行数据泵导出-708-

17.3.8数据泵导出示例-709-

17.3.8.1数据泵导出示例:基本选项-710-

17.3.8.2数据泵导出示例:高级选项-710-

17.3.8.3数据泵导出示例:文件-711-

17.3.8.4数据泵导出示例:调度-713-

17.3.8.5数据泵导出示例:复查-714-

17.3.8.6数据泵导入示例:impdp-714-

17.3.9使用OracleEnterpriseManager监视数据泵作业-715-

17.3.10以数据泵旧模式提供移植支持-716-

17.3.11数据泵旧模式-717-

17.3.12管理文件位置-719-

17.3.13麦苗扩展-720-

17.3.13.1数据泵的一些常用语法命令-720-

17.3.13.2如何彻底停止expdp进程?-725-

17.3.13.3如何跟踪expdp和SQL*Plus命令?-727-

17.3.13.4如何退出exp、imp、telnet等等交互窗口?-727-

17.3.13.5Oracle用户密码含特殊字符时如何登陆?-728-

17.3.13.6如何获取数据库DDL的创建语句-729-

一、imp示例(SHOW=Y)-729-

二、imp的indexfile选项(indexfile导出表和索引的ddl语句)-732-

三、impdp示例-734-

四、只导出元数据完整示例-737-

五、【IMPDP】使用TRANSFORM选项去掉表空间和存储子句-737-

17.3.13.7过滤数据(exclude、include)-738-

一、Exclude反规则-739-

二、Include正规则-740-

三、高级过滤CONTENT参数-741-

四、过滤已经存在的数据TABLE_EXISTS_ACTION参数-742-

五、导出job-742-

六、导出dblink-743-

七、导出公共同义词-743-

17.3.13.8重定义表的Schema或表空间-743-

17.3.13.9优化导入/导出效率(expdp/impdp)-744-

17.3.13.10impdp传输表空间(OCM考题)-748-

17.3.13.11注意事项-750-

一、expdp导出sys用户下的表报错ORA-39165和ORA-39166-750-

17.3.13.12impdp的一些选项-752-

一、NETWORK_LINK选项-752-

17.3.13.13如何导出存储过程、函数、包和触发器的定义语句?如何导出表的结构?如何导出索引的创建语句?-753-

17.3.13.1412cexpdpVIEWS_AS_TABLES选项-766-

17.3.13.15其它错误-768-

一、数据泵导出出现ORA-31617错误-768-

17.3.13.16数据泵导出导入卡死-771-

一、AIX环境下EXPDP卡住问题处理-773-

17.3.13.17使用隐含Trace参数诊断OracleDataPump故障-775-

17.4SQL*Loader-785-

17.4.1使用SQL*Loader加载数据-787-

17.4.2SQL*Loader控制文件-787-

17.4.3直接路径加载与常规路径加载的比较-790-

17.4.4麦苗扩展-791-

17.4.4.1如何将文本文件或Excel中的数据导入数据库?-791-

一、sqlldr高级用法-793-

二、sqlldr报错处理-795-

17.4.4.2简单示例-797-

17.4.4.32000W酒店开房数据导入-798-

17.5外部表-803-

17.5.1外部表的优点-804-

17.5.2使用ORACLE_LOADER定义外部表-805-

17.5.3使用ORACLE_DATAPUMP填充外部表-806-

17.5.4使用外部表-807-

17.5.5麦苗扩展-807-

17.5.5.1基础-807-

17.5.5.2外部表示例-809-

17.5.5.3只有1列-809-

17.5.5.4外部表的parallel-810-

17.5.5.5利用外部表查看告警日志-810-

一、先来个最简单的使用方法-810-

二、再来个稍微复杂点的-812-

17.5.5.62000W酒店开房数据导入-814-

17.6有关sqlldr和外部表的一道OCM考题-815-

17.7小测验-820-

17.8小结-820-

第1章管理数据并发处理(锁和会话)-14-

1.1课程目标-14-

1.2锁-15-

1.2.1显式锁定-17-

1.2.2隐式锁定-17-

1.2.3按照对象分类锁定-17-

1.3锁定机制-18-

1.4数据并发处理-19-

1.5DML锁-21-

1.6入队机制-22-

1.7锁冲突-23-

1.8锁冲突的可能原因-24-

1.9检测锁冲突-25-

1.10解决锁冲突-26-

1.10.1使用SQL解决锁冲突-27-

1.11死锁-28-

1.12锁的扩展-28-

1.12.1分类-29-

1.12.2锁的兼容性-32-

1.12.3锁的数据字典视图-33-

1.12.4SELECT...FORUPDATE-36-

1.12.5DML_LOCKS和DDL_LOCK_TIMEOUT参数-36-

1.12.6在编译存储过程、函数等对象时无响应-36-

1.12.7新建或重建索引的锁信息-36-

1.12.8对于错误"ORA-08104:thisindexobject68111isbeingonlinebuiltorrebuilt",应该如何处理?-38-

1.12.9会话-39-

1.12.9.1V$SESSION视图-39-

1.12.9.2如何查看某一个会话是否被其它会话阻塞?-42-

1.12.9.3如何查到会话正在执行的SQL语句?-43-

1.12.9.5如何让普通用户可以杀掉自己用户的会话?-44-

1.12.9.6SESSIONS和PROCESSES的关系-46-

1.12.9.7如何根据OS进程快速获得DB进程信息与正在执行的语句?-47-

1.12.9.8怎么杀掉特定的数据库会话?-48-

1.12.9.9如何快速的清理Oracle的进程?-48-

1.13小测试-48-

1.14小结-49-

第2章管理还原数据-49-

2.1还原数据-50-

2.2事务处理和还原数据-52-

2.3存储还原信息-53-

2.4还原数据与重做数据-54-

2.5管理还原-55-

2.7将还原表空间改为固定大小-58-

2.8一般还原信息-59-

2.9使用还原指导-60-

2.10查看系统活动-61-

2.11扩展-62-

2.11.1Undo的作用-62-

2.11.2Undo段存储的内容-63-

2.11.3块清除-64-

2.11.4Undo表空间-65-

2.11.5系统回滚段(SystemRollbackSegment)与延迟回滚段(DeferredRollbackSegment)-67-

2.11.6ORA-01555-67-

2.11.7Redo日志文件(RedoLogFiles)的作用是什么?-68-

2.11.8如何管理联机Redo日志组与成员?-69-

2.11.9在Oracle中,如果联机Redo日志文件损坏,那么如何恢复?-70-

2.12小测验-70-

2.13小结-71-

第3章实施OracleDB审计-72-

3.1责任分离-73-

3.2数据库安全性-74-

3.3监视合规性-75-

3.4标准数据库审计-76-

3.5配置审计线索-78-

3.6统一审计线索-79-

3.6.1指定审计选项-80-

3.7默认审计-81-

3.7.1EnterpriseManager审计页-82-

3.7.2使用和维护审计信息-83-

3.7.3基于值的审计-84-

3.8细粒度审计-86-

3.8.1FGA策略-87-

3.8.2审计的DML语句:-89-

3.8.3FGA准则-90-

3.9SYSDBA审计-91-

3.10维护审计线索-92-

3.11OracleAuditVault-93-

3.12麦苗扩展-94-

3.12.1.1什么是审计(Audit)?-94-

3.12.1.2迁移SYS.AUD$表到其它表空间-95-

3.12.1.3审计如何分类-97-

3.12.1.4审计中BYACCESS和BYSESSION的区别是什么?-97-

3.12.1.5如何对SYSDBA和SYSOPER进行审计?-97-

3.12.1.6什么是细粒度审计(精细化审计)?-98-

3.12.1.7如何禁用或删除某个用户下的所有细粒度审计?-100-

3.12.1.8FGA审计和标准审计有什么区别?-100-

3.13小测验-101-

3.14小结-101-

第4章数据库维护(AWR、ASH、ADDM)-102-

4.1数据库维护-103-

4.2查看预警历史记录-104-

4.2.1术语-105-

4.3Oracle优化程序:概览-106-

4.4统计信息-107-

4.4.1优化程序统计信息-107-

4.4.2使用"管理优化程序统计信息"页-108-

4.4.3手动搜集优化程序统计信息-109-

4.4.4用于搜集统计信息的首选项-111-

4.4.5麦苗扩展-112-

4.4.5.1统计信息的简介和分类-112-

4.4.5.2索引统计信息-115-

4.4.5.3列的统计信息-115-

4.4.5.4系统统计信息-118-

4.4.5.5内部对象统计信息-120-

4.4.5.6自动收集统计信息-120-

一、统计信息何时变为陈旧状态(10%的含义)?-122-

三、DBA_TAB_MODIFICATIONS-125-

4.4.5.7怎样收集表的统计信息?怎样收集分区表的统计信息?-126-

4.4.5.8什么是动态采样(DynamicSampling)?-126-

4.4.5.9如何锁住统计信息?-130-

4.4.5.10什么是待定的统计信息(PendingStatistic)?-132-

4.4.5.11什么是直方图(Histogram)?-137-

4.4.5.12什么是多列统计信息(ExtendedStatistics)?-151-

4.4.5.13基表COL_USAGE$的作用是什么?-160-

4.4.5.14新建索引后统计信息是否自动收集?-160-

4.4.5.15什么是基数反馈(CardinalityFeedback)?-160-

4.4.5.16如何查询表和索引的历史统计信息-165-

4.4.5.17Oracle如何并发地收集统计信息?-167-

4.4.5.18当收集表的统计信息时应该注意哪些问题?-168-

4.4.5.19什么是基数(Cardinality)和可选择率(Selectivity)?-170-

4.4.5.20使用SPLIT来拆分某个分区的时候,其拆分出来的新分区的统计信息行数是多少?-177-

4.4.5.21当自动收集任务运行时,哪些对象会被收集?-178-

4.4.5.22分区表统计信息的更新机制是怎样的?-178-

4.4.5.23如何查询表的DML操作数据变化量?-179-

4.4.5.24对表执行TRUNCATE操作会将表的统计信息也清除掉吗?-181-

4.5自动工作量资料档案库(AWR)-182-

4.5.1AWR基础结构-183-

4.5.2AWR基线-184-

4.5.3EnterpriseManager和AWR-185-

4.5.4管理AWR-186-

4.5.5统计级别-187-

4.5.6麦苗扩展-188-

4.5.6.1什么是AWR?-188-

4.5.6.2如何获取AWR报告?-189-

一、定时生成AWR报告-190-

4.5.6.4如何在AWR中查看每秒执行事务的个数?-199-

4.6自动数据库诊断监视器(ADDM)-200-

4.6.1ADDM查找结果-202-

4.6.2ADDM建议-203-

4.6.3麦苗扩展-204-

4.6.3.1什么是ADDM?-204-

4.6.3.2如何获取ADDM报告?-205-

4.7ASH-206-

4.7.1什么是ASH?-206-

4.7.2如何获取ASH报告?-207-

4.8ASH、AWR、ADDM、AWRDDRPT、AWRSQRPT的比对-210-

4.9指导框架-212-

4.9.1EnterpriseManager和指导-214-

4.9.2DBMS_ADVISOR程序包-215-

4.10小测验-215-

4.11自动维护任务-216-

4.11.1自动维护任务-216-

4.11.2自动维护任务配置-218-

4.12服务器生成的预警-219-

4.12.1设置阈值-220-

4.12.2创建和测试预警-221-

4.12.3预警通知-222-

4.12.4对预警作出响应-224-

4.12.5预警类型和清空预警-225-

4.13性能监视-226-

4.13.1EnterpriseManager的性能页-227-

4.13.2细化到特定的等待类别-228-

4.13.3性能页:吞吐量-229-

4.13.4性能监视:顶级会话-230-

4.13.5性能监视:顶级服务-231-

4.14动态性能统计信息-232-

4.15故障排除和优化视图-233-

4.16无效和不可用对象-234-

4.17小测验-235-

4.18小结-236-

第5章JOB-237-

5.1DBMS_JOB-237-

5.1.1dbms_jobpackage用法介绍-241-

5.1.1.1DBMS_JOB包权限-242-

5.1.1.2DBMS_JOB后台进程-242-

5.1.1.3broken-243-

5.1.1.4change-244-

5.1.1.5interval-244-

5.1.1.6isubmit-244-

5.1.1.7next_date-245-

5.1.1.8remove-246-

一、杀job-246-

二、删除其它用户下的job用sys.dbms_ijob.remove()-246-

5.1.1.9run-251-

5.1.1.10submit-252-

5.1.1.11user_export-254-

5.1.1.12what-254-

一、例子-255-

5.1.2RAC中指定dbms_job运行在指定实例-257-

5.1.3数据字典-259-

5.1.4OCP课堂-261-

5.2DBMS_SCHEDULER-263-

5.2.1DBMS_JOB和DBMS_SCHEDULER之间的区别-264-

5.2.2各个组件(components)-264-

5.2.2.1作业(job):-264-

5.2.2.3程序(program):-266-

5.2.2.4作业类(job_class):-266-

一、管理JobClasses-270-

5.2.2.5窗口(window):-270-

5.2.2.6窗口组(window_group):-272-

5.2.3参数设置-274-

5.2.4管理job-278-

5.2.4.1启用Jobs-278-

5.2.4.2禁用Jobs-279-

5.2.4.3修改Jobs-280-

5.2.4.4执行Jobs-282-

一、dbms_scheduler.run_job报错-284-

5.2.4.5停止Jobs-285-

5.2.4.6删除Jobs-286-

一、批量删除job-287-

5.2.4.7指定job的执行频率-288-

5.2.5创建job-290-

5.2.5.1需要的权限-290-

5.2.5.2例子-291-

5.2.5.3通过dbms_scheduler去执行shell脚本-292-

5.2.5.4例子一---不带参数-293-

5.2.5.5例子二---带参数-295-

5.2.5.6含有参数-302-

5.2.5.9批量创建job-305-

一、创建job主进程-305-

二、创建job子进程-310-

5.2.6判断job是否正在运行-312-

5.2.7数据字典-312-

5.2.8LightweightJobs-314-

5.2.8.1PersistentLightweightJobs-320-

5.2.9OCP课堂-321-

5.3PL/SQL工具创建和管理job-323-

5.3.1DBMS_JOB-323-

5.3.2DBMS_SCHEDULER-325-

5.4其它实用内容-325-

5.4.1RAC中如何指定JOB的运行实例?-325-

5.4.2如何判断SCHEDULERJOB是否正在运行?-328-

5.4.3如何查询SCHEDULERJOB的运行日志?-329-

5.4.4通过DBMS_SCHEDULER如何调用SHELL脚本?-330-

5.4.5如何批量删除JOB?-330-

5.4.6已通知停止作业,但是无法立即停止-331-

5.5OCP-332-

第6章分区-333-

6.1分区表简介-334-

6.2分区表的一些限制条件-334-

6.3何时考虑分区?-334-

6.4分区表有什么优点?-334-

6.5有哪些类型的分区?如何选择用哪种类型的分区表?-335-

6.5.1RANGE(范围)分区-335-

6.5.2HASH(哈希)分区-336-

6.5.3列表分区-338-

6.5.4复合分区-339-

6.5.4.1分区模板的应用-340-

一、分区模板数据字典-341-

6.5.5Interval分区-341-

6.5.5.1以月为间隔-342-

6.5.5.2以天为间隔-346-

6.5.5.3总结-350-

6.5.5.4interval分区重命名-353-

一、注意-357-

6.5.6System_partitioning-357-

6.5.6.1RestrictionsonSystemPartitioning-358-

6.5.6.2AdvantagesofSystemPartitionedTables-359-

6.5.6.3SupportingOperationswithSystem-PartitionedTables-361-

6.6分区表的维护-363-

6.6.1添加分区(addpartition)-364-

6.6.2收缩表分区(coalescepartitions)-366-

6.6.3删除分区和删除子分区(droppartition)-366-

6.6.4添加子分区-367-

6.6.5截断表分区(TruncatePartition)--截断一个分区表中的一个分区的数据-367-

6.6.5.1截断分区表的子分区-368-

6.6.5.2截断带有约束的分区表-368-

6.6.5.3注意事项-368-

6.6.6移动表分区(MovePartition)-369-

6.6.6.1将一个表的分区从一个表空间移动到另一个表空间-370-

6.6.6.2压缩表Move--compress-370-

6.6.7合并分区(MergePartitions)-371-

6.6.8重命名某一个分区(RenamePartition)-374-

6.6.9交换表分区(ExchangePartitions)-374-

6.6.10修改list表分区-378-

6.6.10.1修改list表分区--AddValues-378-

6.6.10.2修改list表分区--DropValues-379-

6.6.11拆分表分区(SplitPartition)--分区切割-380-

6.6.12修改分区表属性-382-

6.6.12.1修改表分区默认属性(ModifyDefaultAttributes)-382-

6.6.12.2修改表分区当前属性(ModifyPartition)-382-

6.6.12.3修改分区表的logging属性-383-

6.6.12.4并行度-383-

6.6.13修改表子分区模板(SetSubpartitionTemplate)-383-

6.6.14其它-385-

6.7分区表的查询优化-392-

6.8分区表常用数据字典视图有哪些?-394-

6.8.1Oracle之INTERVAL分区的STOREIN属性存储在哪张表中?-401-

6.8.2如何查询某个分区是否是INTERVAL分区表?-402-

6.9分区表的压缩-402-

6.9.1分区表压缩-402-

6.9.2含有子分区的分区表压缩-403-

6.9.3分区表哪些分区被压缩了-403-

6.9.4总结-404-

6.9.5另一种办法:先置于compress状态后move-404-

6.9.6解压缩-405-

6.10分区表单个分区分析(分区表收集统计信息)-405-

6.11普通表转换为分区表有哪些办法?-405-

6.12分区表查询-410-

6.12.1单分区查询-410-

6.12.2跨分区查询-411-

6.13分区表中lob类型的字段-412-

6.14分区表性能注意事项-412-

6.15索引失效的情况-420-

6.16OCP讲课-421-

第7章管理补丁程序-422-

7.1应用补丁程序版本-424-

7.2使用补丁程序指导-425-

7.3使用补丁程序向导-426-

7.4应用补丁程序-427-

7.5存放补丁程序-428-

7.6联机打补丁:概览-429-

7.7安装联机补丁程序-429-

7.8联机打补丁的优点-431-

7.8.1常规打补丁和联机打补丁-431-

7.9联机打补丁注意事项-432-

7.10麦苗扩展-433-

7.10.1PSU升级的过程-434-

7.10.2PSU(PatchSetUpdate)、CPU(CriticalPatchUpdate)、BP(BundlePatch)等概念-434-

7.10.3如何查找最新的PSU?-435-

7.10.4如何确认当前数据库已经安装了什么PSU?-435-

7.10.5如何安装PSU?-436-

7.10.6Upgrade与Update-437-

7.10.7注意问题-437-

7.10.8什么是Metalink或MOS?-437-

7.10.911.2.0.3.0升级到11.2.0.3.1-438-

7.10.10one-offpatch-439-

7.10.11一道OCM题-441-

7.11小测验-442-

7.12小结-442-

第8章使用技术支持(学员自行阅读)-443-

8.1课程目标-443-

8.2使用支持工作台-443-

8.3在OracleEnterpriseManager中查看严重错误预警-445-

8.4查看问题详细资料-446-

8.4.1查看意外事件详细资料:转储文件-447-

8.4.2查看意外事件详细资料:检查器查找结果-448-

8.5创建服务请求-449-

8.6将诊断数据打包并上载到Oracle技术支持-450-

8.7跟踪服务请求并实施修复-451-

8.8关闭意外事件和问题-453-

8.9意外事件打包配置-454-

8.10EnterpriseManager针对ASM的支持工作台-456-

8.11使用Oracle技术支持-457-

8.12MyOracleSupport集成-458-

8.12.1使用MyOracleSupport-459-

8.13调查问题-461-

8.14记录服务请求-463-

8.15小结-464-

实验目录-11-

第1章数据泵之NETWORK_LINK-11-

1.1博客地址-11-

1.2环境介绍-12-

1.3imp和exp简介-13-

1.4expdp不使用network_link-15-

1.5expdp使用network_link-18-

1.5.1目标数据库创建dblink-18-

1.5.2client端或目标数据库执行-19-

1.5.3总结-21-

1.6impdp使用network_link-21-

1.6.1目标数据库创建dblink-21-

1.6.2client或目标端执行-22-

1.6.3总结-23-

1.7实验命令-23-

第2章DuplicatinganActiveDatabase(duplicate复制数据库)-23-

2.1博客地址-23-

1.1duplicate体系结构-24-

1.2本次实验简介-25-

1.3本次实验原理-26-

1.4环境及搭建要求-26-

1.4.1对辅助数据库的要求-27-

1.5正式开始-28-

1.5.1duplicatedatabase设置-28-

1.5.1.1创建pfile参数文件-28-

1.5.1.2创建密码文件-28-

1.5.1.4启动Auxiliary到nomout状态-29-

1.5.2在Target和Auxiliary都配置OracleNet(Listener.oraandtnsnames.ora)-30-

1.5.2.1测试网络是否配置好-33-

1.5.3开始RMANduplicatefromactivedatabase-35-

1.5.4dropdatabase-41-

2.2OCP讲课(duplicateACTIVE+ASM-->FS)-42-

1.5.5duplicatedatabase设置-42-

1.5.5.1创建pfile参数文件-42-

1.5.5.2创建密码文件-43-

1.5.5.4启动Auxiliary到nomout状态-43-

1.5.6在Target和Auxiliary都配置OracleNet(Listener.ora和tnsnames.ora)-43-

1.5.6.1测试网络是否配置好-45-

2.2.1准备执行的RUN块-45-

1.5.7开始RMANduplicatefromactivedatabase-46-

2.2.2测试一下dbid和dbname-46-

第3章DuplicatingaDatabaseWithoutRecoveryCatalogorTargetConnection-48-

1.1本次实验简介-48-

1.2环境及搭建要求-48-

1.2.1对辅助数据库的要求-48-

1.3正式开始-50-

1.3.1前期准备-50-

1.3.1.1建表-50-

1.3.1.2数据库归档模式-50-

1.3.1.3备份数据库-51-

1.3.1.4将备份内容拷贝到destinationhost-55-

1.3.1.5创建pfile参数文件-56-

1.3.1.7创建密码文件-58-

1.3.2实施数据库的复制-58-

1.3.2.1启动Auxiliary到nomout状态-58-

1.3.2.2连接到auxiliaryinstance并复制数据库-59-

1.3.2.3可能的报错-65-

一、fra满了-65-

二、备份位置-66-

1.3.2.4验证-66-

1.3.3dropdatabase-67-

第4章DuplicatingaDatabaseWithoutRecoveryCatalogorTargetConnection-68-

4.1本次实验简介-68-

4.2本次实验原理图-69-

4.3环境及搭建要求-69-

4.3.1sourcedatabase环境-69-

4.3.2对辅助数据库的要求-70-

4.4正式开始-71-

4.4.1前期准备-71-

4.4.1.1建表-71-

4.4.1.2数据库归档模式-73-

4.4.1.3备份数据库-74-

4.4.1.4将备份内容拷贝到destinationhost-77-

4.4.1.5创建pfile参数文件-77-

4.4.1.7创建密码文件-80-

4.4.2实施数据库的复制-81-

4.4.2.1启动Auxiliary到nomout状态-81-

4.4.2.2连接到auxiliaryinstance并复制数据库-83-

一、告警日志-93-

4.4.2.3可能的报错-119-

二、fra满了-119-

三、备份位置-120-

1.1.1.2验证-121-

4.4.3dropdatabase-122-

5.1博客地址-124-

5.2BLOG文档结构图-125-

5.3前言部分-125-

5.3.1导读-125-

5.3.2实验环境介绍-126-

5.3.3本文简介-126-

5.4.1TSPITR简介-127-

5.4.2何时使用TSPITR-127-

5.5实验部分-128-

5.5.1源库做备份操作-128-

5.5.2建立测试表并做truncate误操作-131-

5.5.4执行TSPITR之前的检查-133-

5.5.4.1检查是否自包含-133-

5.5.4.2检查哪些对象执行TSPITR后将被删除-134-

5.5.5执行TSPITR-135-

5.5.6online表空间并且导入丢失的对象-140-

5.6与TSPITR有关的OCP试题部分-142-

5.7总结-146-

5.8实验脚本-149-

第6章直接复制数据文件实现linux平台数据库复制到windows平台数据库-152-

6.1平台环境概述-152-

6.2查看字节序-152-

6.3linux下操作-154-

6.3.1linux下生成pfile和controlfile-154-

6.3.2把linux上/u01/app/oracle/oradata/rman下的数据文件、重做日志文件、归档文件,还有刚才创建的pfile和控制文件及listener.ora、tnsnames.ora文件复制到windows平台上-155-

6.4windows下操作-155-

6.4.1创建一个rman的实例,注意SID要与linux服务器中的相同-155-

6.4.3创建spfile并启动到nomount状态-157-

6.4.5打开数据库并添加临时表空间数据文件-160-

6.4.6由于是64位到32位操作系统,所以需要编译一下内核代码-160-

6.4.7其它配置工作-163-

6.4.8测试OK-163-

6.4.9删除数据库做其它测试-164-

第7章利用rman来实现linux平台数据库复制到windows平台数据库-165-

7.1平台环境概述-165-

7.2本次实验简介-165-

7.3本次实验原理图-165-

7.4查看字节序-165-

7.5sourcedatabase归档模式-167-

7.6linux下操作-167-

7.6.1建表-167-

7.6.2rman备份-168-

7.6.3linux下生成pfile-173-

7.6.4把linux上/home/oracle/oracle_bk/rman/下的所有备份文件复制到windows平台上-174-

7.7windows下操作-174-

7.7.1创建一个rman的实例,注意SID要与linux服务器中的相同-174-

7.7.3创建spfile并启动到nomount状态-176-

7.7.4rman进行数据文件的恢复-177-

7.7.5由于是64位到32位操作系统,所以需要编译一下内核代码-185-

7.7.6其它配置工作-188-

7.7.7测试OK-188-

7.7.8删除数据库做其它测试-189-

第8章热备下的测试库搭建-190-

8.1基础知识-190-

8.2本次实验环境简介-190-

8.3源库生成热备份文件-190-

8.4传输备份文件到target库-194-

8.4.1传输数据文件-194-

8.4.2传输归档文件-194-

8.5修改target库的pfile文件并生成pfile文件中的路径-195-

8.6启动target数据库到nomount状态-196-

8.7开始创建控制文件-196-

8.7.1第一步,首先移动相应的数据文件到相应的控制文件记录的目录中-197-

8.7.2第二步,重新创建控制文件,控制文件创建完成后自动mount-197-

8.8用rman注册一下-198-

8.9recover到指定的scn-201-

8.10重建临时表空间并配置密码文件以及TNS和密码文件等-201-

第9章传输表空间(TTS)一例(linuxasm->win文件系统)-202-

9.1场景描述-202-

9.2环境准备-202-

9.2.1在源库上创建3个用户应用的表空间-202-

9.2.2在相应的表空间创建表和索引-203-

9.3判断平台支持并确定字节序-204-

9.3.1在源平台查询-204-

9.3.2在目标平台查询-204-

9.4选择自包含的表空间集(目前要传输app1tbs和idxtbs这2个表空间)-205-

9.4.1进行检查-205-

9.4.2查看检查结果-205-

9.5产生可传输表空间集-206-

9.5.1使自包含的表空间集中的所有表空间变为只读状态-206-

9.5.2使用数据泵导出工具,导出要传输的各个表空间的元数据-206-

9.5.2.1确定导出目录-206-

9.5.2.2开始导出-207-

9.5.3生成数据文件-208-

9.6还原源库中的表空间为读/写模式-209-

9.7传输文件-210-

9.7.1传输转储元文件到目标库-210-

9.7.2查看目标库数据文件位置和目录-210-

9.7.3拷贝文件到目标库相应位置-210-

9.8开始导入-211-

9.8.1生成parfile文件-211-

9.8.2开始导入-211-

9.8.3查看目标平台信息-212-

9.9修改表空间对应的文件名-214-

9.10结束语-216-

第10章传输表空间(TTS)一例(win文件系统->linuxasm)-216-

10.1场景描述-216-

10.2环境准备-217-

10.2.1在源库上创建3个用户应用的表空间-217-

10.2.2在相应的表空间创建表和索引-218-

10.3判断平台支持并确定字节序-219-

10.3.1在源平台查询-219-

10.3.2在目标平台查询-219-

10.4选择自包含的表空间集(目前要传输app1tbs和idxtbs这2个表空间)-220-

10.4.1进行检查-220-

10.4.2查看检查结果-220-

10.5产生可传输表空间集-221-

10.5.1使自包含的表空间集中的所有表空间变为只读状态-221-

10.5.2使用数据泵导出工具,导出要传输的各个表空间的元数据-221-

10.5.2.1确定导出目录-221-

10.5.2.2开始导出-222-

10.5.3将数据文件拷贝到dpdump目录下-222-

10.6还原源库中的表空间为读/写模式-223-

10.7传输文件-223-

10.7.1利用ftp工具传输转储元文件到目标库-223-

10.7.2查看目标库数据文件位置和导入目录-223-

10.7.3拷贝文件到目标库相应位置并修改文件权限-224-

10.8开始导入-225-

10.8.1生成parfile文件-225-

10.8.2开始导入-225-

10.8.3查看目标平台信息-226-

10.9修改表空间对应的文件名-228-

第11章传输表空间(TTS)一例(AIXasm->linuxasm)-232-

11.1场景描述-232-

11.2环境准备-234-

11.2.1在源库上创建3个用户应用的表空间,并在相应的表空间创建表和索引-234-

11.3判断平台支持并确定字节序-236-

11.4选择自包含的表空间集-236-

11.4.1进行检查-236-

11.5产生可传输表空间集-237-

11.5.1使自包含的表空间集中的所有表空间变为只读状态-237-

11.5.2使用数据泵导出工具,导出要传输的各个表空间的元数据-238-

11.5.2.1确定导出目录-238-

11.5.2.2开始导出-239-

一、在source端转换(转换字节序可以在sorce端进行也可以在target端进行,我们选择在target端,这个步骤不执行)-240-

11.6还原源库中的表空间为读/写模式-242-

11.7传输文件-243-

11.7.1查看目标库数据文件位置和导入目录-243-

11.7.2利用ftp工具传输转储元文件到目标库DATA_PUMP_DIR目录并修改权限-244-

11.8开始导入-245-

11.8.1转换字节序(转换字节序可以在sorce端进行也可以在target端进行,我们选择在target端执行)-245-

11.8.2创建source库的2个用户并赋权限-246-

11.8.3开始导入-247-

11.8.4查看目标平台信息-247-

第12章传输表空间(TTS)一例(linuxasm->AIXasm)-250-

12.1场景描述-250-

12.2环境准备-252-

12.2.1在源库上创建3个用户应用的表空间-252-

12.2.2在相应的表空间创建表和索引-253-

12.3判断平台支持并确定字节序-254-

12.3.1在源平台查询-254-

12.3.2在目标平台查询-254-

12.4选择自包含的表空间集-255-

12.4.1进行检查-255-

12.4.2查看检查结果-255-

12.5产生可传输表空间集-256-

12.5.1使自包含的表空间集中的所有表空间变为只读状态-256-

12.5.2使用数据泵导出工具,导出要传输的各个表空间的元数据-256-

12.5.2.1确定导出目录-256-

12.5.2.2开始导出-257-

12.5.3生成数据文件-258-

12.5.3.1在source端转换字节序(也可以在target端转换字节序,我们选择在target端转换)-260-

12.6还原源库中的表空间为读/写模式-263-

12.7传输文件-263-

12.7.1传输转储元文件到目标库-263-

12.7.2查看目标库数据文件位置和目录-264-

12.7.3拷贝文件到目标库相应位置并修改权限-264-

12.8target端转换字节序-265-

12.9开始导入-266-

12.9.1创建source库的2个用户并赋权限-266-

12.9.2开始导入-267-

12.9.3查看目标平台信息-268-

12.10查看导入后结果-270-

第13章传输表空间(TTS)一例(linuxasm->AIXasm)--基于RMAN备份-271-

13.1场景描述-271-

13.2环境准备-272-

13.2.1在源库上创建3个用户应用的表空间-272-

13.2.2在相应的表空间创建表和索引-274-

13.3判断平台支持并确定字节序-274-

13.3.1在源平台查询-274-

13.3.2在目标平台查询-275-

13.4选择自包含的表空间集-276-

13.4.1进行检查-276-

13.4.2查看检查结果-276-

13.5产生可传输表空间集-277-

13.5.1rman全备份-277-

13.5.2生成结果集-280-

13.6传输文件-286-

13.6.1查看目标库数据文件位置和目录-286-

13.6.2拷贝文件到目标库相应位置并修改权限-287-

13.7target端转换字节序-287-

13.8target端开始导入数据-289-

13.8.1创建source库的2个用户并赋权限-289-

13.8.2开始导入-290-

13.8.3查看目标平台信息-290-

13.9查看导入后结果-291-

第14章传输表空间(TTS)一例(AIXasm->linuxasm)--基于RMAN-293-

14.1场景描述-293-

14.2环境准备-294-

14.2.1在源库上创建3个用户应用的表空间,并在相应的表空间创建表和索引-294-

14.3判断平台支持并确定字节序-296-

14.4选择自包含的表空间集-297-

14.4.1进行检查-297-

14.5产生可传输表空间集-298-

14.5.1rman备份source库-298-

14.5.2transporttablespace生成文件-300-

14.6传输文件到target端-305-

14.6.1查看目标库数据文件位置和导入目录-305-

14.6.2拷贝文件到目标库相应位置并修改文件权限-306-

14.7target端转换字节序-307-

14.8开始导入-307-

14.8.1创建source库的2个用户并赋权限-308-

14.8.2开始导入-308-

14.8.3查看目标平台信息-309-

第15章AIX平台数据库迁移到Linux--基于RMAN(真实环境)-312-

15.1场景描述-312-

15.2源库信息收集-314-

15.2.1先跑一下健康检查(可选)-314-

15.2.2表空间及数据文件情况-315-

15.2.2.1表空间大小-315-

15.2.2.2需要传输的数据文件大小-318-

15.2.3用户情况(密码、默认表空间、角色和权限,需迁移的schema对象大小、个数、列表)-318-

15.2.3.1需要迁移的用户-318-

15.2.3.2用户权限-319-

15.2.3.3用户表大小-321-

15.2.3.4对象个数-322-

15.2.3.5对象详细信息-322-

15.2.4无效对象情况-326-

15.2.5索引情况-327-

15.2.6确定是否有业务数据、脚本在例如sys用户等的默认用户下-327-

15.3判断平台支持并确定字节序-327-

15.4判断表空间集是否自包含-328-

15.5产生可传输表空间集-329-

15.5.1rman备份source库-329-

15.5.2transporttablespace生成文件-331-

15.6传输文件到target端-339-

15.6.1dbca创建target库-339-

15.6.2查看目标库数据文件位置和导入目录-340-

15.6.3利用ftp工具传输转储元文件到目标库-341-

15.6.4拷贝文件到目标库相应位置并修改文件权限-341-

15.7target端转换字节序-342-

15.8开始导入-344-

15.8.1创建source库的需要迁移的3个用户并赋权限(前边的脚本已经生成,直接拿过来执行)-344-

15.8.2开始导入-345-

15.8.2.1报错:source和target的compatible参数不同引起ora-00721错误-346-

15.8.3查看目标平台信息-347-

15.9导入完成后的结果校验-348-

15.9.1校验用户情况(密码、默认表空间、角色和权限,需迁移的schema对象大小、个数、列表)-348-

15.9.1.1校验用户-348-

15.9.1.2用户对象个数-349-

15.9.1.3对象详细信息-350-

15.9.2无效对象情况-353-

15.9.3索引情况-354-

15.10迁移后续收尾工作-354-

15.11TTS总结-354-

第16章只存在备份片的数据库恢复过程-354-

16.1.1原库备份并传输到测试库-355-

16.1.2测试库编辑pfile文件-359-

16.1.3备份集中含有控制文件备份的情况下的恢复--尝试法找回控制文件-359-

16.1.3.1方法一:采用dbms_backup_restore.restoreControlfileTo从备份片中来尝试找回控制文件-360-

一、启动数据库到mount状态-367-

二、重新注册备份集,还原spfile,还原数据库,不完全恢复数据库-368-

16.1.3.2方法二:尝试采用创建临时库来找回控制文件-374-

一、搭建临时库来注册备份集-374-

1、修改dbname和dbid-377-

2、重新注册-379-

二、还原操作-381-

1、还原spfile-381-

2、还原控制文件-381-

3、还原database-381-

16.1.3.3方法三:直接通过restore命令尝试-400-

16.1.3.4采用os系统命令strings来判断-402-

一、判断备份集是否含有spfile-403-

二、判断备份集中是否含有controlfile-405-

16.1.4备份集中无控制文件情况下的数据库恢复--重建控制文件-405-

16.1.5总结-418-

AboutMe

.............................................................................................................................................

●本文作者:小麦苗,部分内容整理自网络,若有侵权请联系小麦苗删除

THE END
1.腾讯课堂怎么导出下载视频导出下载视频的操作方法手机软件首先,打开腾讯课堂app,在我的薪政页面,点击下载管理。 然后,在离线下载页面就可以查看下载的视频了,操三暗针作完成后具体情况如下图所示何没。 操作完成后具体情况如下图所示。 以上就是腾讯课堂怎么导出下载视频 导出下载视频的操作方法的详细内容,更多请关注php中文网其它相关文章!https://www.php.cn/faq/827496.html
2.轻松获取教学视频资源,揭秘课程视频下载技巧!后端摘要:本篇文章将为你揭示课程视频下载的技巧,帮助你轻松获取教学视频资源。无论你是在线学习还是为了复习巩固知识,这些技巧都能帮助你高效下载课程视频,让你随时随地自由学习。文章简洁明了,实用性强,是学习者获取教学视频资源的必备指南。 随着在线教育的兴起,越来越多的人选择通过视频学习新知识,本文将为你详细介绍几https://www.zovps.com/article/index.php/post/446701.html
3.如何下载视频号里的视频,用这个工具就可以了电脑操作系统命令提随着视频号越来越流行,很多小伙伴也喜欢上了用视频号刷视频,有时候碰到好看的视频想保存下来,找来找去没发现下载的地方,是的,视频号目前来说还不支持直接下载,那碰到这种情况应该怎么办呢,这个简单,今天小编就给大家分享一下,怎么下载视频号里的视频! 1.把想要下载的视频转发到文件助手 https://www.163.com/dy/article/JJFBQLFQ0556B0FR.html
4.Depence2depence3软件中文视频教程培训震撼发布——全网最详细的本视频课程由高扬老师制作讲解。在制作当中,取其精华,去其糟粕,力求用通俗的语言、专业的技术表达去展现depence 2和depence3软件的各种功能。 视频总时长:3627分钟,60个小时,每个视频都标注的实际时长,使用Depence中文软件做的讲解,深入讲解了大多数功能。 有部分功能没有讲解,是因为实在无法检测。后续会给补充。 https://www.dgyxpxsp.com/Depence2/872.html
5.洋葱数学视频怎么下到电脑?6、点击“下载”按钮则可以将视频进行离线缓存。 二、求洋葱数学高中视频资源? 哔哩哔哩上面有相关视频。 三、怎么把洋葱数学的视频导出? 可以通过以下步骤将洋葱数学的视频导出。可以将洋葱数学的视频导出。洋葱数学的视频是存在于互联网上的,可以通过网络下载或者截屏等方式将其导出。具体的导出方式包括但不限于以下https://tool.a5.cn/article/show/75602.html
6.苏州高新区文贤实验初级中学校关于苏州高新区文贤实验初级中学校7. 排行榜:平台具备视频排行榜功能,排行榜中的资源支持显示精品课程、优课展示、微课展示、名师排行等分类并支持视频资源的自动排名; 三、 后台管理不低于如下要求 1. 用户管理:平台提供用户自主注册、后台批量导入,注册用户后由管理人员对申请人进行信息核对并开放对应权限,后台可通过数据模版初始化导入用户数据,每个用https://xunbiaobao.baidu.com/biddingDetail?id=d2a3b9080bd6c8277094184a3d3eb734be9cde16&source=seo
7.最新课程作为全球领先的逻辑器件供应商,TI最新课程包括本年度最新的各种电子器件有关的介绍,应用,发展趋势等现状,覆盖物联网,半导体,电机驱动,无线发展,医疗电子,硬件开发,工业控制,机器人开发等各种前沿应用的视频教程,帮助工程师实时了解当下最受关注欢迎的应用领域。https://edu.21ic.com/nlesson/2018
8.哔哩哔哩教你如何导出新版缓存的视频拜托三连了!这绝对是全B站最用心(没有之一)的手机剪辑公开课程,必剪包教包会! b站缓存视频小“技巧” 怎么用剪映去除视频水印?请收下这七种方法! 教你如何把b站的视频保存到u盘。也适合剪辑(最笨的方法)有直接能下载的看播放量后再定。看简介!!! https://xbeibeix.com/video/BV1p3411B7Yn
9.3DVistaVirtualTourSuite2023破解3DVistaVirtu这意味着您可以将虚拟游览添加并集成到符合SCORM的在线课程和MOOC中。 软件特色 一、一般 1、导出为WEB 您可以将虚拟游览作为新网页(仅显示游览)或作为现有网页的一部分(例如,将虚拟游览整合到所提供房屋的产品描述页面中)上传到Internet。 您的观众不需要任何特殊的播放器或软件即可观看虚拟导览。因此,您的虚拟导览http://www.sd173.com/soft/9292.html
10.联想语音实时字幕翻译实时字幕翻译软件有哪些(41篇)在娱乐领域,越来越多的流媒体平台和视频分享网站开始引入实时字幕翻译功能。无论是追美剧、看日剧,还是观看国外的纪录片,观众都可以通过实时字幕轻松理解内容,享受更加沉浸的观影体验。 在教育领域,实时字幕翻译为在线课程和国际学术交流提供了极大便利。学生和学者们可以通过实时翻译观看国外大学的公开课、学术讲座和研讨https://shishifanyi.com/tag/?url=1129
11.万字解析:AI驱动的大纲笔记,Tana能否超越Notion?本期视频额外耗时两周制作完成,提取了 2 个我认为 Tana 最需要被优先了解的功能,即Supertag 与 AI 所能参与构筑的全局工作流,相信能够让你对 Tana 是怎样的一款笔记软件有一个基础认知。 但Tana 的完整体验绝非一期视频就能概括,因此本文竟然写到了 1.4 万字之多,我认为 Tana 的复杂度相比 Notion 都不遑多让,https://ios.sspai.com/post/93555
12.CityEngine城市三维嘲数字制作案例详解视频教程离线缓存,随时随地想学就学 微信关注翼狐服务号回复“APP”,即可获取下载地址 翼狐服务号 ID:yihuxueyuan 子菜单“我的--个人中心”学习已购课程,支持签到领取翼狐币等 GENERAL 课程介绍 CityEngine学习宝典,这是一套完整的CityEngine学习教程,内容涉及CityEngine软件的基本操作、规则文件编写方法、真实城市场景的创https://m.yiihuu.com/c_8474.html
13.2022年四门精品课程建设开发技术服务采购项目附件《电子技术基础与技能》精品在线开放课程建设由采购人提供课程教学设 计规划、教案、习题文本、日常教学制作积累的知识点积件,服务商以项目的形式组织知识点元素材,在技术上协助对课程进行电子化教材文案编制编排、多媒体课件(PPT、音视频、动画等)设 计开发、课程案例电子化设 计开发、微课录制与制作、习题库电子化设http://zfcg.czj.zhangzhou.gov.cn/upload/document/20220829/446533ef778c44efb749b8e54b767f8b.html
14.Exchange数据库灾难恢复视频课程共9课时Windows课程课程简介: 当Exchange Server出现问题,需要从Exchange数据库恢复数据时,需要4步。 (1)从Exchange数据库文件(.edb)导出成PST。 (2)新建Exchange Server。 (3)编写导入脚本。 (4)执行脚本,将第1步中的PST文件导入到Exchange(对应原来每个人的邮箱)。 https://edu.51cto.com/course/3364.html
15.百度智能云音视频点播视频网站解决方案教育课程云点播百度智能云音视频点播提供视频上传、存储、视频加速播放、视频转码等服务,是一站式的视频网站解决方案,满足教育课程云点播、游戏直播回看等不同终端的音视频播放要求。https://www.idcs.cn/baidu/vod
16.Connectv2.5.0破解版–实时视频和聊天消息实时课程会议学课技术网 Connect v2.5.0 破解版 – 实时视频和聊天消息、实时课程、会议、网络研讨会、会议、文件共享https://www.dobunkan.com/server/yuanma/18746
17.录微课视频用什么免费软件APP推荐录微课视频用什么免费软件下载每节课不超过10分钟;视频高清流畅,全程无广告 2、支持离线下载、课程讨论、笔记记录等特色功能 3、服务码农的在线技术手册、面试指南、考试自测宝典 【微信订阅号】 慕课网imooc 【官方微博】 慕课网 【你的指尖,有改变世界的力量】 相信慕课网,更要相信你自己,只要我们一起努力,一定可以让你学到真东西,拿下牛https://www.wandoujia.com/bangdan/555771/