SAP系统拷贝 UNIX + Oracle 作者:未知 时间:2005-09-13 23:22 出处:Blog.ChinaUnix.net 责编:My FAQ                摘要:SAP系统拷贝 UNIX + Oracle

拟将生产机PRD(sapprd)拷贝到测试机DEV(sapdev),步骤如下:

1.      生产机PRD

# su – prdadm

# stopsap r3

# exit

# su – oraprd

# sqlplus /nolog

SQLPLUS> connect /as sysdba

SQLPLUS> alter database backup controlfile to trace;

SQLPLUS> exit

# exit

# su – prdadm

# stopsap db

在目录/oracle/PRD/saptrace/usertrace/查找最新的*.trc文件,拷贝到文件control.sql,并进行编辑:

1.      只保留STARTUP MOUNT(或NOMOUNT)到CHARACTER SET WE8DEC;之间的语句,删除其它语句;

2.      查找替换PRD为DEV(%s/PRD/DEV/g);

3.      更改下面的语句

CREATE CONTROLFILE REUSE DATABASE ‘DEV’ NORESETLOGS ARCHIVELOG;

CREATE CONTROLFILE REUSE SET DATABASE ‘DEV’ RESETLOGS ARCHIVELOG;

注意后面需要;否则不会运行在sqlplus

2.      测试机DEV

# su – devadm

# stopsap all

# exit

# su – oradev

# lsnrctl stop

# exit

# cd /oracle/DEV/

# rm -rf sapdata?/*

# rm -rf origlog?/*

# rm -rf mirrlog?/*

# rm -rf sapreorg/*

# rm -rf saparch/*

# rm -rf saptrace/usertrace/*

# rm -rf saptrace/background/*

# rm -rf sapbackup/*

# rm -rf sapcheck/*
从生产机上拷贝control.sql

# rcp sapprd: /oracle/PRD/saptrace/usertrace/control.sql ./

从生产机上拷贝数据库data文件

# rcp -r sapprd:/oracle/PRD/sapdata? ./

#chown -R oradev:dba *

(也可以从备份中恢复相关文件)

#cd origlogA

#mkdir cntrl

#cd ../saparch

#mkdir cntrl

生成control文件

# su – oradev

# sqlplus /nolog

SQLPLUS> connect /as sysdba

SQLPLUS>@/oracle/DEV/control.sql

SQLPLUS>alter database open resetlogs;

SQLPLUS> exit

# lsnrctl start
修改管理员密码alter user system identified by manager
以上数据库拷贝是没有问题了,但运行SAP应该还是有问题的,因为sapsid两个机器可能不一样,同时引起
oracle的用户也不一样,这样启动SAP会找不到数据库,所以启动不了
所以应该实际应用,需要重新安装SAP instance ,当然不需要安装任何文件,配置的参数跟新的老的一样
就可以,特别是database schema 的名字必须是原来的名字,否则就是应该oracle用户是老的,不可能修改
成新的,所以只能用老的用户来使用SAP系统

启动sap,接下来就是sap里面的配置了。