SAP三步连接Oracle数据库

本文详细解析了SAP程序通过OPS$方式、从SAPUSER表读取业务表的Owner和密码,以及使用业务表的Owner和密码连接Oracle数据库的过程,包括设置操作系统环境变量和配置tnsname.ora文件的必要步骤。

SAP程序(如R3trans,tp,wp等)连接Oracle数据库按过程通常分如下三步:
1.以OPS$方式登录Oracle数据库;
OPS$方式即操作系统验证方式。
在Oracle上设置os_authent_prefix和remote_os_authent两个参数,其值分别为OPS$和true。
Oracle数据库中存在OPS$<SID>ADM的用户,操作系统上存在<SID>ADM用户。
当以<SID>ADM用户登录操作系统时,则可以不用密码访问Oracle数据库。

当我们用R3trans -d测试数据库的连接时,在trans.log日志文件中会发现如下内容:
Logon as OPS$-user to get SAPPRD's password
Connecting as /@PRD
日志中的@PRD需在oracle的tnsname.ora文件进行配置,并设置操作系统环境变量dbs_ora_tnsname=PRD

因操作系统验证方式存在安全隐患,在SAP kernel版本7.20以后增加了SSFS方式。


2.从SAPUSER表中读取业务表的Owner和密码;
在OPS$<SID>ADM用户下存在一个名为SAPUSER的表,其记录了用业务表的Owner和加密的密码。
但SAP程序怎么知道业务表的owner呢?
这是因为设置了dbs_ora_schema=SAP<SID>

当我们用R3trans -d测试数据库的连接时,在trans.log日志文件中会发现如下内容:
Now I'm connected to ORACLE
Got SAPPRD's password from OPS$-user


3.用业务表的Owner和密码连接数据库。
当我们用R3trans -d测试数据库的连接时,在trans.log日志文件中会发现如下内容:
Now I'm disconnected from ORACLE
Connecting as SAPPRD/<pwd>@PRD on connection 0

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值