zoukankan      html  css  js  c++  java
  • DB2高级安装

     学习从安装开始,哈哈。这里记下  Windows 和 UNIX/Linux安装DB2的各种方式,不同,及具体的一些细节。
     
     Windows下向导化安装:   
            setup.exe -i cn -u 响应文件名
             -i cn  表示向导显示为中文, -i en 则显示为英文
            产生的安装日志文件db2.log放在db2安装路径下的DB2LOG目录下.
     常见问题:
     Windows会生成db2admin用户,XP安装后会很烦的把登录用户给改成了这个, 原来的administrator用户登录时不见了
       解决方法如下:
    控制面板 -> 用户帐户 -> 选择登录和注销选项 -> 取消使用欢迎屏幕的勾选

    UNIX/Linux的安装:
    前期安装环境检查:
    一. 前期工作:
       1.检查环境
            /tmp空间大小,至少2G
            内存大小,最少1GB. (1G仅能支持5个客户端并发连接,以后每多一个,到少要增加16mb的内存支持)

            /etc/sysctl.conf 参数设置
       --首先要--修改系统内核参数,这和Oracle安装时参数差不多
       -- /etc/sysctl.conf (主要是改,内存,信号量,消息)
      kernel.sem = 250 256000 32 1024 # 每个信号对象集的最大信号对象数;系统范围内最大信号对象数;每个信号对象支持的最大操作数;系统范围内最大信号对象集数。
      kernel.shmall = 3774873 # 可以使用的共享内存的总量。 16gb内存的90%为例(14.4gb/4kb得到)
      kernel.shmmax = 1073741824 # 最大共享内存段大小。 64位系统为例 ,至少1gb,建议与物理内存相等
     
      kernel.msgmni=1024 #可以启动的代理进程数
      kernel.msgmax=65535 #影响一个队列中可以发送的消息大小
      kernel.msgmnb=65535 #队列大小
     
      修改完成后,使其生效: sysctl -p 
        2. 向导显示中文还是英文
      ksh sh bash
      LANG=<locale>
      Export LANG
      CSH
      Setenv LANG <locale>
      //如当前env为英文,想DB2安装向导显示中文
       LANG=zh_CN
       Export LANG
    二. DB2安装 
    Unix/Linux支持三种安装方式:
    a.向导化安装:
        db2setup
    b.响应文件方式安装:
        db2setup -r 响应文件名 -t 过程文件名 
       -r 响应文件名 : 保存了安装过程中所有的指定选项.
      -t 过程文件名  : 安装过程的相关信息会保存在这个文件中.

    上面两种,可提前创建好用户和组,也可在向导中创建.
    都好简单的.后面说的内容都可以在向导中完成.

    c.还有一种db2_install 脚本方式:
    ./db2_install -b /u01/db2v9 -p ESE
    ./db2_install -b /opt/ibm/db2/v9.5 -p ESE
    /*
    默认不输参数也会提示
    CLIENT : 客户端
    RTCL     : 运行期客户端 
    ESE       : ESE服务器 
    */
     后面的创建用户什么的都用这个来做说明,原因是它不基于图形界面,是一种很常见的安装方式.
     产生的安装日志文件db2setup.log放在/tmp目录下.
     
    三. 创建用户和组
     任务说明:
     db2inst1 db2iadm1 DB2实例用户,用户组
     db2fenc1 db2fadm1 受防护的用户,用户组. 运行自定义函数和过程
     dasusr1 dasadm1 创建DB2管理服务器用户,用户组.
     
    Linux:
      groupadd db2iadm1
      groupadd db2fadm1
      groupadd dasadm1
      useradd -g db2iadm1 -m -d /home/db2inst1 db2inst1
      useradd -g db2fadm1 -m -d /home/db2fenc1 db2fenc1
      useradd -g dasadm1 -m -d /home/db2usr1 dasusr1
     
      passwd db2iadm1
      passwd db2fadm1
      passwd dasadm1
     
    AIX :
      groupadd -g 999 db2iadm1
      groupadd -g 998 db2fadm1
      groupadd -g 997 dasadm1
     
      --pgrp = primary group 主用户组(只有指定一个)
      --groups = 用户所属组,可以有多个
      mkuser id=1004 pgrp=db2iadm1 groups=db2iadm1 home=/home/db2inst1 db2inst1
      mkuser id=1003 pgrp=db2fadm1 groups=db2fadm1 home=/home/db2fenc1 db2fenc1
      mkuser id=1002 pgrp=dasadm1 groups=dasadm1 home=/home/dasusr1 dasusr1

     (不想用mkuser命令行,用smitty mkuser 也不错噢)
     
      passwd db2iadm1
      passwd db2fadm1
      passwd dasadm1
     
    四.使用root用户,执行dascrt命令,创建DB2管理服务器
     --cd  /opt/ibm/db2/V9.7/instance/
      dascrt -u dasusr1
     
    五. 使用root用户,执行db2icrt命令创建实例(也在instance目录下)
        db2icrt -a server -u db2fenc1 db2inst1   
        -a : 服务端认证模式
        -u : 指定的受防护用户
       //当用户目录下已有"sqllib"目录,实例会创建失败.
     
    六. 为创建的实例配置TCP/IP通信
      --只有配置了通信协议,才能接受DB2客户端的请求
     
      --1.root用户,在AIX的TCP/IP服务文件(/etc/services)中指定监听端口
      --内容:
      db2c_db2inst1 50000/tcp # DB2 connection service port
     
      --2.db2inst1用户,为数据库配置参数 SVCENAME.
      db2 update dbm cfg using SVCENAME db2c_db2inst1 
      --3.db2inst1用户,设置通信代理.
       db2set DB2COMM=TCPIP

    装完后进去测试下
     
     su db2inst1;
     cd /home/db2inst1/sqllib/adm
     db2start
     db2 create db testdb
     db2 connect to testdb
     db2 "create table emp(emp_id int,emp_name varchar(8))"
     db2 "insert into emp(emp_id,emp_name) values (1,'xcl')"
     db2 "select * from emp"
     db2 terminate
     db2stop
     

     附上DB2常见目录:
    root用户:
    AIX®、HP-UX 和 Solaris Operating Environment
    /opt/IBM/db2/V9.1
    Linux
    /opt/ibm/db2/V9.1
     
    db2inst1 用户:
    $ pwd
    /home/db2inst1/sqllib/adm
    $ id
    uid=110(db2inst1) gid=104(db2grp1) groups=1(staff),101(dasadm1)
    $
     
    文件注册表 信息
    $ ./db2set
    DB2COMM=tcpip
    $ ./db2set -all
    [i] DB2COMM=tcpip
    [g] DB2SYSTEM=AIX_RAC1
    [g] DB2INSTDEF=db2inst1
    [g] DB2ADMINSERVER=dasusr1

    MAIL: xcl_168@aliyun.com

  • 相关阅读:
    Rsync
    SpringCloud-Eureka
    mysql-主从复制
    java中延迟任务的处理方式
    mysql-分组
    rpm相关
    shell中#*,##*,#*,##*,% *,%% *的含义及用法
    cygwin的用途
    cocos2d-lua-win
    ant打包遇到的问题
  • 原文地址:https://www.cnblogs.com/fuhaots2009/p/3468899.html
Copyright © 2011-2022 走看看