SAP三步连接Oracle数据库

来源:互联网 发布:sk5代理ip软件 编辑:程序博客网 时间:2024/06/03 19:23

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

原创粉丝点击