
DB2
数据库命令简介 1.启动数据库 DB2start 2.停止数据库 DB2stop DB2数据库在linux相关指令之3.连接数据库 DB2 connect to o_yd user DB2 using pwd 4.读数据库管理程序配置 DB2 get dbm cfg 5.写数据库管理程序配置 DB2 update dbm cfg using 参数名 参数值 6.读数据库的配置 DB2 connect to o_yd user DB2 using pwd DB2 get db cfg for o_yd 7.写数据库的配置 DB2 connect to o_yd user DB2 using pwd DB2 update db cfg for o_yd using 参数名 参数值 8.关闭所有应用连接 DB2 force application all DB2 force application ID1,ID2,,,Idn MODE ASYNC (DB2 list application for db o_yd show detail) 9.备份数据库 DB2 force application all DB2 backup db o_yd to d: (DB2 initialize tape on \.tape0) (DB2 rewind tape on \.tape0) DB2 backup db o_yd to \.tape0 10.恢复数据库 DB2 restore db o_yd from d: to d: DB2 restore db o_yd from \.tape0 to d: DB2数据库在linux相关指令之11.绑定存储过程 DB2 connect to o_yd user DB2 using pwd DB2 bind c:dfplus.bnd 拷贝存储过程到服务器上的C:sqllibfunction目录中 12.整理表 DB2 connect to o_yd user DB2 using pwd DB2 reorg table ydd DB2 runstats on table ydd with distribution and indexes all 13.导出表数据 DB2 export to c:dftz.txt of del select * from dftz DB2 export to c:dftz.ixf of ixf select * from dftz 14.导入表数据 import from c:123.txt of del insert into ylbx.czyxx DB2 import to c:dftz.txt of del commitcount 5000 messages c:dftz.msg insert into dftz DB2 import to c:dftz.ixf of ixf commitcount 5000 messages c:dftz.msg insert into dftz DB2 import to c:dftz.ixf of ixf commitcount 5000 insert into dftz DB2 import to c:dftz.ixf of ixf commitcount 5000 insert_update into dftz DB2 import to c:dftz.ixf of ixf commitcount 5000 replace into dftz DB2 import to c:dftz.ixf of ixf commitcount 5000 create into dftz (仅IXF) DB2 import to c:dftz.ixf of ixf commitcount 5000 replace_create into dftz (仅IXF) 15.执行一个批处理文件 DB2 -tf 批处理文件名 (文件中每一条命令用 ;结束) 16.自动生成批处理文件 建文本文件:temp.sql select 'runstats on table DB2.' || tabname || ' with distribution and detailed indexes all' from syscat.tables where tabschema='DB2' and type='T'DB2 -tf temp.sql>runstats.sql 17.自动生成建表(视图)语句 在服务器上:C:sqllibmisc目录中 DB2 connect to o_yd user DB2 using pwd DB2look -d o_yd -u DB2 -e -p -c c:o_yd.txt DB2数据库在linux相关指令之18.其他命令 grant dbadm on database to user bb 19select * from czyxx fetch first 1 rows only 20DB2look -d ylbx -u DB2admin -w -asd -a -e -o a.txt21. 显示当前用户所有表 list tables 22.列出所有的系统表 list tables for system 23.查看表结构 DB2 describe select * from user.tables (实习编辑:HJ)1、首先确定有哪几个DB2实例及其数据库,并清除数据库和实例
1
2
3
4
#/opt/IBM/db2/VXX.Y/instance/db2ilist ###这里是root用户执行
#su - <instName>
$db2 list db directory
上面示例显示如何获得实例和数据库,根据你安装db2软件的目录和版本不同,命令的位置可能不同。找到实例和数据库后,先删除数据库,再停止实例,最后删除实例。过程一般如下
1
2
3
4
$db2 drop db <dbname>
$db2stop force
$exit
#/opt/IBM/db2/VXX.Y/instance/db2idrop <instName> ###这里是root用户执行
2、上面做完后,可以删除db2软件了
1
#/opt/IBM/db2/VXX.Y/install/db2_deinstall ###这里是root用户执行
根据提示输入安装目录后,这个脚本会执行删除 *** 作
3、最后,可以看下安装目录下是否有残留文件和目录,可以直接rm删掉。
上面的步骤是单机的DB2删除过程。现在DB2有hadr、purescale集群等环境,在这些环境下清除步骤就更复杂了,这里先不写了。
下面说的方法需要你自己动手去排查:
1、确定服务是否运行正常,简单,把访问程序放到数据库所在机器直接测试,如果不ok,属于数据库本身有问题,此处排查你应该可以控制,自行查找错误。如果不ok执行下面几步。
2、确认linux防火墙是否开着,如果开着,看访问规则是否对,要允许你配置的端口往外发数据,同时要允许想访问服务的ip数据包可以发过来。还要注意别把端口给禁止掉。此处很简单是不是防火墙影响,暂时把防火墙服务关闭掉。如:iptables service iptables stop。
3、第二步如果还不行,考虑你的网络是否经过某些特定的防火墙,你自己又控制不了,协调网络管理人员重设防火墙规则。让该访问的机器都能访问到。你要用的应用端口也得打开。大公司,一般会把web服务器或应用服务器放到dmz区,该区的防火墙控制级别相当高。
Connection refused,属于TCP错误,能报出此错误说明机器是通的。端口不可用的几率很大,端口不可用分两种:
a、应用服务没启动活没在特定的端口启动;可以这样确认,netstat -a ,看你启动的端口是否真是你期望的。
b、应用服务器启动出错,导致网络监听服务没启动,看数据库日志。
c、各级防火墙不允许访问你期望的端口。解决方法如上2、3步骤。
如果还解决不了,网络上,应该没人有那本事再帮你。
评论列表(0条)