startup migrate
=> Used to upgrade a database till 9i.
See the step 11 from the 9.2 manual upgrade guide :
http://download-east.oracle.com/docs/cd/B10501_01/server.920/a96530/upgrade.htm#1009472
=> Used to downgrade a database till 9i.
See the step 5 from the 9.2 downgrade guide :
http://download-east.oracle.com/docs/cd/B10501_01/server.920/a96530/downgrad.htm#248958
=> Used to downgrade a database since 10g.
See the step 18 from the 10.2 downgrade guide :
http://download-east.oracle.com/docs/cd/B19306_01/server.102/b14238/downgrade.htm#sthref415
startup upgrade
=> Used to upgrade a database since 10g.
See the step 7 from the 10.2 manual upgrade guide :
http://download-east.oracle.com/docs/cd/B19306_01/server.102/b14238/upgrade.htm#CACGGHJC
startup migrate、startup upgrade 区别
you can downgrade db using startup migrate since 10g.
you can upgrade db using startup upgrade since 10g.
you can upgrade/downgrade db using startup migrate till 9i.
在9i,无论升级/降级 数据库都是startup migrate
10g后增加了upgrade参数,升级可直接用startup upgrade,降级仍是startup migrate.
--打完patch(OUI升级,中间需要用root执行一个脚本)后,重建数据字典视图脚本catpatch.sql
为了保证系统的的数据词典的完整性和有效性,最好的打patch后在migrate状态下运行catpatch.sql
sql> shutdown immediate
sql> startup migrate (10g为startup upgrade)
sql> @?/rdbms/admin/catpatch.sql (10g为@?/rdbms/admin/catupgrd.sql )
sql> shutdown immediate
sql> startup
为加快速度,可临时调大这2个参数:
show parameter shared_pool_size
show parameter large_pool_size
重建完数据字典视图后的提示
DOC>#######################################################################
DOC>#######################################################################
DOC>
DOC> The above PL/SQL lists the SERVER components in the upgraded
DOC> database, along with their current version and status.
DOC>
DOC> Please review the status and version columns and look for
DOC> any errors in the spool log file. If there are errors in the spool
DOC> file, or any components are not VALID or not the current version,
DOC> consult the Oracle Database Upgrade Guide for troubleshooting
DOC> recommendations.
DOC>
DOC> Next shutdown immediate, restart for normal operation, and then
DOC> run utlrp.sql to recompile any invalid application objects.
DOC>
DOC>#######################################################################
DOC>#######################################################################
--执行完catpatch.sql,没有错误后,重启数据库,再编译无效对象,脚本utlrp.sql
$ sqlplus '/as sysdba' @?/rdbms/admin/utlrp.sql
utlrp.sql脚本可以在数据库运行的状态下执行以编译、数据库中的invalid对象.
oracle建议在对数据库进行迁移、升级、降级后都运行一遍utlrp.sql以编译无效对象。