当前位置:首页 > 问答 > 正文

Linux系统里DB2 pe安装步骤那些事儿怎么弄比较顺手

(信息来源:IBM官方文档、DB2社区经验分享、系统管理员实践总结)

Linux系统里装DB2的PE(Personal Edition,个人版)想弄得顺手,这事儿说白了就是得把准备工作做足,然后一步步别跳步,很多人觉得麻烦,往往是卡在一些看起来不起眼的小细节上,下面我就把从准备到装完验证的整个过程,用大白话捋一遍。

第一件事:检查你的Linux底子合不合格

DB2不是随便找个Linux就能装的,你得知道自己用的是什么发行版,是Red Hat、SUSE、Ubuntu还是其他的?不同版本可能有点小区别,最关键的是看系统位数,现在基本都是64位的了,你得用 uname -i 或者 uname -m 命令看看输出是不是x86_64或amd64,如果是i386或i686,那是32位的,可能就不行了。

内存和磁盘空间得够,PE版虽然叫个人版,但也不是给超小内存机器用的,至少准备2GB内存吧,推荐4GB或以上会更顺畅,磁盘空间方面,安装文件本身不大,但你得给数据库实例和数据留地方,建议至少有个5GB以上的空闲空间。

第二件事:把该装的“依赖包”都招呼上

DB2运行需要系统里有一些基础的软件包支持,缺了哪个都可能报错,这个步骤是新手最容易栽跟头的地方,你需要用root权限,根据你的Linux发行版来安装这些包。

比如在基于Red Hat或CentOS的系统上,你很可能需要这些包:libaio(异步IO支持)、numactl(NUMA架构支持)、pam(认证模块)等等,一个比较稳妥的命令是(具体版本号可能变化): yum install -y libaio numactl pam

在基于Ubuntu或Debian的系统上,对应的可能是: apt-get install -y libaio1 libpam0g libstdc++6

(信息来源:IBM Installation Guide for your specific Linux distribution)这里强烈建议你直接去IBM官网查一下对应你Linux版本的最新安装指南,里面会列出确切的依赖包列表,照着实单抓药最保险,别嫌麻烦,这一步省了,后面报错更头疼。

第三件事:安排好用户和用户组

DB2不建议直接用root用户来运行,为了安全,需要创建专门的用户和用户组,通常的做法是创建一个主用户组,比如叫 db2grp1,再创建一个管理用户,比如叫 db2inst1,DB2有个叫“防护”(fenced)的模式,用来运行不受信任的程序,所以最好再创建一个专门用于这个模式的用户,比如叫 db2fenc1

创建命令大概长这样(用root执行):

groupadd db2grp1
useradd -g db2grp1 -m -d /home/db2inst1 db2inst1
useradd -g db2grp1 -m -d /home/db2fenc1 db2fenc1
passwd db2inst1  # 给这个用户设个密码

记住你创建的这些用户名和组名,后面安装时会用到。

第四件事:搞定安装介质和安装命令

从IBM官网下载DB2 PE版的安装包,通常是一个压缩文件,把它上传到你的Linux服务器上,比如放到 /tmp 目录,然后解压: tar -zxvf your_db2_pe_package.tar.gz

解压后会生成一个目录,比如叫 server_pe,进入这个目录,你会发现一个叫 db2setup 或者 db2_install 的脚本。这里有个小窍门:如果你想用图形化界面安装(如果你的服务器有桌面环境),就运行 ./db2setup,它会弹出一个窗口,像在Windows上安装软件一样,点点鼠标就行,比较直观。

但大部分服务器是没有图形界面的,这时候就得用命令行安装模式了,运行 ./db2_install 会提示你选择安装什么产品(比如输入“PE”),然后它就自动开始安装了,这种模式虽然不直观,但更常用。

(信息来源:DB2社区最佳实践)一个让过程更“顺手”的建议是:在运行安装命令前,先切换到root用户,并且确保你的终端环境语言设置是英文(比如执行 export LANG=en_US),因为有些语言的字符编码可能会导致安装脚本显示乱码或者出错,用英文环境最稳妥。

第五件事:安装后配置——创建实例

安装程序只是把文件拷贝到系统里,真正让DB2跑起来,还需要一个“实例”(Instance),你可以把它理解成一个独立的数据库运行环境,这时候就要用到之前创建的 db2inst1 用户了。

用root用户执行创建实例的命令,大概像这样: /opt/ibm/db2/V11.5/instance/db2icrt -a SERVER -u db2fenc1 db2inst1 (注意:路径里的V11.5是版本号,你得换成你实际装的版本号。)

这个命令的意思是,用 db2fenc1 作为防护用户,创建一个属于 db2inst1 的实例类型为SERVER的实例。

第六件事:最后检查与开张测试

实例创建成功后,需要切换到数据库实例用户(su - db2inst1)来启动和测试。

  1. 启动实例:db2start
  2. 创建一个测试数据库:db2 create database testdb
  3. 连接到这个数据库:db2 connect to testdb
  4. 执行个简单命令看看灵不灵:db2 "select current date from sysibm.sysdummy1" 如果能看到当前的日期返回,那就恭喜你,安装成功了!

顺手的关键就在于:前期检查仔细,依赖包装全,用户权限设对,安装时用英文环境,安装后记得创建实例并测试。 把这些环节都盯住了,在Linux上装DB2 PE就不是什么难事儿。

Linux系统里DB2 pe安装步骤那些事儿怎么弄比较顺手