ORACLE从10.2.0.1.0升级至10.2.0.4.0
1.用sqlplus登陆查看机子的orale版本,本机为10.2.0.1.0,我们将为它升级到10.2.0.4.0
2.下载升级补丁包
补丁包名称p6810189_10204_Win32(看准要下win版本的而非linux或其它)
下载地址:ftp://updates.oracle.com/6810189/p6810189_10204_Win32.zip
3. 关闭数据库:
SQL> CONNECT SYS AS SYSDBA(要以系统管理员登陆否则没权限关闭数据库)
Enter password: SYS_password
SQL> SHUTDOWN
也可在服务中关闭
4.闭关监听及其他服务
也可通过下面命令关闭(注意数据库路径):
关闭所有可能访问数据库的工具, 例如 Oracle Enterprise Manager Database Control or iSQL*Plus:
C:>E:\oracle\product\10.2.0\db_1\bin\emctl stop dbconsole
C:>E:\oracle\product\10.2.0\db_1\bin\isqlplusctl stop
C:> lsnrctl stop
C:> sqlplus /NOLOG
SQL> CONNECT SYS AS SYSDBA
Enter password:SYS_Password
SQL> SHUTDOWN
5.备份系统
备份内容包括: Oracle Inventory, Oracle 10g home 和 Oracle 10g Database
6.安装升级包软件
以具有操作系统管理权限的用户登陆系统.
解压升级包,运行setup.exe,画面如下:
在欢迎画面单击“下一步”.
在指定主目录详细信息画面,选择你想升级的Oracle home,或者选择“路径”, 然后单击“下一步”。
“下一步”.
不启用Oracle Configuration Manager, 单击“下一步”。
单击“安装”.
进行安装,安装完成后如下画面:
在安装结束画面, 单击“退出”, 然后确认退出 Oracle Universal Installer,至此,ORACLE升级包软件安装结束
7. 运行脚本升级数据库
如果只安装了升级包,没有进行数据库字典信息升级,启动数据库将报ORA-01092 ORACLE 例程终止。强行断开连接。(这和Oracle9i有点不同,对Oracle9i做了升级后,不升级数据库字典信息,仍然可以启动数据库使用,但对exp/imp,RMAN之类的工具不能使用)。
一.开启所有数据库服务
Sqlplus /nolog —登陆
SQL>CONNECT /AS SYSDBA —以管理者连接到数据库
SQL>START UPGRADE如图:
接着:
SQL> @?/rdbms/admin/utlu102i.sql(“?”为oracle 路径)
二、进行数据库字典
启动监听器:lsnrctl start
sqlplus /NOLOG
SQL> CONNECT / AS SYSDBA
STARTUP UPGRADE
SQL> SPOOL patch.log
SQL> @?/rdbms/admin/catupgrd.sql
SQL> SPOOL OFF
检查 patch.log 文件,如果有问题,重新运行catupgrd.sql。
如图:
运行后升级可能需要将近一个小时
三、重启动数据库:
SQL> SHUTDOWN IMMEDIATE
SQL> STARTUP
四、运行utlrp.sql脚本重新编译无效PL/SQL包
SQL> @?/rdbms/admin/utlrp.sql 如图:
五、运行命令检查所有组件是否升级成功:
SQL> SELECT COMP_NAME, VERSION, STATUS FROM SYS.DBA_REGISTRY;
所有输出为 VALID表示升级成功.如图:
最后再登陆我们原先的数据库试试看是否已能连接,下面是我们成功后的截图:
如上图版本已为10.2.0.4,升级成功

38 comments
Leave a reply