# 创建用户和组
sudo groupadd db2grp1
sudo useradd -g db2grp1 -m -d /home/db2inst1 db2inst1
sudo passwd db2inst1
# 设置内核参数
sudo sysctl -w kernel.sem="250 32000 100 128"
sudo sysctl -w kernel.msgmnb=65536
# 解压安装包
tar -zxvf v11.5_linuxx64_server.tar.gz
# 进入安装目录
cd server
# 运行安装程序
sudo ./db2setup \
-r /tmp/db2_install.rsp \
-f sysreq \
-l /tmp/db2_install.log
# 切换到实例用户
su - db2inst1
# 创建实例
db2icrt -s ese \
-u db2fenc1 \
-p 50000 \
db2inst1
# 连接数据库
db2 connect to SAMPLE
# 修改内存配置
db2 update db cfg using \
INSTANCE_MEMORY 4096 \
SORTHEAP 256 \
BUFFPAGE 1000
# 日志配置
db2 update db cfg using \
LOGFILSIZ 1024 \
LOGPRIMARY 10 \
LOGSECOND 20
# 启用自动维护
db2set DB2_AUTOMATIC_MAINT=ON
# 优化并行处理
db2set DB2_PARALLEL_IO=*
# 修改默认配置路径
db2set -g DB2SYSTEM=/opt/ibm/db2/V11.5
# 更新dbm配置
db2 update dbm cfg using \
SHEAPTHRES_SHR 1024 \
AGENT_STACK_SZ 1024 \
FCM_NUM_BUFFERS 4096
# 生效配置
db2stop force
db2start
# 表空间优化
CREATE TABLESPACE TS_DATA \
PAGESIZE 32K \
MANAGED BY DATABASE \
USING (FILE '/db2data/data01' 10G)
# 缓冲池设置
CREATE BUFFERPOOL BP_8K \
SIZE 4096 \
PAGESIZE 8K
# 启用健康监控
db2 update dbm cfg using \
HEALTH_MON on \
MON_HEAP_SZ 512
# 配置监控阈值
db2 "call SYSPROC.ADMIN_CMD(
'SET MONITOR SWITCHES USING \
LOCK TIMESTAMP PACKAGE')"