`
weiruan85
  • 浏览: 385251 次
  • 性别: Icon_minigender_1
  • 来自: 西安
社区版块
存档分类
最新评论

了解用户和组帐户与DB2 UDB的交互

    博客分类:
  • db2
阅读更多
Linux和 Unix操作系统上需要的用户和组帐户

  NIS/NIS+ 的问题:

  如果环境中使用了 NIS/NIS+ 或者类似的安全软件,必须在安装 DB2 UDB 之前 手工创建需要的 DB2 UDB 用户和组帐户。安装之前请参考 DB2 UDB 文档中的 NIS 主题(请参阅 参考资料)。

  在 Linux 和 UNIX 操作系统中,安装和操作 DB2 UDB 通常需要几个用户和组帐户:

  1、Installation 用户帐户

  2、DB2 Administration Server(DAS)用户帐户

  3、DB2 UDB 实例所有者用户帐户

  4、DB2 UDB fenced 例程用户帐户

  默认情况下,DB2 安装向导在 DB2 UDB 服务器安装过程中将自动创建这些用户和组帐户。也可以在安装过程中指定已有的用户帐户。

  Installation 用户帐户:

  必须使用 “root” 帐户安装 DB2 UDB。这是具有足够权限执行安装的惟一帐户。

  实例所有者用户帐户:

  在实例所有者的主目录中创建 DB2 UDB 实例。该用户帐户控制所有的 DB2 UDB 进程,拥有该实例所含数据库使用的全部文件系统和设备。在 DB2 UDB 安装过程中,DB2 UDB 实例所有者使用的默认用户 ID 是 db2inst1,默认组是 db2iadm1。如果该用户名已经存在,DB2 安装向导就会在默认的名称后面增加一个 1-99 的数字,直到遇到一个不存在的用户 ID。比方说,如果安装新的 DB2 UDB 时用户 db2inst1 和 db2inst2 已经存在,向导就会创建用户 db2inst3。如果该用户已经存在,向导就会继续搜索(db2inst4、db2inst5 等等),直到发现可用的用户。这种命名算法也适用于 fences 用户帐户和 DB2 管理服务器用户帐户的创建。

  一种好的办法是将实例所有者用户帐户限制在实例所有者组中,不在其他任何组中包含它。这样有助于控制可以修改实例或者实例中任何对象的用户帐户和组的数量。

  在默认的 Linux 或 UNIX 安装中,可以选择在安装过程中创建一个实例。也可以在以后使用 db2icrt 和 db2idrop 工具程序创建其他实例或者删除已有的实例。这些工具位于 DB2PATH/instance 目录中,其中 DB2PATH 在 AIX 上代表 /usr/opt/db2_08_01,在其他基于 Linux 和 UNIX 的系统上代表 /opt/IBM/db2/V8.1。运行这些工具程序必须使用 root 用户帐户。在 Linux 和 UNIX 上使用 db2icrt 工具创建新实例时,必须指定与该实例关联的 fenced 用户帐户。选择的实例名必须映射到将成为实例所有者的用户帐户名。比方说,要把已有的用户帐户 prodinst 作为新实例的所有者,应该在 db2icrt 命令中指定 prodinst 作为实例名。该实例将在拥有它的用户的主目录中创建。比如,下面的命令创建了一个新实例 devinst,它属于 devinst 用户帐户,并使用已有的用户帐户 devfenc 作为 fenced 用户帐户:

  清单 6. 在 Linux 和 UNIX 上创建新的 DB2 UDB 实例 db2icrt -u devfenc devinst。

  DB2 UDB 不支持直接以 root 帐户作为数据库管理员。应该使用 su - 命令切换到数据库管理员(实例所有者)帐户。

  DB2 Administration Server 用户帐户:

  DB2 Administration Server(DAS)用户帐户用于在系统上运行 DAS 进程。默认安装过程中创建的默认用户 ID 是 dasusr1,默认组是 dasadm1。DB2 UDB GUI 工具还使用 DAS 帐户对本地服务器实例和数据库执行管理任务。每台机器上只需要一个 DAS。它可以管理服务器上定义的所有实例。DAS 用户帐户必须不同于实例所有者用户帐户。

  一旦使用该帐户启动 DAS 进程,也必须使用该帐户停止。因此在 Linux 或 UNIX 上,必须使用 su - 命令切换到 DAS 用户帐户以便启动和结束 DAS 进程。

  fenced 用户帐户:

  fenced 用户帐户用于在 DB2 UDB 引擎使用的地址空间(内存)之外运行用户定义函数(UDF)和存储过程。有时候,如果一个过程或函数不稳定或者在测试中,那么应该将其定义为 FENCED,这样就可以在自己的进程地址空间中运行。这样,如果该函数或过程崩溃或者异常终止,也不会对其他实例进程产生任何影响。为 fenced 用户创建的默认用户帐户是 db2fenc1,默认的组是 db2fadm1。由于安全的原因,我们建议不要使用实例所有者帐户作为 fenced 用户帐户。如果不需要这个层次的安全,比方说是在测试环境中运行,或者不准备使用 fenced UDF 或存储过程,可以直接使用实例所有者帐户而不必创建其他用户帐户。在创建新的实例时,必须在实例创建命令中指定 fenced 用户帐户(db2icrt ... -u )。

  为其他 Linux 和 UNIX 用户建立 DB2 UDB 环境:

  Linux 和 UNIX 环境在用户级上强制实施高安全策略,与一个用户帐户关联的文件和进程不能被其他用户直接访问。默认情况下,创建新的 DB2 UDB 实例时,一个特殊的 DB2 UDB 环境脚本 db2profile 也被添加到实例所有者的系统配置文件中,每次实例所有者登录到系统时都要使用该文件。这些脚本设置对数据库环境的访问,允许实例所有者执行 DB2 UDB 命令。为了让系统上的其他用户访问实例和 DB2 UDB 环境,他们也必须运行同样的脚本。一种办法是 “提供” DB2 UDB 实例所有者的 .profile 文件(或者该 .profile 文件引用的 db2profile 文件)。如果使用 Bourne 或 Korn shell ,那么可以编辑目标用户帐户的 .profile 文件,使该用户登录到系统时自动运行 db2profile 脚本。对于 C shell 用户,可以编辑 .login 文件让它运行 db2shrc 脚本文件。为了选择要使用的实例,请在 .profile 或 .login 脚本文件中添加下面的语句,或者在用户需要访问 DB2 UDB 的终端窗口中发出该语句(注意需要句点(.)和空格):

  Bourne 或 Korn shell: . INSTHOME/sqllib/db2profile

  C shell: source INSTHOME/sqllib/db2cshrc 其中 INSTHOME 是要使用的实例的主目录。

  对于主目录中有自定义脚本版本的用户:

  Bourne 或 Korn shell: . USERHOME/db2profile

  C shell: source USERHOME/db2cshrc,其中 USERHOME 是用户的主目录。

  如果需要同时使用多个实例,那么对使用的每个实例在单独的 终端窗口中运行该脚本。

  调度程序用户帐户

  如果要启用 DB2 UDB 中的调度设施,需要一个调度程序用户帐户。如果工具目录数据库位于远程服务器上,DB2 UDB 调度程序将使用该帐户连接。工具目录数据库包含在 DB2 UDB 服务器上调度运行的所有任务的元数据(比如计划在每个周日早上一点钟运行的备份任务)。调度设施的设计不要求存放工具目录数据库和计划运行任务的 DB2 UDB 服务器是同一个服务器。在这种情况下,DB2 UDB 服务器上的调度程序需要连接到工具目录数据库,以便检索运行任务需要的信息。

  调度程序帐户由 DAS 配置参数 SCHED_USERID 控制。只有当工具目录数据库和 DB2 管理服务器不在同一台机器上时该参数才有用。可以使用 db2 get admin cfg 命令查看该参数的值。

  要修改该参数的值,可使用 db2admin setschedid Word>命令,其中 和 是调度程序用于连接到远程工具目录数据库的用户 ID 和口令。

  清单 7 显示了将调度程序 ID 设为 xtradba 的情况。

  清单 7. 可配置 DAS 参数及其值的清单

  C:>db2 get admin cfg

  Admin Server Configuration

  Authentication Type DAS (AUTHENTICATION) = SERVER_ENCRYPT

  DAS Administration Authority Group Name (DASADM_GROUP) =

  DAS Discovery Mode (DISCOVER) = DISABLE

  Name of the DB2 Server System (DB2SYSTEM) = TEDWAS

  JavaDevelopment Kit Installation Path DAS (JDK_PATH) =

  C:Program FilesIBMSQLLIBjavajdk

  Java Development Kit Installation Path DAS (JDK_64_PATH) =

  DAS Code Page (DAS_CODEPAGE) = 0

  DAS Territory (DAS_TERRITORY) = 0

  Location of Contact List (CONTACT_HOST) =

  Execute Expired Tasks (EXEC_EXP_TASK) = NO

  Scheduler Mode (SCHED_ENABLE) = ON

  SMTP Server (SMTP_SERVER) =

  Tools Catalog Database (TOOLSCAT_DB) = TOOLSDB

  Tools Catalog Database Instance (TOOLSCAT_INST) = DB2

  Tools Catalog Database Schema (TOOLSCAT_SCHEMA) = TOOLSDB

  Scheduler User ID = xtradba

  结束语

  本文考察了 DB2 UDB 和用户/组帐户的基本交互。总结了 DB2 UDB 如何执行用户身份验证和用户/组授权,以及如何为 DB2 UDB 实例定义超级用户。还介绍了 DB2 UDB 安装需要和/或创建的默认用户和组帐户,以及如何配置它们。更好地理解用户/组帐户与 DB2 UDB 的交互,可以为您的环境计划和实现最优化的用户/组帐户设置。

分享到:
评论

相关推荐

    了解用户和组账户与DB2 UDB的交互

    用户和组身份验证由DB2 UDB外部的设施管理,比如操作系统、域控制器或者Kerberos安全系统。这和其他数据库管理系统是不同的,如Oracle和SQL Server,后者既可以在数据库本身中定义和验证用户帐户,也可在外部设施中...

    IBM DB2 UDB 词汇表.zip

    13. **备份与恢复(Backup and Recovery)**:DB2 UDB提供全面的备份和恢复策略,包括完整备份、增量备份和日志恢复等,确保数据的安全。 14. **集群和网格计算(Clustering and Grid Computing)**:DB2支持集群和...

    DB2 UDB 9.1 For AIX 安装指南

    DB2 Universal Database (UDB) 9.1 for AIX 是一款在IBM AIX操作系统上运行的关系型数据库管理系统,提供了高级的数据管理和分析功能。这篇安装指南详细介绍了在AIX环境下安装和配置DB2 UDB v9.1的全过程,适合具有...

    微软环境DB2 UDB 7.1开发指南

    2. **SQL语法与编程**:深入讲解SQL语言在DB2 UDB中的应用,包括DML(数据操纵语言)、DDL(数据定义语言)和DCL(数据控制语言),以及PL/SQL过程语言的使用。 3. **JDBC与ODBC连接**:解释如何通过Java JDBC驱动...

    DB2 UDB SQL入门

    DB2 UDB提供了丰富的权限和角色机制,用于控制用户对数据库对象的访问。`GRANT`和`REVOKE`语句分别用于授予和撤销权限,`USER`和`ROLE`管理用户账户和权限集合。 八、数据库备份与恢复 DB2 UDB提供了多种备份和恢复...

    DB2 UDB 珍贵资料

    3. SQL支持:DB2 UDB完全支持SQL标准,包括DML(数据操纵语言)、DDL(数据定义语言)和DCL(数据控制语言),使得用户可以通过SQL语句进行数据查询、插入、更新和删除等操作。 4. 安全性:DB2 UDB提供了一套完善的...

    MySQL to DB2 UDB Conversion Guide

    - **客户端/服务器架构**: DB2 UDB采用客户端/服务器架构,客户端负责处理用户界面和应用程序逻辑,而服务器端则负责数据存储和管理。 - **多层架构**: 包括应用层、业务逻辑层和数据层等多个层次,各层之间通过标准...

    DB2 UDB培训资料

    接下来,"2、UDB的图形用户界面.doc"可能涵盖DB2的管理工具,如DB2 Control Center或Data Studio,这些工具为用户提供友好的图形界面,便于数据库的日常管理和监控。用户可以通过这些工具执行数据库的创建、查询、...

    DB2 UDB 内存模型

    了解并优化这些内存组件的配置可以显著提升DB2 UDB的性能。例如,适当增大缓冲池大小可以减少磁盘I/O,提高查询速度;调整排序区大小可以优化大规模排序操作;合理设置锁粒度可以平衡并发性和一致性。同时,监控内存...

    [IBM] - Oracle to DB2 Udb Conversion Guide.chm

    IBM的Oracle to DB2 Udb Conversion Guide ,英文的,希望对大家有帮助

    调优 DB2 UDB v8

    对于使用DB2 Enterprise Server Edition (ESE) Database Partitioning Feature (DPF)的用户,需要特别注意分区策略和负载均衡,以确保所有分区都能高效工作。监控工具可以帮助识别潜在的瓶颈,如CPU、内存或I/O资源...

    DB2 UDB 编程及存储过程

    首先,编程接口是与DB2 UDB进行交互的关键途径。DB2提供了多种语言的API,如SQLJ(Java SQL接口)、ODBC(Open Database Connectivity)和JDBC(Java Database Connectivity),使得开发者可以使用熟悉的编程语言来...

    DB2 UDB V8.2 Express: 初始配置和经验法则

    DB2 Universal Database (UDB) Express Edition 是针对中小企业的关系数据库管理系统(Relational ...DB2 UDB Express 运行于 Linux 和 Windows 之上,至多可支持两个处理器和一些特性,具备自调优和自配置功能。

    Oracle 数据库 10g 与 IBM DB2 UDB 技术概述

    《Oracle数据库10g与IBM DB2 UDB技术概述》一文旨在对比分析Oracle数据库10g和IBM DB2 UDB两大主流企业级数据库管理系统的关键技术特性,为IT专业人士提供全面的技术参考。以下是对该文章核心知识点的深入解读: ##...

    DB2 UDB SQL语句的生命周期.pdf

    用户提交的SQL请求在被DB2 UDB处理时,首先会关联到一个包,然后根据包的结构信息进行SQL语句的编译和执行。编译和执行过程中,DB2 UDB会参考段条目的上下文信息来确定如何执行SQL语句。 在DB2 UDB中,处理SQL请求...

    DB2 UDB安装指南 图解

    DB2 Universal Database(UDB)是IBM推出的一款企业级关系型数据库管理系统,广泛应用于各种规模的企业,支持多种操作系统平台,包括Windows、Linux、Unix和IBM AIX等。本指南将详细解析DB2 UDB的安装过程,通过...

    db2_udb_v8

    db2_udb_v8开发文档

    DB2 UDB Express-C V9.7 数据库基础 实验

    DB2 UDB提供了强大的安全机制,允许设置用户权限,如GRANT和REVOKE语句,以控制用户对数据库对象的访问。此外,可以配置角色和认证策略,确保数据安全。 8. **备份与恢复** 数据保护是数据库管理的重要部分。DB2 ...

    DB2 UDB Version 8 Product Manuals_Implementation

    DB2 UDB Version 8 的《管理指南:实施篇》是一本不可或缺的手册,对于任何希望深入了解和熟练掌握 DB2 数据库系统实施流程的人来说都非常有用。通过系统地学习本书提供的知识,用户不仅能够更好地完成数据库的部署...

Global site tag (gtag.js) - Google Analytics