Linux下升级Oracle 10 |
发布时间: 2012/8/13 16:35:42 |
环境:虚拟机 OS: Linux 5 Oracle 升级前版本: 10.2.0.0.1 先关闭数据库和监听 然后杀掉所有的Oracle进程 ps -ef |grep Oracle |grep -v grep |grep -v ef kill -9 进程号 然后解压安装包,将安装包改成用户为Oracle用户所有,之前已是就不用改了. chown -R Oracle:oinstall Disk1 我在运行runInstaller时报子目录一个oui权限错误. 所以我把该软件包全部改成可执行. chown -R 755 Oracle:ointsll Disk1 然后确保Oracle用户能打开图形界面,可用root用户运行 xhost + 然后以Oracle用户执行 ./opt/soft/Disk1/runInstaller 出现图形界面后和windows上一样,选择Oracle_home 只有一个数据库的话默认即可. 完了最后会让你以root用户运行一个root.sh的脚本, 该脚本会提示是否覆盖已存在的目录,默认为否即可. 安装后以upgrade方式打开数据库及监听.(否则报704错误) 以sys用户登录.检查system表空间情况. select tablespace_name, sum(bytes)/(1024*1024) as free_space from dba_free_space where tablespace_name = 'SYSTEM' group by tablespace_name; 如果该值小于50,则需要加大SYSTEM表空间;不建议使用resize方式而是使用添加文件的方式. alter tablespace system add datafile '/opt/app/oradata/orcl/system02.dbf'size 300m; 4).检查shared_pool_size和java_pool_size大小,可适当增大.否则更新脚本因pool空间不够而无法升级成功. 如果启用自动sga管理,保证sga_max_size和sga_target在400M以上. 5). 重启数据库, 开始运行升级脚本,执行catupgrd.sql是个很耗时的过程.内存足够的话运行时间半个小时左右,建议在运行期间关闭所有其它相关的运行程序,另外最好有200M的多余内存空间 shutdown immediate STARTUP upgrade spool /opt/app/patch.log @$Oracke_Home/rdbms/admin/catupgrd.sql SPOOL OFF 检查 /opt/app/patch.log是否有报错.如有必要可重新运行. 运行utlrp.sql以重新编译所有无效的PL/SQL程序包。 spool /opt/app/utlrp.log @$Oracke_Home/rdbms/admin/utlrp.sql spool off; 检查执行情况. utlrp.sql,catupgrd.sql,utlu102i.sql 执行没有按照先后顺序,也升级成功,不知道在后续的应该中是否有问题。 7).根据实际情况调整SGA shutdown immediate; STARTUP; 8).查看升级结果 select * from v$version; column comp_name format a30; column version format a20 select comp_name, status, substr(version,1,10) as version from dba_registry; 本文出自:亿恩科技【www.enkj.com】 |