静默升级oracle的方法步骤是什么

技术静默升级oracle的方法步骤是什么本篇内容主要讲解“静默升级oracle的方法步骤是什么”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“静默升级oracle的方法步骤是什

本篇内容主要讲解"静默升级神谕的方法步骤是什么",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"静默升级神谕的方法步骤是什么"吧!

1、11.2.0.1环境(待升级数据库)

从v $中选择SqL版本;

旗帜

-

Oracle database 11 genterpriseeditionrelease 11。2 .0 .1 .0-64位产量

PL/SQL release 11。2 .0 .1 .0-生产

核心11。2 .0 .4 .0生产

tns forlinx :版本11 .2 .0 .1 .0-生产

nlsrtlversion 11。2 .0 .1 .0-生产[root@localhost~]#su-oracle

[Oracle @ localhost ~]$ cat。bash _ profile

exportORACLE_SID=orcl

导出ORACLE _ BASE=/u01/app/ORACLE

导出ORACLE _ HOME=$ ORACLE _ BASE/product/11。2 .0/db _ 1

导出LD _ LIBRARY _ PATH=$ ORACLE _ HOME/lib :/lib :/usr/lib

导出类路径=$ ORACLE _ HOME/Jree : $ ORACLE _ HOME/jlib : $ ORACLE _ HOME/RDBMS/jlib

导出路径=$ ORACLE _ HOME/bin : $路径: $ HOME/bin

aliassql plus=' rlwrappsql plus '

2、升级前的准备工作

2.1、 备份数据库

升级数据库是一个有风险的过程,需要仔细规划和慎重处理。首先要做数据库的完全备份,备份的内容包括数据文件,控制文件,归档文件,日志文件,参数文件,密码文件等。可以备份一下整个ORACLE_HOME目录,如果升级有问题,还可以还原回来。备份的方法可以使用倾销数据泵塔尔曼等。

如:RMAN全备

[Oracle @ localhost ~]$ export Oracle _ SID=orcl

[Oracle @ localhost ~]$ rmantarget/

rmanbackupddatabase格式'/home/Oracle/rmanbak/df _ % t _ % s _ % p . bak ';备份老的ORACLE_HOME和神谕库存

[Oracle @ localhost ~]$ tarcvfp product。焦油。gz/u01/app/Oracle/

[Oracle @ localhost ~]$ tarcvfporainventory。焦油。gz/u01/app/ora inventory/

2.2、干净的关闭数据库

sqlshutdowityy;

2.3、关闭数据库的监听

在数据库的升级中,会对数据库的监听文件做重新的配置,建议正常的关闭监听,如下:

[Oracle @ localhost ~]$ lsnrctlstop

[Oracle @ localhost ~]$ netstat-an | grep 1521

2.4、关闭OEM

在升级中需要关闭EM,

[Oracle @ localhost ~]$ emctlstopdbconsole

[Oracle @ localhost ~]$ netstat-an | grep 1158

2.5、不对数

据库的任何原有文件做操作   

    本人在升级中,编辑数据库的监听文件,导致配置监听和EM错误,故不对数据库的任何原有文件做操作。

3、安装oracle 11.2.0.4软件包

    把oracle 11.2.0.4的安装包上传到/home/oracle目录下,解压后得到database目录。

[oracle@localhost ~]$ ls
p13390677_112040_Linux-x86-64_1of7.zip   p13390677_112040_Linux-x86-64_2of7.zip
[oracle@localhost ~]$ unzip p13390677_112040_Linux-x86-64_1of7.zip
[oracle@localhost ~]$ unzip p13390677_112040_Linux-x86-64_2of7.zip
[oracle@localhost ~]$ ls
database

    开始安装数据库软件11.2.0.4。

[oracle@localhost ~]$ cd database
[oracle@localhost ~]$./runInstaller -silent -debug -force -ignorePrereq \
DECLINE_SECURITY_UPDATES=true \
oracle.install.option=INSTALL_DB_SWONLY \
UNIX_GROUP_NAME=oinstall \
INVENTORY_LOCATION=/u01/app/oraInventory \
ORACLE_HOME=/u01/app/oracle/product/11.2.0.4/dbhome_1 \
ORACLE_BASE=/u01/app/oracle \
oracle.install.db.InstallEdition=EE \
oracle.install.db.DBA_GROUP=dba \
oracle.install.db.OPER_GROUP=oinstall

     说明:INVENTORY_LOCATION可以和老版本共用一个目录。ORACLE_BASE和老版本保持一样,ORACLE_HOME指向了一个新的目录11.2.0.4/dbhome_1(以前是11.2.0/db_1)。

     不过,这些目录都是可以随意指定,我上面做是只是为了版本管控方便。

    安装过程大概需要15分钟左右(根据机型配置时间也不同),安装过程中有警告[WARNING] 时需要安装一些i386 的包。查看log安装即可。

    出现以下字样表示升级成功。

As a root user, execute the following script(s):
        1. /u01/oracle/app/product/11.2.0.4/dbhome_1/root.sh
Successfully Setup Software.

    切换到root用户执行脚本。

[root@localhost ~]# /u01/oracle/app/product/11.2.0.4/dbhome_1/root.sh

4、配置新环境变量,拷贝参数文件和监听文件

4.1、配置新环境变量

[oracle@localhost ~]$ whoami 
oracle
[oracle@localhost ~]$ cat .bash_profile 
export ORACLE_SID=orcl
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=$ORACLE_BASE/product/11.2.0.4/dbhome_1
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib
export CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib
export PATH=$ORACLE_HOME/bin:$PATH:$HOME/bin
alias sqlplus='rlwrap sqlplus'

    上面看到,新环境变量和老环境变量相比,我只修改了一个参数:

新参数:ORACLE_HOME=$ORACLE_BASE/product/11.2.0.4/dbhome_1
老参数:ORACLE_HOME=$ORACLE_BASE/product/11.2.0/db_1

    
注意:在10g以后,一般情况下环境变量中没有必要设置LD_LIBRARY_PATH,但是一旦将ORACLE_HOME迁移到其他目录,则环境变量中还需要添加这个变量。

    source一下后,环境变量就指向新安装的11.2.0.4位置了。

[oracle@localhost ~]$ source .bash_profile
[oracle@localhost ~]$ env  |grep ORA
ORACLE_SID=orcl
ORACLE_BASE=/u01/app/oracle
ORACLE_HOME=/u01/app/oracle/product/11.2.0.4/dbhome_1

4.2、修改/etc/oratab内容为最新位置

[oracle@localhost ~]$ vim /etc/oratab
orcl:/u01/app/oracle/product/11.2.0.4/db_1:N

4.3、 将参数文件copy到新的目录下

[oracle@localhost ~]$ cd /u01/app/oracle/product/11.2.0/db_1/dbs/
[oracle@localhost dbs]$ cp -a * /u01/app/oracle/product/11.2.0.4/dbhome_1/dbs/

4.4、 拷贝监听TNS配置文件到新的目录下

[oracle@localhost admin]$  cd /u01/app/oracle/product/11.2.0/db_1/network/admin/
[oracle@localhost dbs]$ cp -a * /u01/app/oracle/product/11.2.0.4/dbhome_1/network/admin

4.5、启动监听

    先修改新位置下的listener.ora里面的路径,然后启动监听。

[oracle@localhost admin]$ lsnrctl start

5、升级数据库

    要注意退出oracle用户重新su - oracle下,然后sqlplus能看到11.2.0.4.0字样才行。

[oracle@19_mysql-slave ~]$ sqlplus / as sysdba
SQL*Plus: Release 11.2.0.4.0 Production on Mon Mar 30 12:10:30 2020
Copyright (c) 1982, 2013, Oracle.  All rights reserved.
Connected to an idle instance.
SQL> startup upgrade
ORACLE instance started.
Total System Global Area 1603411968 bytes
Fixed Size        2253664 bytes
Variable Size     1006636192 bytes
Database Buffers    587202560 bytes
Redo Buffers          7319552 bytes
Database mounted.
Database opened.
SQL> @$ORACLE_HOME/rdbms/admin/catupgrd.sql   ---该脚本会运行30分钟左右

    以上catupgrd.sql脚本整整运行了30分钟,执行完之后会shutdown immediate数据库。这个时候我们重启数据库即可。

[oracle@localhost admin]$ sqlplus /nolog
SQL> conn / as sysdba
SQL> startup
SQL>  select * from v$version;
BANNER
--------------------------------------------------------------------------------
Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production
PL/SQL Release 11.2.0.4.0 - Production
CORE    11.2.0.4.0      Production
TNS for Linux: Version 11.2.0.4.0 - Production
NLSRTL Version 11.2.0.4.0 - Production

6、运行utlrp.sql编译失效对象

    检查无效对象:

SQL> select * from dba_objects where status !='VALID';
SQL> SELECT count(*) FROM dba_objects WHERE status='INVALID';

    运行utlrp.sql编译失效对象。

SQL> @?/rdbms/admin/utlrp

    该脚本耗时约为3分钟左右。至此数据库已经升级完成。

    最后,重启数据库没有问题就是升级成功了。

7、更新数据库服务脚本

 将/u01/app/oracle/product/11.2.0.4/dbhome_1/bin/下的dbstartdbshutORACLE_HOME_LISTNER=$1改为$ORACLE_HOME

#ORACLE_HOME_LISTNER=$1
ORACLE_HOME_LISTNER=$ORACLE_HOME

8、升级后的检查确认

SQL> select status from v$instance;
STATUS
  
------------
OPEN  #注意,成功打开数据库后,这里将是OPEN,而非OPEN MIGRATE
SQL> select * from v$version;
BANNER
--------------------------------------------------------------------------------
Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production
PL/SQL Release 11.2.0.4.0 - Production
CORE   11.2.0.4.0 Production
TNS for Linux: Version 11.2.0.4.0 - Production
NLSRTL Version 11.2.0.4.0 - Production

9、升级成功后需重建EM(没有EM可忽略该步)

手工创建EM资料库:

####emca -repos drop
[oracle@localhost admin]$ emca -reposdrop
####emca -repos create
 
[oracle@localhost admin]$ emca -reposcreate
 
###emca -config dbcontrol db
[oracle@localhost admin]$ emca-config dbcontrol db

到此,相信大家对“静默升级oracle的方法步骤是什么”有了更深的了解,不妨来实际操作一番吧!这里是网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/68675.html

(0)

相关推荐

  • Python源代码的编制技巧是什么

    技术Python源代码的编制技巧是什么本篇文章为大家展示了Python源代码的编制技巧是什么,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。下面进行详细说明Python源代码的编程

    攻略 2021年10月28日
  • 北京名胜古迹介绍,北京十大旅游区你知道有哪些

    技术北京名胜古迹介绍,北京十大旅游区你知道有哪些北京历史悠久,是世界著名的历史文化名城,又是举世瞩目的现代化都市,北京的旅游资源极为丰富,到北京旅游令人向往北京名胜古迹介绍。北京旅游,首推故宫博物院,这是北京旅游的首选目

    生活 2021年10月28日
  • 日加个成念什么,“日”下面加“成”念什么

    技术日加个成念什么,“日”下面加“成”念什么晟日加个成念什么:chéng 或sheng 多音字 前面的表示姓氏 后者表示光,亮。晟 shèng〈形〉,光明炽盛 [bright]昂头冠三山,俯瞰旭日晟。(朝阳光明炽盛。)—

    生活 2021年10月19日
  • leetcode滑动窗口(leetcode滑动窗口万能公式)

    技术LeetCode怎样找出滑动窗口的最大值小编给大家分享一下LeetCode怎样找出滑动窗口的最大值,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一

    攻略 2021年12月15日
  • win10组策略怎么打开,win10组策略打不开怎么办

    技术win10组策略怎么打开,win10组策略打不开怎么办1、打开电脑win10组策略怎么打开,在win10系统桌面上的空白处鼠标右键点击新建,然后点击新建文本文档选项;2、之后电脑桌面就会显示新建文本文档,然后双击打开

    生活 2021年10月30日
  • PHP TronTool开发包有哪些特性

    技术PHP TronTool开发包有哪些特性本篇内容主要讲解“PHP TronTool开发包有哪些特性”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“PHP TronTool开

    攻略 2021年11月26日