WEB开发网
开发学院数据库DB2 诊断 DB2 Java 应用程序的性能问题 (2) 阅读

诊断 DB2 Java 应用程序的性能问题 (2)

 2008-09-16 16:29:15 来源:WEB开发网   
核心提示: 诊断认证问题当用户连接到一个数据库或 DB2 实例时,DB2 外的安全设施要执行认证,诊断 DB2 Java 应用程序的性能问题 (2)(6),这种安全设施通常由 DB2 所在的操作系统提供,根据配置情况,DB2 使用操作系统 API getpwnam_r 来获得用户属性,AIX 操作系统

诊断认证问题

当用户连接到一个数据库或 DB2 实例时,DB2 外的安全设施要执行认证。这种安全设施通常由 DB2 所在的操作系统提供。根据配置情况,认证可以在服务器上进行,也可以在客户机上进行。DB2 支持多种不同的认证方法。

与数据库在同一个系统上的用户可以使用不需要用户 id 和密码的隐式连接,或者也可以使用需要用户 id 和密码的显式连接。到远程数据库的连接通常需要显式连接,除非服务器上专门为客户机认证作了配置。当排除认证问题时,不要使用隐式连接,因为这样会绕过任何认证机制。

排除认证问题应该在 Java 应用程序之外,通过 DB2 CLP 进行。假设已经配置为在服务器上进行认证。如果隐式连接执行得很快,而显式连接比较慢,那么很可能是认证存在性能问题。存在认证性能问题的另一个症状是一开始建立连接需要较长的时间,但是随后的查询的响应速度并不慢。

清单 32. 显式认证与隐式认证

$ db2 "connect to sample user db2inst1 using mypassword"
  Database Connection Information
Database server    = DB2/AIX64 8.2.7
SQL authorization ID  = DB2INST1
Local database alias  = SAMPLE
$ db2 "connect to sample"
  Database Connection Information
Database server    = DB2/AIX64 8.2.7
SQL authorization ID  = DB2INST1
Local database alias  = SAMPLE

在 AIX 平台上,DB2 使用操作系统 API getpwnam_r 来获得用户属性。AIX 操作系统 API getpwnam_r 是 getpwnam 的一个线程安全的版本。下面的示例 C 程序演示了 getpwnam_r 和 getpwnam 调用。

上一页  1 2 3 4 5 6 7 8  下一页

Tags:诊断 DB Java

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接