DB2学习总结
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
DB2学习整理笔记
●数据库软件安装(v9.7)
●软件下载
IBM官方网站,需注册账号。
●解压db2安装包
#tar -zxvf v9.7_linuxx64_server.tar.gz
进入server目录下,执行安装检查
[root]#cd server [root]#./db2prereqcheck
●运行安装程序
[root]#./db2_install ------no-------ese---
●安装license
db2licm -l命令可以查看到db2的license信息。可以找一个永久的license添加到db2数据库即可,把db2ese_c.lic放到一目录下:
/opt/ibm/db2/V9.7/license/db2ese_c.lic,在/opt/ibm/db2/V9.7/adm/目录下执行:
db2licm -a /opt/ibm/db2/V9.7/license/db2ese_c.lic
●创建DB2运行所需要的用户组和用户
[root]#groupadd -g 901 db2iadm
[root]#groupadd -g 902 db2fadm
[root]#groupadd -g 903 dasadm
[root]#useradd -g db2iadm -u 801-d /home/db2inst -m db2inst (管理当前实例)
[root]#useradd -g db2fadm -u 802 -d /home/db2fenc1 -m db2fenc
[root]#useradd -g dasadm -u 803 -d /home/dasadm1 -m dasusr (管理所有实例)
●为用户创建密码
passwd db2inst
●创建实例
[root]#cd /opt/ibm/db2/V9.7/instance
[root]#./dascrt -u dasusr
[root]#./db2icrt -u db2fenc db2inst (db2fenc表示将用来运行受防护用户定义的函数(UDF)和受防护存储过程的用户的名称,db2inst用户实例实例的名称必须与拥有实例的用户的名称相同)
●启动db2实例
su - dasusr
[dasusr]#. das/dasprofile
[dasusr]#db2admin start
su - db2inst
[db2inst]#. sqllib/db2profile
[db2inst]#db2start
[db2inst]#db2 get instance
●关闭、启动数据库
[db2inst]#db2 force applications all
[db2inst]#db2stop
[db2inst]#db2start
●创建样本库
[db2inst]#cd /opt/ibm/db2/V9.7/bin
[db2inst]#./db2sampl
●设置DB2自启动
[root]#cd /opt/ibm/db2/V9.7/instance
[root]#./db2iauto -on db2inst
●配置TCPIP
su - db2inst
[db2inst]#db2set -all
[db2inst]#db2set DB2COMM=TCPIP
db2inst]#db2set db2codepage=1386(简体中文)
[db2inst]#db2 get dbm cfg |grep SVCENAME
[db2inst]#tail /etc/services
[db2inst]#vim /etc/services (确保SVCENAME与/etc/services中端口保持一致。)
[db2inst]#db2 update dbm cfg using SVCENAME 60000 (直接指定端口或使用名称与/etc/services中保持一致即可.linux端口默认为60000,windows端口默认为50000)
[db2inst]#db2stop / db2stop force
[db2inst]#db2start
[db2inst]#netstat -ano | grep 60000
附:如果系统为CENTOS7,可能会因为防火墙问题导致50000端口被禁用
解决方法:
su - root
systemctl stop firewalld.service
或者将50000端口加入防火墙信任:
firewall-cmd --permanent --zone=public --add-port=50000/tcp
重启防火墙:
systemctl stop firewalld.service systemctl start firewalld.service
●数据库创建
●一、创建数据库
[db2inst]#db2
[db2inst]#create database develop 或
db2 create db
territory CN collate using identity
[db2inst]#connect reset (连接复位)
[db2inst]#terminate (编译)
[db2inst]#connect to develop user db2inst using db2inst
[db2inst]#list db directory
[root]#useradd -g db2iadm db2test (db2iadm数据库用户组)
[root]#passwd db2test
[db2inst]#db2
[db2inst]#conenct to develop
[db2inst]#grant connect on database to user db2test
[db2inst]#grant dbadm on database to user db2test
[db2inst]#db2get authorizations
[db2inst]#revoke dbadm on database from user db2test
[db2inst]#db2 "grant use of tablespace
详细权限说明见《DB2权限说明.docx》
实例