oracle 10g客户端连接11g,生产环境oracle10g升级至11g准备工作

主要有以下的步骤 :

1.new ORACLE_HOME(11g), old ORACLE_HOME (10g)

--这些需要提前提供给客户,作为基本的约定

2.install oracle software 11.2.0.2.0 on production

--总共有7个DB,时间很紧,所以准备要充分

3.apply DB patch additional if needed

--patch详细信息参见 Note:16056267.8

11.2.0.2.10 (Apr 2013) Database Patch Set Update (PSU) Patch:16056267

4.init parameter tuning

--这个也是必需的,主要有三个方面

11g里面可能过期的参数,如user_dump......

11g里面新增加的参数,如diag....,有些需要考虑是否调优。

10g里面调优的隐含参数是否需要保留...

5.OS kernel tuning

--系统级的调优也是必须的。需要找专门的team来提供意见。

6.PET and Production compare

--准生产环境的准备,需要做足前期的测试工作。

7.confirm details with App team if have any concern.

--对于升级过程中的部分问题,如果不能确认,需要找开发或者其他的team来协调。

8.full backup or cold backup

--这个取决于具体的环境实施方案,保证充足的备份很重要,生产系统做cold backup应该很悬了。

9.check if there are crontab running or scheduled.

--这个需要提前考虑,一般的项目都会有系统监控,要保证在升级过程中排除不必要的影响。如果有goldengate同步之类的,也需要提前协调好,保证不会影响。

10.check if all database components are valid

--可以使用如下的sql来

select substr(comp_name,1,40) comp_name, status,

substr(version,1,10) version from dba_registry

order by comp_name;   --组建都应该是valid状态。

11.check if all objects are valid

--检查object状态也应该是valid.

if there are component or objects invalid, need to use utlrp.sql

to recompile

12.check if duplicate objects owned by SYS and SYSTEM Schema

--从dba_objects里查询,保证sys,system下的没有重复的object,,以下是期望的结果,如果有其他的,需要查看metalink文档来处理。Note,1030426.6

OBJECT_NAME OBJECT_TYPE

------------------------------ -------------------

AQ$_SCHEDULES TABLE

AQ$_SCHEDULES_PRIMARY INDEX

DBMS_REPCAT_AUTH PACKAGE

DBMS_REPCAT_AUTH PACKAGE BODY

13.disable custom triggers

--为了排除trigger的导致的ddl影响,建议还是disable custom trigger.

14.Copy Pre-upgrade Information script. to a local folder

--建一个临时的文件夹,把升级所需的脚本拷贝过去。如脚本rdbms/admin/utlu112i.sql 需要从11ghome下rdbms/admin提前拷贝过去。

15.Run Pre-upgrade Information Tool on target database (10g)

--spool一下,做升级前的检查工作。

sqlplus / as sysdba

spool pre_upgrade_info.log

@utlu112i.sql

spool off

16.Check the output of the Pre-Upgrade Information Tool

--这里需要注意warning信息,清空recyclebin,保证timezone file必须是v4,要不升级100%失败。还有要注意部分参数,根据提示进行修改。

17.backup  /etc/oratab,tnsnames.ora,listener.ora           sqlnet.ora,password file, pfile,spfile,profile

--备份必要的文件,作为rollback的备份。

18.Copy Network files to 11g Home and modify the home in listener

--拷贝tnsnames.ora,listener.ora到11g home的对应目录下。

19.Copy password file to 11g Home

--拷贝密码文件

20.Prepare a separate .bash_profile to set 11g environment variables

--profile文件也需要做相应修改。

21.Collect dictionary stats

--使用如下的包来

EXEC DBMS_STATS.GATHER_DICTIONARY_STATS;

22.Stop Listener services of the target database.

--停掉监听,开始升级

23.Shutdown the target database (10g)

--down掉数据库,清空缓存,这样起来以后跑脚本会排出很多干扰,速度也快一些。

24.Set working environment to 11g ORACLE_HOME. Make sure multiple ORACLE HOMEs are not in the PATH variable.

25.Copy spfile to 11g home.

26.stop source(10g) DB,Start the db in nomount,mount mode, and make necessary changes/adjustments in spfile with scope=spfile.

--这一步,需要修改compatible参数,调节一些参数。(之前的步骤进行参数调优的时候准备好的)

最后create spfile from pfile;

27.Shutdown and startup the db in upgrade mode.

--启动数据库,使用spfile,

--startup upgrade

28.Run upgrade script. Exit the session after upgrade.

--这个是最关键的脚本,运行时间也会长一些。,脚本运行完成后,会自动shutfdown immediate

spool upgrade11g2.log

@?/rdbms/admin/catupgrd.sql

Spool off

Exit

29.Verify the log for errors. Ignore “table or view not found” errors

--如果有部分错误,需要检查,如果有些错误如memory issue 不能忽略,需要重新运行脚本

30.Startup the db in normal mode and run post upgrade information tool. Verify the status of each db component and address the failures.

--启动数据库,运行如下的脚本。

spool post_upgrade_info.txt

@?/rdbms/admin/utlu112s.sql

Spool

31.Continue upgrade (new in 11g)

--继续执行脚本,属于post upgrade脚本。

Spool upgrade11g2.log

@?/rdbms/admin/catuppst.sql

Spool off

32.Recompile invalid objects

33.enable custom triggers

--enable之前disable的trigger

34.update /etc/oratab with 11g home

--更改该配置,在某些应用中会用到。

35.rename spfile/pfile from 10g home

--保证10g的参数不被使用,保证不会有错误的操作导致不必要的麻烦。

36.Start Listener services of the target database with 11g HOME.

--确定后启动监听。

37.DBA sanity check(check if mv is able to refresh,db components are valid,check if there are ORA erros from logs)

--DBA先做一些简单的sanity test.保证环境交给客户之前不会有基本的错误。

38.Check the connectivity from client

--然后从客户端进行测试,连接是否正常。

39.Backup of DB after upgrade

--进行必要的备份。

40.upgrade rman catalog if necessary

--如果使用rman做备份恢复,需要升级catalog

41.change crontab

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/359290.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

JBoss BPM Travel Agency的微服务迁移故事

不久前,我们启动了一个规模较大的JBoss Travel Agency演示项目,以展示JBoss BPM Suite的一些更有趣的功能。 我们提供了一系列视频 ,不仅向您展示了如何安装它,项目中各种规则和流程工件的含义,还向您介绍了在实际使…

windows快捷操作

命令行启动或关闭VMWare服务: net start VMwareHostdVMAuthdServiceVMUSBArbService"VMware NAT Service"VMnetDHCP#启动VMware虚拟机服务net start VMwareHostdnet start "VMware NAT Service"net start VMnetDHCPcmd#停止VMvare虚拟机服务net…

oracle 打印值,oracle – 在SQL Developer中打印变量的值

我想打印一个特定变量的值在一个匿名块内。我使用Oracle SQL Developer。我尝试使用dbms_output.put_line。但它不工作。我使用的代码如下所示。SET SERVEROUTPUT ONDECLARECTABLE USER_OBJECTS.OBJECT_NAME%TYPE;CCOLUMN ALL_TAB_COLS.COLUMN_NAME%TYPE;V_ALL_COLS VARCHAR2(5…

【leetcode】Combinations (middle)

Given two integers n and k, return all possible combinations of k numbers out of 1 ... n. For example,If n 4 and k 2, a solution is: [[2,4],[3,4],[2,3],[1,2],[1,3],[1,4], ] 思路:有点像0-1背包问题, 对于从1-n的每一个数字都可以选择放入…

oracle 批量读,Oracle批量读取数据和批量绑定

通常我们获取游标数据是用fetch some_cursor into var1, var2 的形式,自 Oracle 8i 起,Oracle 为我们提供了fetch bulkcollect 来批量取游标中的数据,它能在读取游标中大量数据的时候提升效率,采用bulkcollect可以将查询结果一次性…

java压缩_Java压缩

java压缩在最近的项目中,我们不得不做一些我个人从未真正看过的事情。 压缩。 我们需要拍摄几个文件和图像,将它们压缩并提供给FTP使用,是的,总有一天,感觉确实回到了90年代。 除了过去的FTP之行外,它还是一…

我们的世界

看完记得留言说说你的感想 http://lchml.com/our-world/ 转载于:https://www.cnblogs.com/licheng127/p/4239021.html

eslint php,ESlint操作步骤详解

这次给大家带来ESlint操作步骤详解,ESlint操作的注意事项有哪些,下面就是实战案例,一起来看一下。vue-cli脚手架创建的项目默认使用ESlint规则,启动项目的时候因为各种语法报错,不得不先停下了解一下什么是ESlint&…

FileSystemMap:与文件系统交互的自然方法

作为项目的一部分,我目前正在研究创建FileSystemMap 。 我已经开始了一个非常小的GitHub的项目在这里举办的代码。 本质上,此映射实现将允许用户与其文件系统上的目录进行交互,就好像它是java.util.Map 。 映射中的每个条目将是该目录中的文…

动画原理——绘制正弦函数环绕运动椭圆运动

书籍名称&#xff1a;HTML5-Animation-with-JavaScript 书籍源码&#xff1a;https://github.com/lamberta/html5-animation 1.正弦函数。x位置递增&#xff0c;y位置用sin生成。 这段代码是不需要ball.js的。 代码如下&#xff1a; <!doctype html> <html><hea…

oracle优质图书,经典Oracle图书推荐(之四)_oracle

经典的oracle图书:Oracle High Performance Tuning for 9i and 10g by Gavin PowellBook DescriptionThere are three parts to tuning an Oracle database: data modeling, SQL code tuning and physical database configuration.A data model contains tables and relationsh…

expr命令 linux,Shell expr命令进行整数计算的实现

expr 是 evaluate expressions 的缩写&#xff0c;译为“表达式求值”。Shell expr 是一个功能强大&#xff0c;并且比较复杂的命令&#xff0c;它除了可以实现整数计算&#xff0c;还可以结合一些选项对字符串进行处理&#xff0c;例如计算字符串长度、字符串比较、字符串匹配…

单身数字_完美单身

单身数字我不时遇到一些Java程序员&#xff0c;他们不确定他们应该如何正确实现Singleton模式。 &#xff08;如果您不知道什么是Singleton&#xff0c;请尝试Wikipedia&#xff1a; Singleton模式 &#xff09;。 我并不是在谈论在线程环境中的正确实现。 但是&#xff0c;使用…

linux下bios设置内存电压,系统安装的BIOS设置?

该楼层疑似违规已被系统折叠 隐藏此楼查看此楼要安装系统前&#xff0c; 要为旧系统做好备份工作&#xff0c;为新系统准备了所需的软件之后&#xff0c;接下来的工作就是安装Windows XP了。而安装系统要知道系统安装的BIOS设置&#xff0c; 如果您的硬盘采用了动态分区&#x…

DATEADD(Day, DATEDIFF(Day,0,ShippingTime), 0)

select DATEADD(Day, DATEDIFF(Day,0,GETDATE()), 0),DATEDIFF(Day,0,GETDATE()),GETDATE() 结果&#xff1a; (无列名) (无列名) (无列名)2015-01-30 00:00:00.000 42032 2015-01-30 20:04:57.050 转载于:https://www.cnblogs.com/Unrmk-LingXing/p/4263098.html

linux内存剩余量为什么这么少,为什么我的Linux系统中空闲内存如此之少?

"How come there is only so few free memory on my Linux PC?"Come to same question? No matter how much you put RAM in your motherboard, you quickly notice the free RAM is reduced so fast. Free RAM miscalculation? No!Before answering this, first …

java heroku_Heroku运行Java

java heroku如果您是像我这样的Java迷&#xff0c;那么您有个好消息值得振奋。 Heroku现在运行Java&#xff01; 嗯&#xff0c;与其他流行的“ Web”语言&#xff08;如PHP / RoR&#xff09;不同&#xff0c;Java具有在Web服务器中进行部署和维护的麻烦。 一直以来&#xff0…

Java集合框架练习-计算表达式的值

最近在看《算法》这本书&#xff0c;正好看到一个计算表达式的问题&#xff0c;于是就打算写一下&#xff0c;也正好熟悉一下Java集合框架的使用&#xff0c;大致测试了一下&#xff0c;没啥问题。 import java.util.*; /** * 用来计算表达式* for example: 12*3*(43*1)-3*123/…

关于Ecllipse

一、熟悉Eclipse 1.Eclipse是由IBM公司投资4000万美元开发的集成开发工具。它基于Java语言编写&#xff0c;并且是开放源代码的、可扩展的&#xff0c;也是目前最流行的Java集成开发工具之一。另外&#xff0c;IBM公司捐出Eclipse源代码&#xff0c;组建了Eclipse联盟&#xff…

怎么自学linux操作系统,linux操作系统好学吗_要学什么

描述linux操作系统的基础知识是比较好学的&#xff0c;但是需要我们通过大量地练习来牢记这些基础知识。Linux操作系统依靠其多用户和多任务、跨平台硬件支持、丰富的软件支持、可靠的安全性、良好的稳定性和完善的网络功能的优势吸引了众多用户&#xff0c;企业办公也逐渐使用…