从今天开始DB2相关的内容 系统为 Redhat 7.4 数据库为 v10.5fp10 上节我们说了如何安装单机环境的DB2软件 这节的内容为如何建立DB2的实例和数据库 DB2中一个实例下可以有多个数据库,一个数据库只能属于一个实例 ## 1. 建立实例 注意必须事先建立db2inst1 和db2fenc1用户 实例名称极为db2inst1 root用户 ``` cd /opt/ibm/db2/V10.5.0.10/instance ./db2icrt -a server_encrypt -u db2fenc1 db2inst1 ``` [image:871 size:orig] ## 2. DB2实例目录结构 建立完后会在db2inst1家目录下建立相应的目录和文件 家目录下只有一个文件夹,存放实例相关的所有文件 ``` cd /home/db2inst1/sqllib/ ls ``` [image:872 size:orig] 简单介绍下一些常用的目录 - adm存放DB2相关管理命令的目录,如设置参数,重启DB2等 - db2dump 存放DB2诊断日志,如告警信息等 - db2nodes.cfg 用于DPF环境,即分区数据库,用于存放节点信息 - bin 存放其他二进制命令 - db2profile 存放实例相关环境变量信息 - db2systm 数据库管理配置文件 ## 3. 启动DB2实例 接下来我们启动DB2实例 ``` su - db2inst1 db2start ``` [image:873 size:orig] 接下来设置实例自启动 ``` db2iauto -on db2inst1 ``` ## 3. DB2实例参数配置 接下来我们来配置实例的参数 ``` su - db2inst1 db2set db2comm=tcpip db2set db2codepage=1208 db2 update dbm cfg using SVCENAME 50000 db2 update dbm cfg using SYSMON_GROUP db2usr1 db2 update dbm cfg using diagsize 512 db2stop db2start ``` 其中db2comm和SVCENAME用于配置监听,使得远程客户端可以连接,需要重启生效 db2comm为走tcpip协议,SVCENAME表示DB2监听50000端口 注意不同实例不能监听同一端口 db2codepage 表示字符集 1208代表UTF8 SYSMON_GROUP 表示将db2usr1组加入监控DB2组,可以监控实例和数据库相关的信息 diagsize 设置诊断日志的最大大小,达到后会自动清空后复用,单位为M,需要重启生效 设置完后可查看是否生效 ``` db2set -all ``` [image:874 size:orig] ``` db2 get dbm cfg |grep SVCENAME db2 get dbm cfg |grep SYSMON_GROUP db2 get dbm cfg |grep DIAGSIZE ``` [image:875 size:orig]