OCA/OCP Oracle 数据库12c考试指南读书笔记:第29章: Upgrading Oracle Database Software and Migrating Data

本文主要是介绍OCA/OCP Oracle 数据库12c考试指南读书笔记:第29章: Upgrading Oracle Database Software and Migrating Data,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

从11.2.x开始,主版本升级或应用patchset都需要新的Oracle Home。升级数据库软件同时,也需升级数据库,或将数据库迁移到新的数据库软件。

描述升级方法

升级包括升级数据库软件和数据数据库两步。两者最终必须版本一致。软件升级通过OUI,数据库升级通过DBCA或手工。

软件升级

软件版本可查询v$version:

SQL> select banner_full from v$version;BANNER_FULL
------------------------------------------------------------------------------------------------------------------------
Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production
Version 19.3.0.0.0

查询每一个版本都安装了什么:

SQL> select comp_id, version from dba_registry;COMP_ID                        VERSION
------------------------------ ------------------------------
CATALOG                        19.0.0.0.0
CATPROC                        19.0.0.0.0
RAC                            19.0.0.0.0
JAVAVM                         19.0.0.0.0
XML                            19.0.0.0.0
CATJAVA                        19.0.0.0.0
APS                            19.0.0.0.0
XDB                            19.0.0.0.0
OWM                            19.0.0.0.0
CONTEXT                        19.0.0.0.0
ORDIM                          19.0.0.0.0
SDO                            19.0.0.0.0
XOQ                            19.0.0.0.0
OLS                            19.0.0.0.0
DV                             19.0.0.0.015 rows selected.

12c11g是市场标签。
patchset可独立安装,之中含有OUI。patchset需安装到新的Oracle Home,为使用新的软件,需重设环境变量。OUI可检测到之前的所有安装,因都在OUI Inventory中,然后提升用户选择数据库,然后OUI启动DBUA进行升级。

数据库升级

DBUA的好处是图形化,自动化和简单。但由于是串行执行,时间比手工升级长。
DUBA支持单实例和RAC,支持ASM。
手工升级包括以下步骤:

  • SYSTEM 和SYSAUX表空间空间检查
  • 调整老的或过期的参数
  • 升级数据字典和安装的组件
  • 重编译代码

描述数据迁移方法

数据库升级有两个限制:

  1. 同一平台
  2. 在升级期间不能实施新特性或重新组织

简单来说,只是二进制代码变了。而数据库迁移可突破这些限制。
迁移是将数据从一个数据库移动到另一数据库的过程,迁移通常宕机时间比升级长。
迁移相对于升级的另一个优点是有一个干净的数据字典。

数据迁移常用Data Pump,因为其可跨平台,字符集可不同,版本支持范围广,支持子集迁移,Data Segment可重新组织。
10g之前的数据库可使用imp/exp。在这里插入代码片

描述升级过程

升级技术上简单,但可能涉及应用改变,因此测试非常重要,Testing is Vital
升级通常包括6个步骤:

  1. 准备升级。选择升级方法,安装新的Oracle Home,制定测试计划,选择需实施的新功能
  2. 升级测试数据库。在生产系统数据库的克隆上测试升级过程,记录宕机时间
  3. 测试升级后的数据库。测试应用的性能和功能,步骤2和3可能往复多次,直到问题解决。
  4. 准备生产数据库。停止生产数据库上的活动,做全备
  5. 升级生产数据库。执行前面演练过的过程,做全备。
  6. 调优升级后的数据库。监控性能并调优。

使用DATA PUMP迁移数据

Data Pump支持单个表,schema,不同对象类型,也支持整库。
Data Pump可以跨平台,应为对象以逻辑方式存储。
Data Pump默认会自动建立表空间,schema和对象,不过这些也可以预先建立。
源和目标端都需要预留空间用于Data Pump导出文件,同样传输需要时间。不过也可以用不落地的network直连模式。直连模式需要目标库到源库的Database Link,并需要DATAPUMP_EXP_FULL_DATABASE权限。直连模式不能用direct path,因此性能不一定好。

create database link orcla connect to system identified by password using 'orcla';
impdp system/password network_link=orcla full=y

整库导入只包括用户数据。这也意味着目标端通常需要预先删除用户表空间,示例用户等。

这篇关于OCA/OCP Oracle 数据库12c考试指南读书笔记:第29章: Upgrading Oracle Database Software and Migrating Data的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/677587

相关文章

MySQL数据库双机热备的配置方法详解

《MySQL数据库双机热备的配置方法详解》在企业级应用中,数据库的高可用性和数据的安全性是至关重要的,MySQL作为最流行的开源关系型数据库管理系统之一,提供了多种方式来实现高可用性,其中双机热备(M... 目录1. 环境准备1.1 安装mysql1.2 配置MySQL1.2.1 主服务器配置1.2.2 从

SpringBoot基于注解实现数据库字段回填的完整方案

《SpringBoot基于注解实现数据库字段回填的完整方案》这篇文章主要为大家详细介绍了SpringBoot如何基于注解实现数据库字段回填的相关方法,文中的示例代码讲解详细,感兴趣的小伙伴可以了解... 目录数据库表pom.XMLRelationFieldRelationFieldMapping基础的一些代

深入理解Mysql OnlineDDL的算法

《深入理解MysqlOnlineDDL的算法》本文主要介绍了讲解MysqlOnlineDDL的算法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小... 目录一、Online DDL 是什么?二、Online DDL 的三种主要算法2.1COPY(复制法)

mysql8.0.43使用InnoDB Cluster配置主从复制

《mysql8.0.43使用InnoDBCluster配置主从复制》本文主要介绍了mysql8.0.43使用InnoDBCluster配置主从复制,文中通过示例代码介绍的非常详细,对大家的学习或者... 目录1、配置Hosts解析(所有服务器都要执行)2、安装mysql shell(所有服务器都要执行)3、

k8s中实现mysql主备过程详解

《k8s中实现mysql主备过程详解》文章讲解了在K8s中使用StatefulSet部署MySQL主备架构,包含NFS安装、storageClass配置、MySQL部署及同步检查步骤,确保主备数据一致... 目录一、k8s中实现mysql主备1.1 环境信息1.2 部署nfs-provisioner1.2.

MySQL中VARCHAR和TEXT的区别小结

《MySQL中VARCHAR和TEXT的区别小结》MySQL中VARCHAR和TEXT用于存储字符串,VARCHAR可变长度存储在行内,适合短文本;TEXT存储在溢出页,适合大文本,下面就来具体的了解... 目录一、VARCHAR 和 TEXT 基本介绍1. VARCHAR2. TEXT二、VARCHAR

MySQL中C接口的实现

《MySQL中C接口的实现》本节内容介绍使用C/C++访问数据库,包括对数据库的增删查改操作,主要是学习一些接口的调用,具有一定的参考价值,感兴趣的可以了解一下... 目录准备mysql库使用mysql库编译文件官方API文档对象的创建和关闭链接数据库下达sql指令select语句前言:本节内容介绍使用C/

mybatis直接执行完整sql及踩坑解决

《mybatis直接执行完整sql及踩坑解决》MyBatis可通过select标签执行动态SQL,DQL用ListLinkedHashMap接收结果,DML用int处理,注意防御SQL注入,优先使用#... 目录myBATiFBNZQs直接执行完整sql及踩坑select语句采用count、insert、u

MySQL之搜索引擎使用解读

《MySQL之搜索引擎使用解读》MySQL存储引擎是数据存储和管理的核心组件,不同引擎(如InnoDB、MyISAM)采用不同机制,InnoDB支持事务与行锁,适合高并发场景;MyISAM不支持事务,... 目录mysql的存储引擎是什么MySQL存储引擎的功能MySQL的存储引擎的分类查看存储引擎1.命令

使用Node.js和PostgreSQL构建数据库应用

《使用Node.js和PostgreSQL构建数据库应用》PostgreSQL是一个功能强大的开源关系型数据库,而Node.js是构建高效网络应用的理想平台,结合这两个技术,我们可以创建出色的数据驱动... 目录初始化项目与安装依赖建立数据库连接执行CRUD操作查询数据插入数据更新数据删除数据完整示例与最佳