92-10g升级与降级_环境变量_PFILE

DBUA及手工升级,DownGrade,环境变量、PFILE及手工建库脚本。尝试过9.2.0.4,升级为10.2.0.4,降级为9.2.0.6,再手工升级为10.2.0.4----记录一下

[@more@]

安装数据库9.2并创建数据库(后附环境变量及建库脚本)

安装10.2.0.1.0软件

DBUA方式升级:

1、在9.2profile下将主库以升级方式启动

SQL> STARTUP UPGRADE;startup migrate(如果是大版本升级要用这个)

2cd /u01/app/oracle/product/10.2/bin

./dbua

(/etc/oratab确认有你要升级的库的SIDHOME信息)

提示RA-06553: PLS-213: package STANDARD not accessible

$oraclehomeRDBMSADMIN

catalog.sql catproc.sql dbmsutil.sql 三个脚本执行一下。

手工升级:

准备工作:

1、拷pfile,PWD,tnslistener,tnsnamesnew_ORACLE_HOME,修改listentr.ora里的home目录

2、删除10g里过期的初始化参数(archive=enable,HASH_JOIN_ENABLE=true)

3、创建初始化参数里指定的所有目录,确保权限

4PFILE里如有IFILE,要指定新路径

开始UPDATEE

1、将9下的库关闭

2、将环境变量设为NEWHOME

ORACLE_HOME

PATH

ORA_NLS10

LD_LIBRARY_PATH

3cd $ORACLE_HOME/dbs/admin

sqlplus / as sydba;

SQL>startup upgrade pfile=..

SQL>create tablespace sysaux datafile '/u01/oracle/oradata/sysaux01.dbf' size 200m resuse extent management local segment space management auto online;

SQL> spool upgrade;

SQL>@catupgrd.sql

sql>@utlu102s.sql

SQL>spool off

查看upgrade.lst是否有异常

at last restart the database;

以下步骤可根据需要执行:

1This step is only necessary if Oracle Label Security is in your

database.

SQL> @olstrig.sql

2Run utlrp.sql to recompile any remaining stored PL/SQL and Java code.

SQL> @utlrp.sql

3Verify that all expected packages and classes are valid:

Select count(*) from dba_objects where status=’invalid’;

Select distinct object_name from dba_objects where status=’invalid’;

降级:

最多只能降到9206,如果你装的是9204,那要先打上9206Patch

10的环境变量

SQL> STARTUP DOWNGRADE

SQL> SPOOL downgrade.log

SQL> @catdwgrd.sql10.2.10运行的是这个,而10.1降级用的是d92000.sql,即dold_release.sql

Sql>spool off

Sql>shutdown immediate

将环境变量设置回92

92home里设置PFILEPWDFILE等。

SQL> STARTUP MIGRATE

SQL> SPOOL reload.log

SQL> @catrelod.sql

SQL> SPOOL OFF

查看pool日志,有需要时你可以再运行N遍这个SQL。下面这个错可以乎略

ORA-22308: operation not allowed on evolved type errors

SQL> SHUTDOWN IMMEDIATE

SQL> STARTUP

以下这两个SQL按需要执行

1. Do this step if the database is configured for Oracle Label Security. Copy the

olstrig.sql script from the 10.2 Oracle Home to the version to which the

database will be downgraded. Run olstrig.sql to re-create DML triggers on

tables with Oracle Label Security policies. (See Oracle Database Enterprise User

Administrator's Guide for more information.)

SQL> @olstrig.sql

2. Run utlrp.sql:

SQL> @utlrp.sql

The utlrp.sql script recompiles all existing PL/SQL modules that were

previously in an INVALID state, such as packages, procedures, types, and so on.

总结:

1、有错误上metalink查,官方的说法比goole后排除来得快。

2、官方文档不同版本对于同一个操作,文档可能是不一样的。这里的降级,10.110.2做法就不一样。

附:

环境变量设置

[oracle@test ~]$ more .bash_profile

# .bash_profile

# Get the aliases and functions

if [ -f ~/.bashrc ]; then

. ~/.bashrc

fi

# User specific environment and startup programs

# Set Linux Kernel

export LD_ASSUME_KERNEL=2.4.18

# Oracle Environment

export ORACLE_BASE=/u01/oracle

export ORACLE_HOME=/u01/oracle/product/9.2

export ORACLE_SID=orcl

export ORACLE_TERM=xterm

export NLS_LANG="AMERICAN_AMERICA.zhs16gbk"

export ORA_NLS33=$ORACLE_HOME/ocommon/nls/admin/data

export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib:/usr/local/lib

#Set some variables for Manage

export PFILE=/u01/oracle/admin/orcl/pfile

export BDUMP=/u01/oracle/admin/orcl/bdump

export UDUMP=/u01/oracle/admin/orcl/udump

export TNS=/u01/oracle/product/9.2/network/admin

# Set shell search paths

export PATH=$ORACLE_HOME/bin:/sbin:/usr/sbin:$PATH

# set LANG

export LANG=en_US

export LC_ALL=en_US

# alias

alias sql='sqlplus /nolog'

alias dbasql='sqlplus "/ as sysdba"'

alias rm='rm -i'

alias alert='tail -f $BDUMP/alert*log'

alias alert2='tail -n 200 $BDUMP/alert*log'

alias df='df -h'

unset USERNAME

DISPLAY=192.168.10.107:0.0;export DISPLAY

set -o vi

初始化参数文件PFILE

[oracle@test ~]$ more $PFILE/initorcl.ora

log_archive_dest_1='LOCATION=/u03/arc/archive'

log_archive_format=%t_%s.arc

log_archive_start=true(在10gobsolete

instance_name=orcl

db_name=orcl

db_block_size=8192

db_cache_size=80m

pga_aggregate_target=50m

large_pool_size=10485760

shared_pool_size=12582912 (10g里要求设置97431142以上)

background_dump_dest=/u01/oracle/admin/orcl/bdump

core_dump_dest=/u01/oracle/admin/orcl/cdump

user_dump_dest=/u01/oracle/admin/orcl/udump

control_files=("/u01/oracle/oradata/control01.ctl", "/u01/oracle/oradata/control02.ct

l", "/u01/oracle/oradata/control03.ctl")

compatible=9.2.0.0.0

hash_join_enabled=TRUE (在10gobsolete

query_rewrite_enabled=FALSE

star_transformation_enabled=FALSE

timed_statistics=TRUE

remote_login_passwordfile=EXCLUSIVE

processes=500

parallel_max_servers=8

open_cursors=600

db_files=2000

fast_start_mttr_target=300

db_writer_processes=1

job_queue_processes=8

open_links=8

undo_management=AUTO

手工建库

create database orcl controlfile reuse

maxdatafiles 250

maxinstances 2

maxlogmembers 3

maxlogfiles 18

datafile '/u01/oracle/oradata/orcl/system.dbf' size 600m reuse

autoextend off extent management local

default temporary tablespace temp

tempfile '/u01/oracle/oradata/orcl/tbs_temp_01.dbf' size 500m reuse autoextend off

undo tablespace tbs_undo01

datafile '/u01/oracle/oradata/orcl/tbs_undo1_01.dbf' size 500m reuse autoextend off

character set zhs16gbk

logfile group 1 ('/u01/oracle/oradata/orcl/redo01_01.dbf',

'/u01/oracle/oradata/orcl/redo01_02.dbf') size 10m reuse,

group 2 ('/u01/oracle/oradata/orcl/redo02_01.dbf',

'/u01/oracle/oradata/orcl/redo02_02.dbf') size 10m reuse,

group 3 ('/u01/oracle/oradata/orcl/redo03_01.dbf',

'/u01/oracle/oradata/orcl/redo03_02.dbf') size 10m reuse;

请使用浏览器的分享功能分享到微信等