当前位置:首页 » 数据仓库 » 大型主机db2数据库基础教程
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

大型主机db2数据库基础教程

发布时间: 2023-06-14 21:15:01

Ⅰ DB2怎么创建数据库

在创建数据库时要考虑几个因素,有几种创建数据库的方法。
可以使用从 Control Center 调用的 Create Database 向导,会引导用户分步创建数据库。要是了解实际的 Create Database 命令的话,还可以从 DB2 Command Window、Command Editor 或命令行直接发出命令。
在这个示例中,从 DB2 First Steps Launch 面板的 Create Database 向导:
1、启动 DB2 Control Center。点击 Start > All Programs > IBM DB2 > General Administration Tools 并选择 Control Center。当提示选择 Control Center 视图时,点击 OK 选择默认视图(Advanced)。
2、点击 All Databases(如图 5 所示),然后点击 Create New Database。Create Your Own Database 向导打开。
5. 从 Control Center 创建新数据库
3、在 Create Your Own Database 向导中,指定数据库名和数据库目录的位置。输入 HelloWld 作为数据库名。指定 C:\ 作为默认路径。输入 hwld 作为数据库别名。在 Comment 字段中输入任何描述性的注释。
4、选中 Enable Database for XML。XML 列只能在 UTF-8 代码集(Unicode)数据库中使用。所以要在数据库中使用 XML,就必须创建 Unicode 数据库。
5、不需要指定任何其他数据库选项,所以选择 Summary 面板,然后点击 Show Command 来查看创建这个数据库所用的 DB2 命令。
6、因为在这个数据库中启用了 XML,所以使用 CODESET UTF-8。点击 Close。如果想将命令保存到文件中,供以后参考或重用,那么点击 Save 而不是 Close。
7、在 Create New Database 窗口中,点击 Finish 并等待向导完成操作。
在 DB2 创建数据库时,它还创建以下东西:
1、在指定的驱动器或路径上创建必要的数据库目录
2、创建一组默认的表空间,包括 SYSCAT、TEMPORARY 和 USER 表空间
3、在编目表空间中创建一组系统编目表和视图
4、创建数据库配置(DB CFG)文件并设置默认值
5、为数据库恢复日志文件创建空间并分配它
6、为数据库(如 CLI)和命令行处理器创建的几个应用程序
使用 DB2 Control Center 检查创建的数据库
在 Control Center 左边的面板中,找到并展开 All Systems 和 All Databases。看看是否能够找到刚才创建的 HELLOWLD 数据库。All Systems 提供了数据库对象视图,这些对象依次根据机器、实例和数据库进行分组。在这个机器上只有一个实例,DB2。All Databases 提供了这个机器上的所有数据库的快速查看。
6. 查看新数据库
如果了解创建数据库所用的 DB2 命令,那么可以使用在前面的 Create New Database 向导窗口中保存的 CREATE DATABASE 命令并根据需要进行修改,然后从 DB2 命令行处理器发出 CREATE DATABASE 命令来创建数据库。
选择 Start > Run,输入 db2cmd 并按 Enter。打开 DB2 命令行处理器窗口。要想获得 create database 命令的帮助,可以在命令行窗口中输入 db2 ? create database。
输入 db2 CREATE DATABASE MYTESTDB ON C:。在命令成功完成之后,点击 Control Center 主菜单中的 Selected 并点击 Refresh。然后看看是否能够在 Control Center 中找到新的数据库 MYTESTDB。
在 DB2 命令窗口中输入命令 db2 LIST DATABASE DIRECTORY。应该会看到 HELLOWLD 和 MYTESTDB 数据库的数据库项。

Ⅱ 大型主机DB2数据库基础教程的介绍

本书针对目前IBM大型主机DB2数据库知识专业性强、相关中文书籍很少、英文技术手册可读性欠佳等问题,以语言通俗为原则,以实践应用为目的,全面讲述了主机DB2的基础、Data Sharing理论、DB2常用的Utility、DB2常用命令,以及DB2系统维护等方面的知识,并概要介绍了常用的几种DB2工具的使用方法。同时在每个章节后配有针对性的案例、习题与答案,方便读者对知识的深入理解和巩固。

Ⅲ 如何在Linux虚拟环境下搭建DB2数据库DPF

一、创建用户和组
1、使用root用户添加系统用户
/usr/sbin/groupadd -g 1997 db2igrp
#instance所在的group,加入这个group的所有用户都具有DBA权限/usr/sbin/groupadd -g 1998 db2fgrp
#fenced用户所在的group/usr/sbin/useradd -u 1997 -g db2igrp -d /cbusdb/db2inst1 db2inst1
#db2inst1用户/usr/sbin/useradd -u 1998 -g db2fgrp -d /cbusdb/db2fenc1 db2fenc1
#db2fenc1用户/usr/sbin/groupadd db2fadmin
/usr/sbin/useradd -g db2fadmin db2admin
2、使用root用户添加数据逗毁库账号
/opt/ibm/db2/V10.5/instance/db2icrt -s ese -u db2fenc1 db2inst1
#在所有的机器上,使用root用户,建立db2 admin server:
/opt/ibm/db2/V10.5/instance/dascrt -u db2admin#启动db2 admin server:
db2admin start
3、修改节点配置文件
#vim /cbusdb/db2inst1/sqllib/db2nodes.cfg0 cbusdb01 0
1 cbusdb01 1
2 cbusdb02 0
3 cbusdb02 1
4、修改实例参数
su - db2inst1
db2iauto -on db2inst1
db2set DB2_SKIPINSERTED=on
db2set DB2_USE_ALTERNATE_PAGE_CLEANING=ondb2set DB2_EVALUNCOMMITTED=on
db2set DB2_SKIPDELETED=on
db2set DB2COMM=TCPIP
db2set DB2FCMCOMM=TCPIP4
db2set DB2RSHCMD=/bin/rsh
#注意如果配置的ssh则此处需要修改成
db2set DB2RSHCMD=/usr/bin/ssh
db2set DB2CODEPAGE=1386
db2set DB2TERRITORY=86
db2set DB2_PARALLEL_IO=*
5、哪携配置服务端口
DB2c_db2inst1 61000/tcp
DB2_db2inst1 61001/tcp
DB2_db2inst1_1 61002/tcp
DB2_db2inst1_2 61003/tcp
DB2_db2inst1_3 61004/tcp
DB2_db2inst1_4 61005/tcp
DB2_db2inst1_END 61008/tcp
6、调整系统参数,设置dpf所需的资源
/sbin/sysctl -w kernel.sem=“250 32000 32 1024”/sbin/sysctl -w kernel.msgmnb=16384
/sbin/sysctl -w kernel.msgmni=1024
/sbin/sysctl -w kernel.msgmax=8192
/sbin/sysctl -w kernel.shmmni=4096
/sbin/sysctl -w kernel.shmall=2097152
/sbin/sysctl -w kernel.shmmax=1073741824
7、修改环境变量
cat 。/sqllib/db2profile 》.profile
vi .bash_profile #添加如下信息:
/cbusdb/db2inst1/sqllib/db2profile
二、配置主机名
分别在两台主机上修改如下文件:
#vi /etc/sysconfig/network
#-------------------------
李指伏#NETWORKING=yes
#HOSTNAME=cbusdb01
#-------------------------
#vi /etc/hosts
#-------------------------
#127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4 cbusdb01#::1 localhost localhost.localdomain localhost6 localhost6.localdomain6#192.168.1.122 cbusdb01
#192.168.1.123 cbusdb02
#-------------------------
三、配置rsh
rsh是远程运行shell的服务.db2使用rsh服务运行启动和停止数据库服务器的命令,以及大部分管理命令。
1、安装rsh
#yum install rsh*
2、配置rsh的安全文件
#vi /etc/securetty
#add the content
#------------------
#rsh
#rlogin
#rexec
#------------------
3、修改rsh的配置参数/etc/xinetd.d/rsh ##在生产环境建议配置ssh免密登录
#vi /etc/xinetd.d/rsh
service shell
{
socket_type = stream
wait = no
user = root
log_on_success += USERID
log_on_failure += USERID
server = /usr/sbin/in.rshd
disable = no
}
4、修改rsh的配置文件rlogin
#vi /etc/xinetd.d/rlogin
service login
{
disable = no
socket_type = stream
wait = no
user = root
log_on_success += USERID
log_on_failure += USERID
server = /usr/sbin/in.rlogind
}
4、免密登陆,实例用户db2inst1的家目录中创建.rhosts文件
cat $HOME/.rhosts
cbusdb01 db2inst1
cbusdb02 db2inst1
5、CentOS7.0需要单独下载xinetd
yum install xinetd #低于此版本可不下载
6、重启rsh服务
service xinetd restart
7、验证rsh服务
rsh cbusdb01 date
rsh cbusdb02 date
#db2_all echo hi 没有返回
yum install ksh
四、配置时钟服务器
1、安装ntp服务器
#yum install ntp*
# ntpdate -u 202.112.10.36
#ntpdate cn.pool.ntp.org
#service ntpd start
#chkconfig ntpd on
2、修改ntp配置
#允许内网其他机器同步时间
restrict 192.168.1.0 mask 255.255.255.0 nomodify notrap
#互联网时间服务器
server 210.72.145.44 perfer # 中国国家受时中心server 202.112.10.36
# 1.cn.pool.ntp.orgserver 59.124.196.83
# 0.asia.pool.ntp.org#允许上层时间服务器主动修改本机时间
restrict 210.72.145.44 nomodify notrap noquery
restrict 202.112.10.36 nomodify notrap noquery
restrict 59.124.196.83 nomodify notrap noquery
#外部时间服务器不可用时,以本地时间作为时间服务
server 127.0.0.1
fudge 127.0.0.1 stratum 10
3、修改时区
cp -f /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
clock -w
4、在节点2上配置时钟服务器
*/5 * * * * /usr/sbin/ntpdate cbusdb01
五、配置nfs服务
1、yum install nfs*
# yum install portmap rpcbind #安装nfs客户端
2、配置需要共享的资源
#vi /etc/exports
/cbusdb *(rw,sync,no_root_squash)
/cbusdblog *(rw,sync)
3、启动nfs server
service rpcbind start
service nfs start
service nfslock restart
4、导出资源
exportfs -rv
5、显示NFS Server上所有的共享卷
showmount -e
6、在客户端挂载共享目录
#mount 192.168.1.122:/cbusdb /cbusdb
#vi /etc/fstab
cbusdb01:/cbusdb /cbusdb nfs rw,timeo=300,retrans=5,hard,intr,bg,nolock,suid
六、关闭selinux
vim /etc/sysconfig/selinux
#SELINUX=disabled
七、测试、创建数据库
1、启动数据库
#db2start
2、创建数据库
#db2 “create db cbusdb on /cbusdblog using codeset gbk territory cn”

Ⅳ 如何建立DB2分区数据库

1) 了解分区定义
分区定义可以从节点配置文件(db2nodes.cfg)得到,其位于实例所有者的主目录中,它包含一些配置信息,告诉 DB2 有哪些服务器参与分区数据库环境的实例。分区数据库环境中的每个实例都有一个 db2nodes.cfg 文件。对于每个参与实例的服务器,db2nodes.cfg 文件必须包含一个条目。当创建实例时,会自动创建 db2nodes.cfg 文件并对拥有实例的服务器添加条目。这里我们假设有4个分区。

2) 创建数据库
create db dpfdb;
默认会创建3个分区组IBMCATGROUP(只在0号分区上)
IBMTEMPGROUP ,IBMDEFAULTGROUP(在所有分区上),如果用户没有创建其他分区组,所创建的表空间会默认放在IBMDEFAULTGROUP上

3) 创建分区组
我们在 1到3号分区建立一个分区组
CREATE DATABASE PARTITION GROUP USERGROUP ON DBPARTITIONNUMS(1,2,3);

4) 创建表空间
CREATE TABLESPACE TS IN USERGROUP MANAGED BY DATABASE USING (file '/DB2containers/TScontainer $N' 10000)
有4个containers被创建
/DB2containers/TScontainer0 - on DATABASE PARTITION 0
/DB2containers/TScontainer1 - on DATABASE PARTITION 1
/DB2containers/TScontainer2 - on DATABASE PARTITION 2
/DB2containers/TScontainer3 - on DATABASE PARTITION 3

5) 创建表
CREATE TABLE DPFTABLE (ID INTEGER NOT NULL,
NAME CHAR(20) NOT NULL)
IN TS
PARTITIONING KEY (ID) USING HASHING;

Ⅳ DB2怎么启动数据库

1、 打开命令行窗口
#db2cmd
2、 打开控制中心
# db2cmd db2cc
3、 打开命令编辑器

db2cmd db2ce
=====操作数据库命令=====

4、 启动数据库实例
#db2start

5、 停止数据库实例
#db2stop

如果你不能停止数据库由于激活的连接,在运行db2stop前执行db2
force application all就可以了 /db2stop force
6、 创建数据库
#db2 create db
[dbname]
7、 连接到数据库
#db2 connect to [dbname] user [username] using
[password]
8、 断开数据库连接
#db2 connect reset
9、 列出所有数据库
#db2 list
db directory

10、 列出所有激活的数据库
#db2 list active databases
11、
列出所有数据库配置
#db2 get db cfg
12、 删除数据库
#db2 drop database [dbname]

(执行此操作要小心)
如果不能删除,断开所有数据库连接或者重启db2

=========操作数据表命令==========

13、 列出所有用户表
#db2 list tables
14、列出所有系统表
#db2 list tables for
system
15、列出所有表
#db2 list tables for all
16、 列出系统表
#db2 list
tables for system
17、列出用户表
#db2 list tables for user
18、 列出特定用户表

#db2 list tables for schema [user]
19、 创建一个与数据库中某个表(t2)结构相同的新表(t1)

#db2 create table t1 like t2
20、 将一个表t1的数据导入到另一个表t2
#db2 "insert
into t1 select * from t2"
21、 查询表
#db2 "select * from table name where
..."
22、 显示表结构
#db2 describe table tablename
23、 修改列
#db2
alter table [tablename] alter column [columname] set data type varchar(24)

======脚本文件操作命令=======
24、 执行脚本文件
#db2 -tvf scripts.sql
25、帮助命令

* 查看命令帮助
#db2 ? db2start
* 查看错误码信息
#db2 ? 22001
* memo:
详细命令请使用"db2 ? <command>"进行查看。
=========================
26、备份数据库

#db2 backup db <db name>
备注:执行以上命令之前需要断开数据库连接

27、在线备份数据库

#db2 -v "BACKUP DATABASE <database name> ONLINE TO <path> WITH 2
BUFFERS BUFFER 1024 INCLUDE LOGS WITHOUT PROMPTING"
28、恢复数据库
#db2
restore db <source db name>

29、在线恢复数据库
#db2 "RESTORE DB
<database name> TO <db path> LOGTARGET <logpath> WITHOUT
PROMPTING"
#db2 "ROLLFORWARD DB <database name> TO END OF LOGS AND
STOP" ...
30、导出数据文件

#db2move <db name> export

[-sn
<模式名称,一般为db2admin>]
[-tn <表名,多个之间用逗号分隔>]
31、导入数据文件

#db2move <db name> import
32、获取db2数据库管理配置环境信息
#db2 get dbm cfg

33、.获取db2某个数据库数据库管理配置环境信息
#db2 get db cfg for <db name>

或者:连接至某个数据库以后执行db2 get db cfg

34、更改db2日志空间的大小

备注:以下命令为了防止db2数据库过份使用硬盘空间而设,仅用于开发者自己机器上的db2,如果是服务器,则参数需要修改。

#db2
UPDATE DB CFG FOR <db name> USING logretain OFF logprimary 3 logsecond 2
logfilsiz 25600;

如果页大小是4KB,则以上命令创建3个100M的日志文件,占用300MB硬盘空间。25600*4KB=102400KB。
35、创建临时表空间

#DB2 CREATE USER TEMPORARY TABLESPACE STMASPACE PAGESIZE 32 K MANAGED BY
DATABASE USING (FILE 'D:\DB2_TAB\STMASPACE.F1' 10000)
EXTENTSIZE 256

36、获取数据库管理器的快照数据
#db2 –v get snapshot for dbm
37、显示进行程号
#db2
list applications show detail

===================================================
一、加载数据:
1、
以默认分隔符加载,默认为“,”号
db2 "import from btpoper.txt of del insert into btpoper"

2、 以指定分隔符“|”加载
db2 "import from btpoper.txt of del modified by coldel|
insert into btpoper"
二、卸载数据:
1、 卸载一个表中全部数据
db2 "export to
btpoper.txt of del select * from btpoper"
db2 "export to btpoper.txt of del
modified by coldel| select * from btpoper"
2、 带条件卸载一个表中数据
db2 "export to
btpoper.txt of del select * from btpoper where brhid='907020000'"
db2
"export to cmmcode.txt of del select * from cmmcode where codtp='01'"
db2
"export to cmmcode.txt of del modified by coldel| select * from cmmcode where
codtp='01'"
三、查询数据结构及数据:
db2 "select * from btpoper"
db2 "select *
from btpoper where brhid='907020000' and oprid='0001'"
db2 "select
oprid,oprnm,brhid,passwd from btpoper"
四、删除表中数据:
db2 "delete from
btpoper"
db2 "delete from btpoper where brhid='907020000' or
brhid='907010000'"
五、修改表中数据:
db2 "update svmmst set prtlines=0 where
brhid='907010000' and jobtp='02'"
db2 "update svmmst set prtlines=0 where
jobtp='02' or jobtp='03'"
六、联接数据库
db2 connect to btpdbs
七、清除数据库联接

db2 connect reset 断开数据库连接
db2 terminate 断开数据库连接
db2 force
applications all 断开所有数据库连接
八、备份数据库
1、 db2 backup db btpdbs
2、
db2move btpdbs export
db2look -d btpdbs -e -x [-a] -o crttbl.sql
九、恢复数据库

1、 db2 restore db btpdbs without rolling forward
2、 db2 -tvf crtdb.sql

crtdb.sql文件内容:create db btpdbs on /db2catalog
db2 -stvf crttbl.sql

db2move btpdbs import
十、DB2帮助命令:
db2 ?
db2 ? restroe
db2 ?
sqlcode (例:db2 ? sql0803) 注:code必须为4位数,不够4位,前面补0

十一、bind命令:将应用程序与数据库作一捆绑,每次恢复数据库后,建议都要做一次bind
(1) db2 bind br8200.bnd

(2) /btp/bin/bndall /btp/bnd
/btp/bin/bndall /btp/tran/bnd

十二、查看数据库参数:
db2 get dbm cfg
db2 get db cfg for btpdbs

十三、修改数据库参数:
db2 update db cfg for btpdbs using LOGBUFSZ 20
db2
update db cfg for btpdbs using LOGFILSIZ 5120
改完后,应执行以下命令使其生效:
db2 stop

db2 start

Ⅵ db2 中如何建立数据库

create database