暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

手把手教你升级到Database 19c(1)

甲骨文云技术 2019-12-12
4878

Oracle Database 19c已经发布有一段时间了,我们也在之前的文章中介绍了19c的新特性,您是否准备好将您的数据库升级到19c了呢?小编将与您通过3~4期的时间,与您一同体验各种升级方式。

本次教程使用的是我司Mike大神(Mike Dietrich)编写的教程,您可以通过点击本文下方的“阅读全文”去Mike大神的部落格下载实验用的虚拟机环境。下图为Mike的部落格截图。

教程概要:

1、练习环境搭建

2、生成工作量,生成AWR快照

3、捕获和保存SQL

4、手动数据库升级

5、升级前后性能对比

6、SQL性能分析器

7、SQL计划管理

8、SQL优化建议器

9、数据库自动升级

10、插拔式升级

11、使用Full Transportable Export/Import,技术升级

12、12c PDB插入式升级


如我们刚才所说,您来到本文下方“阅读原文”所在的链接,点击下图红框所示的链接。

请您先安装虚拟机运行环境,并下载下图中所提到的所有虚拟机压缩文件。

关于文件的解压与虚拟机的导入,小编在这里就不再赘述。在云时代,大家都喜欢将虚拟机导入云端环境来运行,不占用本地计算机资源,而且可以7*24运行,这也是为什么现在很多培训机构大量购买云服务,而不再像十年前那样,购买大量高端计算机。本次小编将虚拟机导入Oracle的公有云OCI,创建了一个4 core 60GB的云端环境。如果您没有云端环境,您完全可以使用Oracle VM VirtualBox或者其他您熟悉的虚拟机环境来运行本虚拟机。

本虚拟机的内建环境如下,内含多个版本的数据库,我们将通过后面的练习,将这些低版本的数据库升级到19.3。


下面是本实验的操作视频,将在视频后面为您分步讲解。

我们在后面的实验当中,需要比较升级前和升级之后的数据库性能,我们在当前实验当中,使用hammerDB生成一些工作量,并生成相应的快照,为后续创建各种报告做准备。在这个实验中,我们操作的数据库是upgr(虚拟机环境已经为您建好该数据库)。

第一步:设定环境变量并创建快照

在本套实验环境当中,我们为大家创建了多个概要文件,概要文件中对环境变量进行了统一设置,如果您对概要文件的内容感兴趣,您可以自己通过文本编辑器进行查看。请按照顺序执行下图中用红色框标记的脚本,并记录生成的快照号码,我们当前生成的快照号码是92.

第二步:启动HammerDB载入工作量脚本并创建测试用户

HammerDB是一个工作量生成工具(HammerDB is the leading benchmarking and load testing software for the worlds most popular databases supporting Oracle Database, SQL Server, IBM Db2, MySQL, MariaDB, PostgreSQL, and Redis.),它是一个可视化的工具,您可以在本虚拟机当中的/home/oracle路径下,通过执行 ./hammer.sh启动它。小编使用的是Oracle公有云环境,所以我会使用VNC来连接远程的图形界面。软件启动后的样子如下图:

请双击下图中箭头所指的Load,载入预先设定好的脚本。

然后请双击下图中的Create,创建测试用户。

第三步:执行SQL捕获脚本

我们在HammerDB中加载工作量之前,先来到SQL Plus执行工作量捕获脚本。

这个脚本执行之后,会hang在那里,等待你去加载工作量。我们回到hammerDB,双击下图中的run,加载工作量。

您可以点击下图中箭头所指的监控按钮,观察工作量情况。

当您看到下图中红色框中的数字都是1时,表明工作量执行完毕,您也会在后面看到执行状态下面出现绿色的对号。您可以将HammerDB关闭。

您这时,可以回到刚才的SQL Plus,查看SQL捕获情况,如果程序没有执行完毕,请不要着急,请耐心等待它的执行,直到看到如下结果,这个等待时间会根据您的机器配置不同而不同,小编的云环境没有出现等待,在关闭HammerDB之后,来到SQL Plus就看到执行完毕的界面。

第四步:我们在执行完工作量之后,在生成一个快照


请执行下图红色框中的代码,并记录生成快照的编号,我们当前的编号为93。

到这里,我们“生成工作量,生成快照”的实验就完成了。

在这个实验当中,我们查看捕获的SQL Tuning Set,我们通过两种方法进行查看。我们在本实验当中,也要将AWR报告导出去,我们在数据库升级时,经常要将AWR报告导出,以备日后查阅,请先观看本实验的视频,然后将为您做分步介绍。

第一步:通过脚本查询之前生成的SQL Tuning Set

执行下图中红色框中的脚本,您将看到目前捕获的SQL Tuning Set的信息以及快照信息。

第二步:通过SQL语句查询SQL Tuning Set讯息

请执行下图中红色框所示语句,查询SQL Tuning Set的讯息。

第三步:导出AWR

我们在数据库升级时,经常要导出AWR报告,以备日后使用。关于AWR的导出,大家都不会陌生,我们在本实验环境当中,事先创建了目录对象,名字叫做DATA_PUMP_DIR,我们稍后就将导出的结果放入这个目录对象当中。请按照如下图片中的提示进行操作。

首先执行下图中红色框所示脚本。并在被问询输入dbid时,直接按回车键,这将使用默认的database id。

接下来,系统提示我们输入要列出的快照天数,我们输入数字1.

接下来输入AWR的起始快照号,请注意这两个快照号码中,不能跨越数据库重启,具体原因请查询网络或者参加Oracle University数据库管理员课程。

接下来请选择报告存储位置,系统帮我们列出了可用的目录对象名称。

接下来被询问报告的名称,您可以给出自己喜欢的名称或者向我一样,直接按回车键,使用系统给出的名称。

稍等片刻,报告将很快生成完毕。生成后的界面如下。

到这里,我们本小节实验完毕。

在本小节实验中,我们将11.2.0.4的UPGR数据库,升级到19.3。下面视频是升级的操作录像,升级具体执行时间会根据您的硬件环境不同而不同,一般会在20-40分钟左右。

在这个实验中,大致分为如下几个步骤:

  • 升级前准备

  • 拷贝参数文件

  • 升级

  • 升级后调整

  • 修改时区

  • 修改兼容版本号

  • 修改oratab



第一步:执行升级前准备脚本

在这个脚本当中,将显示数据库当前信息,升级前的必要准备。请在命令行中执行下图中红色框所示脚本。

第二步:执行OLS PRE UPGRADE 脚本,看看是否有错误出现

请来到SQL Plus执行下图中红色框所示脚本。

如果顺利的话,您将看到如下结果,如果出现错误,请查阅文档进行修复。

第三步:修改数据库参数(processes和SGA)并执行升级前修复脚本

在修改数据库参数时,您可以根据自己的实际情况进行修改,如果您是在笔记本上做练习,您可以将SGA修改为1GB。如果您有更好的测试环境,也可以适当调整SGA及processes参数。在修改完参数之后,请将spfile进行导出,最后执行修复脚本。请执行下图中红框所示的4条语句。

第四步:关闭数据库、复制初始化参数文件并创建密码文件

因为这些操作都是基础操作,您只需按执行图中红框内的代码即可。

第五步:创建spfile并启动数据库到upgrade模式,等待升级

下图中在设定完环境变量之后,启动sqlplus(下图中没有在“1”和“2”之间标记出来,但请执行)。


第五步:退出SQL Plus,执行升级动作

升级的动作会消耗比较长的时间,一般情况下会用20-50分钟的时间完成。您只需要执行下图中红色框所示脚本即可。这里额外要和大家说明的是,因为本实验环境中包含多个数据库,环境变量也有好多不同的设定。建议您按照本文中的顺序执行,避免出现因为环境变量设定错误而导致升级失败。当然,如果您已经清楚我们在文章开头所示的本实验环境的结构,您完全可以随时新开Terminal并按照自己的喜好执行任何您认为正确的脚本。

经过差不多20分钟的等待,您将看到如下结果,表示脚本执行成功。

第六步:清理无效对象并执行升级后修复脚本

首先设定upgr19环境变量,然后在SQL Plus当中启动数据库,并执行清理无效对象的脚本以及升级后的修复脚本。清理无效对象的脚本会占用大量的CPU资源,并且执行大概5-10分钟左右。

升级后的修复脚本也将执行大概5分钟左右。

当脚本执行完毕,您将看到下面的结果。

第七步:修改时区, 将TZ v14 修改为 TZ v32

在这个步骤中,我们将执行3个脚本,其中第3个脚本将消耗相对较长的时间,以为里面涉及到多次的数据库重启。

第八步:修改兼容版本号

我们通过alter system语句修改兼容版本号,然后重启数据库。

首先退出刚才的SQL Plus,重新登录。

第九步:修改oratab

这是我们升级的最后一步,将/etc/oratab中的

UPGR:/u01/app/oracle/product/11.2.0.4:Y

修改为:

UPGR:/u01/app/oracle/product/19:Y

修改后的结果为:

到此,我们手动升级的实验全部完成了。因为篇幅的限制,我们将在后面的文章中完成其他实验。期待您的关注,谢谢。

扫描下方QR Code即刻预约ADW演示

编辑:殷海英

最后修改时间:2020-01-13 22:21:51
文章转载自甲骨文云技术,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论