这里写自定义目录标题

  • 一、db2prereqcheck预检查
  • 二 、解压完成后,进入当前目录下刚刚解压出来的expc文件夹,通过ll命令可以看到,有一个叫db2prereqcheck的文件,这个文件是用于db2安装预检查的,命令如下:
  • 1. /lib/libpam.so*
  • 2. sg3_utils / sg_persist
  • 关闭SELinux
  • 重启后再次执行预检查程序。
  • db_install安装
  • 三、创建用户组和用户
  • 四、创建实例
  • 五、远程服务配置:


一、db2prereqcheck预检查

首先进入到压缩包所在的目录,执行tar命令对.tar.gz压缩文件进行解压

# 解压到当前目录
tar -zxvf v10.5_linuxx64_expc.tar.gz
# 后面加 -C 目录  可以指定需要解压到的目录。
# 如:tar -zxvf v10.5_linuxx64_expc.tar.gz -C /home/wells/soft

db2实现正则表达式 db2 regexp_like_big data


db2实现正则表达式 db2 regexp_like_数据库_02

二 、解压完成后,进入当前目录下刚刚解压出来的expc文件夹,通过ll命令可以看到,有一个叫db2prereqcheck的文件,这个文件是用于db2安装预检查的,命令如下:

# 进入解压出来的文件夹
cd expc/
# 查看当前所在目录下的所有文件信息
ll
# 执行预检查程序
./db2prereqcheck

db2实现正则表达式 db2 regexp_like_db2实现正则表达式_03


db2实现正则表达式 db2 regexp_like_数据库_04


预检查程序显示未满足的条件,这里出现了4个问题。

1. /lib/libpam.so*

错误信息:

英文:
	DBT3514W The db2prereqcheck utility failed to find the following 32-bit library file: "/lib/libpam.so*"
中文:
	DBT3514W db2prereqcheck 实用程序未能找到以下 32 位库文件:"/lib/libpam.so*"

解决方案:

yum install pam-devel.i686
yum install pam.i686

这里我只执行成功了yum install pam-devel.i686,执行yum install pam.i686时提示没有可以安装的依赖包。

db2实现正则表达式 db2 regexp_like_big data_05

2. sg3_utils / sg_persist

错误信息:

英文:
	DBT3507E The db2prereqcheck utility failed to find the following package or file: "sg_persist".
	DBT3507E The db2prereqcheck utility failed to find the following package or file: "sg3_utils".
中文:
	DBT3507E db2prereqcheck 实用程序未能找到以下程序包或文件:"sg_persist"
	DBT3507E db2prereqcheck 实用程序未能找到以下程序包或文件:"sg3_utils"

解决方案:

yum install sg3_utils-*

db2实现正则表达式 db2 regexp_like_检查程序_06

关闭SELinux

这里我使用永久关闭,百度有临时关闭的方法~

使用vi命令编辑/etc/selinux/config

vi /etc/selinux/config

db2实现正则表达式 db2 regexp_like_数据库_07


将SELINUX=enforcing注释,新增一行SELINUX=disabled。:wq保存退出

db2实现正则表达式 db2 regexp_like_检查程序_08


设置完成后,记得使用reboot命令重启。

重启后再次执行预检查程序。

# 执行预检查程序
./db2prereqcheck

如下图所示,刚刚出现的问题已经解决了!

db2实现正则表达式 db2 regexp_like_db2实现正则表达式_09

db_install安装

还是在刚刚的expc文件夹,运行db2_install进行安装:

./db2_install

这里有询问是否安装到缺省目录。我这里选择是,当然,也可以输入 否 ,安装到指定的目录。

db2实现正则表达式 db2 regexp_like_db2实现正则表达式_10


db2实现正则表达式 db2 regexp_like_big data_11

三、创建用户组和用户

创建实例前,需要先创建用户组和用户

# 创建两个组
groupadd db2adm1
groupadd db2fen1
# 创建两个用户,并将他们分配给刚刚创建好的用户组
# 在这里-d指定目录,-m 表示如果用户目录不存在,则创建, -g指定用户组
useradd -d /home/db2inst1 -m db2inst1 -g db2adm1
useradd -d /home/db2fenc1 -m db2fenc1 -g db2fen1

给db2inst1和db2fenc1两个账户设置密码,如果没有设置密码后面会出现问题。
tip: 密码不能小于8位,且不能与用户名相同

passwd db2inst1
passwd db2fenc1

四、创建实例

首先进入我们前面的安装路径/opt/ibm/bd2/V10.5下的/instance/目录。在这个目录下,用ls或ll命令可以看到一个叫db2icrt的命令。他是db2 instance create 的缩写,我们用这个命令来创建一个实例。

cd /opt/ibm/bd2/V10.5/instance/
ll
# 创建一个叫db2inst1的实例
./db2icrt -u db2fenc1 db2inst1

db2实现正则表达式 db2 regexp_like_big data_12


db2实现正则表达式 db2 regexp_like_big data_13


验证是否创建成功

# 切换用户
su - db2inst1
# 启动数据库实例
db2start
# 在实例中创建数据库
db2sampl # 创建一个DB2SAMPL样板库
# 或
db2 create create db wellsdb # 用db2的命令来创建数据库,这里的wellsdb是数据库名,可改成自己的

db2实现正则表达式 db2 regexp_like_big data_14


db2实现正则表达式 db2 regexp_like_检查程序_15

# 查看当前实例下所存在的数据库
db2 list db directory

db2实现正则表达式 db2 regexp_like_数据库_16

# 连接到数据库
db2 connect to wellsdb

db2实现正则表达式 db2 regexp_like_数据库_17

# 查看当前数据库下的表空间有哪些,可以看到,我的数据库中有3个表空间,id 分别为 0,1,2
db2 list tablespaces

db2实现正则表达式 db2 regexp_like_检查程序_18


执行sql语句

db2 "create table user(id int,name varchar(10))"
db2 "insert into user values(1,'wells')"
db2 "insert into user values(2,'974')"
db2 "select id,name from user"

db2实现正则表达式 db2 regexp_like_数据库_19


db2实现正则表达式 db2 regexp_like_数据库_20


db2实现正则表达式 db2 regexp_like_db2实现正则表达式_21


关闭数据库

db2 terminate
db2stop

db2实现正则表达式 db2 regexp_like_重启_22

tip:

terminate 、db2stop、db2start三个命令的意义

db2 terminate

断开当前与数据库的连接

终止后台对应的db2bp进程

db2start/db2stop

 启动/停止数据库服务器

五、远程服务配置:

  1. 配置service

root下执行 vi /etc/services,添加对外服务,格式为:服务名 端口/连接方式

DB2_db2inst1 50000/tcp
  1. 更新db2配置,以db2管理员身份执行
db2set DB2COMM=tcpip

db2 update database manager configuration using svcename DB2_db2inst1(步骤1中配置的services name)

配置完成后需重启