DB2系统管理日志管理.docx
- 文档编号:17809867
- 上传时间:2023-08-04
- 格式:DOCX
- 页数:47
- 大小:40.03KB
DB2系统管理日志管理.docx
《DB2系统管理日志管理.docx》由会员分享,可在线阅读,更多相关《DB2系统管理日志管理.docx(47页珍藏版)》请在冰点文库上搜索。
DB2系统管理日志管理
1DB2系统管理
1.1DB2EE及WORKGROUP版本的区别
Workgroup版本和EE的区别主要在于两方面:
1、并行性workgroup比较差
2、主机连接(即和大型机的连接性能上)比较差
3、只能用于4个CPU以下的环境。
1.2怎样判断DB2实例的版本号和修补级别?
用db2level命令。
在DB25.2及以上版本中,在安装每个DB2实例时,即会装入db2level程序。
db2level命令的输出提供了有关DB2实例的版本及
修补级别的详细信息。
命令输出如下所示:
DB21085IInstance""usesDB2code
release""withlevelidentifier
""andinformationaltokens"",""
and"".
例如:
DB21085IInstance"DB2"usesDB2coderelease"SQL05020"
withlevelidentifier"02070103"andinformationaltokens
"DB2v5.2.0.30","c990717"and"WR21119".
下面解释以下这些信息:
=DB2DB2的实例名
=SQL05020Release号05,Version号02,Module号0
=02070103内部使用的DB2版本号
=DB2v5.2.0.30实例的版本信息
=c990717代码的级别信息
=WR2119修补的级别信息
注:
db2level执行程序不能在不同的系统之间拷贝使用。
并且此程序只显示正式支持的修补级别信息。
对于DB2版本5.0和2.0,可用如下方法获得版本信息:
OS/2:
syslevel命令
NT:
查询regedit变量:
HKEY_LOCAL_MACHINE|SOFTWARE|IBM|DB2|DB2
universaldatabasexxedition|
CurrentVersion
AIX:
用dump-H
$HOME/sqllib/lib/libdb2e.a
Solaris:
cat命令查看文件信息/opt/IBMdb2/V5.0/cfg/bldlevelor
"ldd-s
$HOME/sqllib/lib/libdb2e.so|
grepengn|grepsearch|uniq"
HP:
cat命令查看文件信息
/opt/IBMdb2/V5.0/cfgbldlevel
1.3DB2客户端安装时选择语言
在缺省情况下,是按照操作系统的语言来安装的,如中文windows下装的就是中文的db2.
如果要在中文windows中安装英文db2,则要到命令行的模式下
setup/ien即可
setup/icn简体中文
setup/itw繁体中文
可以看readme.txt中的内容
1.4DB2安装
1.4.1AIX中自动启动db2
在aix的/etc/目录下创建文件rc.db2,属性为
-rwxr-xr--1rootsystemrc.db2
内容为:
#!
/bin/bsh
#############################################################################
#
#LicensedMaterials-PropertyofIBM
#
#5648-B90
#(C)COPYRIGHTInternationalBusinessMachinesCorp.1993,1999
#
#5648-B91
#(C)COPYRIGHTInternationalBusinessMachinesCorp.1993,1999
#
#5648-B95
#(C)COPYRIGHTInternationalBusinessMachinesCorp.1993,1999
#
#5648-B97
#(C)COPYRIGHTInternationalBusinessMachinesCorp.1993,1999
#
#5648-B99
#(C)COPYRIGHTInternationalBusinessMachinesCorp.1993,1999
#
#AllRightsReserved
#USGovernmentUsersRestrictedRights-Use,duplicationor
#disclosurerestrictedbyGSAADPScheduleContractwithIBMCorp.
#
#############################################################################
#
#NAME:
rc.db2
#
#FUNCTION:
rc.db2-autostartallDB2servicesonboot
#
#USAGE:
rc.db2
#
#NOTE:
Toavoidyoursystemfromfailingonreboot,donotchangethis
#fileinanyway.
#
#Thisscriptisdesignedtobeexecutedonreboot.Dothefollowing
#toenableauto-startingallDB2InstancesandAdministrationServer:
#
#1)copythisfileas/etc/rc.db2
#2)addthefollowinglineto/etc/inittab:
#
#db:
2:
once:
/etc/rc.db2>/dev/console2>&1#StartDB2services
#
#############################################################################
#DefaultDB2productdirectory
DB2DIR="/usr/lpp/db2_07_01"
if[-x${DB2DIR?
}/instance/db2istrt];then
${DB2DIR?
}/instance/db2istrt
fi
if[-x/usr/lpp/db2_05_00/instance/db2istrt];then
/usr/lpp/db2_05_00/instance/db2istrt
fi
if[-x/usr/lpp/db2_06_01/instance/db2istrt];then
/usr/lpp/db2_06_01/instance/db2istrt
fi
if[-x${DB2DIR?
}/instance/dlfmlist];then
${DB2DIR?
}/instance/dlfmlist1>/dev/null2>/dev/null
if[$?
-eq0];then
if[-x${DB2DIR?
}/instance/dlfmstrt];then
${DB2DIR?
}/instance/dlfmstrt
exit0
fi
fi
fi
if[-x/usr/lpp/db2_05_00/instance/dlfmlist];then
/usr/lpp/db2_05_00/instance/dlfmlist1>/dev/null2>/dev/null
if[$?
-eq0];then
if[-x/usr/lpp/db2_05_00/instance/dlfmstrt];then
/usr/lpp/db2_05_00/instance/dlfmstrt
exit0
fi
fi
fi
if[-x/usr/lpp/db2_06_01/instance/dlfmlist];then
/usr/lpp/db2_06_01/instance/dlfmlist1>/dev/null2>/dev/null
if[$?
-eq0];then
if[-x/usr/lpp/db2_06_01/instance/dlfmstrt];then
/usr/lpp/db2_06_01/instance/dlfmstrt
exit0
fi
fi
fi
#-----------------------------------------------------------------------
#Exitsuccessfully.
#-----------------------------------------------------------------------
exit0
1.4.2AIX中用户使用db2的环境
在.profile文件中加入以下语句:
#ThefollowingthreelineshavebeenaddedbyUDBDB2.
if[-f/home/db2inst1/sqllib/db2profile];then
./home/db2inst1/sqllib/db2profile
fi
exportLIBPATH=$LIBPATH:
/usr/lpp/db2_07_01/lib:
/usr/lpp/db2_07_01/java12
DOC_LANG=en_US;exportDOC_LANG
1.4.3在win98下安装db2报Jdbc错误
在Windows98下安装db27.1或其他版本,如果有Jdbc错误或者是Windwos98不能启动,则将autoexec.bat中的内容用如下内容替换:
C:
\PROGRA~1\TRENDP~1\PCSCAN.EXEC:
\C:
\WINDOWS\COMMAND\/NS/WIN95
remC:
\WINDOWS\COMMAND.COM/E:
32768
REM[Header]
REM[CD-ROMDrive]
REM[Miscellaneous]
REM[Display]
setPATH=%PATH%;C:
\MSSQL\BINN;C:
\PROGRA~1\SQLLIB\BIN;C:
\PROGRA~1\SQLLIB\FUNCTION;C:
\PROGRA~1\SQLLIB\SAMPLES\REPL;C:
\PROGRA~1\SQLLIB\HELP
IFEXISTC:
\PROGRA~1\IBM\IMNNQ\IMQENV.BATCALLC:
\PROGRA~1\IBM\IMNNQ\IMQENV.BAT
IFEXISTC:
\PROGRA~1\IBM\IMNNQ\IMNENV.BATCALLC:
\PROGRA~1\IBM\IMNNQ\IMNENV.BAT
setDB2INSTANCE=DB2
setCLASSPATH=.;C:
\PROGRA~1\SQLLIB\java\db2java.zip;C:
\PROGRA~1\SQLLIB\java\runtime.zip;C:
\PROGRA~1\SQLLIB\java\sqlj.zip;C:
\PROGRA~1\SQLLIB\bin
setMDIS_PROFILE=C:
\PROGRA~1\SQLLIB\METADATA\PROFILES
setLC_ALL=ZH_CN
setINCLUDE=C:
\PROGRA~1\SQLLIB\INCLUDE;C:
\PROGRA~1\SQLLIB\LIB;C:
\PROGRA~1\SQLLIB\TEMPLATES\INCLUDE
setLIB=C:
\PROGRA~1\SQLLIB\LIB
setDB2PATH=C:
\PROGRA~1\SQLLIB
setDB2TEMPDIR=C:
\PROGRA~1\SQLLIB
setVWS_TEMPLATES=C:
\PROGRA~1\SQLLIB\TEMPLATES
setVWS_LOGGING=C:
\PROGRA~1\SQLLIB\LOGGING
setVWSPATH=C:
\PROGRA~1\SQLLIB
setVWS_FOLDER=IBMDB2
setICM_FOLDER=信息目录管理器
win
其实更大的可能是path太长而实际上没有生效,在命令行下看path中是否包含了db2的目录。
1.4.4将一台机器上的数据库复制到另外一台机器
将一台机器上的数据库复制到另外一台机器上,只要数据库对象的定义以及表里面的数据能原封不动复制就可以了。
视图和触发器以及一些外键也要复制。
方法一:
首先用db2look生成DDL脚本,然后执行脚本生成所有数据库对象,然后用db2movedbnameload即可!
这种方式有人用过。
方法二:
如果你的DB2数据库版本是V7.2,补丁是4版本的话——恭喜:
你就可以使用使用”db2recoke“进行复制数据库了。
这种方法没有得到验证。
1.4.5在WIN2000下编译本地sp设置
在sqllib\function\routine\sr_cpath.bat这个文件的内容需要配置,如果没有装vc5或vc6,则要安装一个。
这是因为db2的sp编译要使用c编译器。
1.5启动支持远程管理数据库服务(db2admin)
db2adminstop
db2adminstart
1.6安装另一个instance要注意的地方
因为是第二个instance,安装时原来可以缺省安装的变成要自己配置。
1.6.1通讯配置
db2缺省使用两个端口,50000及50001。
要配两个端口服务,
zbtcp60000/tcp
zbtcpi60001/tcp
更改instance配置,指定使用服务端口
db2“updatedbmcfgusingSVCENAMEzbtcp”
1.6.2更改文件权限
-rwsrwxrwx1db2inst1db2iadm125019Sep1112:
12db2aud
-rwxrwxrwx1db2inst1db2iadm14096Sep1112:
12db2audit.cfg
lrwxrwxrwx1rootsystem36Sep1112:
12db2chkau->/usr/lpp/db2_0
7_01/security/db2chkau
-r-s--x--x1rootdb2iadm112526Sep1112:
12db2chpw
-r-s--x--x1rootdb2iadm119972Sep1112:
12db2ckpw
-rwxrwsrwx1db2inst1db2iadm133027Sep1112:
12db2flacc
注意按照上面的列表更改权限。
因为db2的用户是交由系统来管理的,db2ckpw等需要用root的身份执行来检查权限。
1.7Db2的C编译报没有licsence
修改/etc/vac.cfg
看是用的什么编译器,在里面加一个选项
options=-qlanglvl=extended,-qnoro,-qnoroconst,-qnolm
1.8Db2的进程管理
Db2的进程,除了db2wdog外,其他程序都不应该是由root来管理。
如果一个数据down过一次以后,如果有有关数据库的进程的父进程是1的话,都是死掉的进程,应该把它杀掉。
否则有可能影响系统的稳定运行。
下面是db2的一些常见的程序:
Db2syscdb2引擎
1.9创建Database
createdatabaseheadusingcodesetIBM-eucCNterritoryCN;
这样可以支持中文。
1.10Database的备份
Db2”Backupdbgtjazbuserdb2inst1usingdb2inst1tofilebak\dbbacup”
这里是一个完整的备份shell:
db2adminstop
db2stopforce
db2adminstart
db2start
db2backupdatabasezbdbto/dev/rmt0with2buffersbuffer1024
说明:
/dev/rmt0是磁带机,直接备到磁带机上。
1.11Tablespace
1.11.1创建临时表空间
用户临时表空间
db2“CREATEUSERTEMPORARYTABLESPACETMPUSRTBS16
PAGESIZE16K
MANAGEDBYSYSTEM
USING('/gtja_emc/gtjadb/NODE0000/SQL00001/TMPUSR16001.00')
EXTENTSIZE32
PREFETCHSIZE64
BUFFERPOOLUSER16KBP;”
注意目录下不能有任何文件,所以如果是建在文件系统的mount点上的时候,就是lost的目录也不能要。
只有有了用户临时表空间,才可以使用临时表。
系统临时表空间
droptablespaceTMPSYSTBS16;
CREATESYSTEMTEMPORARYTABLESPACETMPSYSTBS16
PAGESIZE16K
MANAGEDBYDATABASE
USING(DEVICE'/dev/rutemptbs1'5400M,
DEVICE'/dev/rutemptbs2'5400M
)
EXTENTSIZE32
PREFETCHSIZE128
BUFFERPOOLUSER16KBP;
1.11.2将Tablespace授权给用户使用
db2"GRANTUSEOFTABLESPACETMPUSRTBS16TOPUBLIC"
请注意,不授权的话,用户使用将会出错的。
只有系统临时表空间可以不授权.
1.11.3看Tablespace信息
db2listtablespaces
db2listtablespacesshowdetail
db2listtablespacecontainersforX(tablespaceid)
db2listtablespacecontainersforXshowdetail
只有DMS可以增加containers.
1.11.4去掉tag
--以下命令是为了去除TABLESPACE的TAG,仅在创建tbs出现错误已经占用时使用
--需要su-root
db2untag-frparatbs1
1.12手工做数据库别名配置及去除该别名配置
db2catalogdbgtjazbon/gtjadb2(目录)
db2uncatalogdbgtjazb
1.13手工做数据库远程(别名)配置
db2catalogtcpipnodenode1remote172.28.200.200server50000
db2catalogdbheadastest1atnodenode1
然后既可使用:
db2connecttotest1user…using…
连上head库了
1.14停止启动数据库实例
db2start
db2stop(force)
1.15连接数据库及看当前连接数据库
连接数据库
db2connecttoheaduserdb2inst1usingdb2inst1
当前连接数据库
db2connect
1.16停止启动数据库head
db2activatedbhead
db2deactivatedbhead
要注意的是,如果有连接,使用deactivatedb不起作用。
如果是用activatedb启动的数据库,一定要用deactivatedb才会停止该数据库。
(当然如果是db2stop也会停止)。
使用activatedb,这样可以减少第一次连接时的等待时间。
Database如果不是使用activatedb启动而是通过连接数据库而启动的话,当所有的连接都退出后,db也就自动停止。
1.17查看及停止数据库当前的应用程序
查看应用程序:
db2listapplicationsshowdetail
授权标识|应用程序名|应用程序句柄|应用程序标识|序号#|代理程序|协调程序|状态|状态更改时间|DB名|DB路径||节点号|pid/线程
其中:
1、应用程序标识的第一部分是应用程序的IP地址,不过是已16进制表示的。
2、pid/线程即是在unix下看到的线程号。
停止应用程序:
db2"forceapplication(236)"
db2“forceapplicationall”
其中:
该236是查看中的应用程序句柄。
db2listapplications|grep-itrans_db|wc–l
看有多少个trans_db的连接。
Grep–iI是不区分大小写。
Wc计算个数,-l是计算行数,即进程数。
1.18查看本instance下有哪些database
db2LISTDATABASEDIRECTORY[on/home/db2inst1]
1.19查看及更改数据库head的配置
设置的时候要注意,一个database可用的最大内存数只有2G,配置后要计算一下使用的内存数,注意不要超过1.6G,还要留一些内存给数据库其它的来用。
如果要使用2G以外的内存,将NUM_ESTORE_SEGS参数由0->1,这样就可以使用2G以外的内存做为二级缓存。
请注意,在大多数情况下,更改了数据的配置后,只有在所有的连接全部断掉后才会生效。
查看数据库head的配制
db2getdbcfgforhead
更改数据库head的某个设置的值
1.19.1设置使用2G以外的内存
db2updatedbcfgforheadusingNUM_ESTORE_SEGS1
参数由0->1,这样就可以使用2G以外的内存做为二级缓存。
1.19.2更改Bufferpool的大小
db2updatedbcfgfor
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- DB2 系统管理 日志 管理