DB2数据库常用命令大全.docx
《DB2数据库常用命令大全.docx》由会员分享,可在线阅读,更多相关《DB2数据库常用命令大全.docx(27页珍藏版)》请在冰豆网上搜索。
![DB2数据库常用命令大全.docx](https://file1.bdocx.com/fileroot1/2023-4/17/f70e4360-5901-43d6-9781-6bc74e82e609/f70e4360-5901-43d6-9781-6bc74e82e6091.gif)
DB2数据库常用命令大全
DB2数据库常用命令大全
db2常用命令大全
EXPORTTOD:
\PRINTXML.IXFOFIXF
近一年来在项目开发中使用到了IBM的DB29.1的数据库产品,跟Oracle相比一些命令有很大的区别,而它最大的功能是支持
xml存储、检索机制,通过XPath进行解析操作,使开发人员免于对xml文件在应用进行解析处理,先对其常用命令进行一下汇
总,以免遗忘。
注意:
在执行如下命令时,需要首先安装db2客户端并通过在运行中输入db2cmd进行初始化
一、基础篇
1、db2connectto<数据库名>--连接到本地数据库名
db2connectto<数据库名>user<用户名>using<密码>--连接到远端数据库
2、db2forceapplicationall--强迫所有应用断开数据库连接
3、db2backupdbdb2name<数据库名称>--备份整个数据库数据
db2restoredb--还原数据库
4、db2listapplication--查看所有连接(需要连接到具体数据库才能查看)
5、db2start--启动数据库
db2stop--停止数据库
6、createdatabase<数据库名>usingcodesetutf-8territoryCN--创建数据库使用utf-8编码
7、db2catalog命令
db2catalogtcpipnode<接点名称>remote<远程数据库地址>server<端口号>--把远程数据库映射到本地接点一般为50000
db2catalogdb<远程数据库名称>as<接点名称>atnodePUB11
--远程数据库名称到本地接点
db2CONNECTTO<接点名称>user<用户名>using<密码>
--连接本地接点访问远程数据库
8、数据库导出
db2look-d<数据库名>-u<用户>-e-o<脚本名称>.sql--导出数据库的表结构,其中用户空间一般为db2admin/db2inst1
db2look-d<数据库名>-u<用户>-t<表1><表2>-e-o<脚本名称>.sql--导出数据库中表1和表2的表结构
db2move<数据库名>export--导出数据库数据
db2move<数据库名>export-tn<表1>,<表2>--导出数据库中表和表数据
9、数据库导入
db2-tvf<脚本名称>.sql--把上述导出的表结构导入到数据库表结构
db2move<数据库名>load-loreplace--把上述“db2move<数据库名>export“导出的数据导入到数据库中并把相同的数据替换掉
在实际使用过程中,如果用到db2自增主键,需要使用bydefault,而不是always,功能是一样的,但这样在数据移植时候会很方
便!
10、db2connectreset或db2terminate--断开与数据库的连接
11、db2setdb2codepage=1208--修改页编码为1208
12、db2describetable<表名>--查看表结构
13、db2listtables--查看数据库中所有表结构
listtablesforsystem--列出所有系统表
14、db2listtablespaces--列出表空间
二、高级篇
15、fetchfirst10rowsonly--列出表中前10条数据
例如:
select*from<表名>fetchfirst10rowsonly
16、coalesce(字段名,转换后的值)--对是null的字段进行值转换
例如:
selectcoalesce(id,1)from<表名>--对表中id如果为null转换成1
17、dayofweek(日期)--计算出日期中是周几(1是周日,2是周一.......7是周六)
dayofweek_iso--计算出日期中是周几(1是周一.......7是周日)
例如:
dayofweek(date(2008-01-16))--它会返回是4,代表星期三
dayofweek_iso(date(2008-01-16))--它会返回是3,代表星期三
18、dayofyear(日期)--一年中的第几天,范围在1-366范围之内
注意:
参数中日期的格式是YYYY-MM-DD的形式,如果不是需要进行转换,否则函数不能使用
例如:
日期是20080116必须要进行转换
dayofweek(concat(concat(concat(substr(openDate,1,4),'-'),concat(substr(openDate,5,2),'-')),substr(
openDate,7,2)))asweek)
这样格式正确的。
19、concatt(参数1,连接值)--把参数,加上连接值组成一个新值。
例如:
concat('aa','b')--返回是aab
把oracle表导入到db2数据库中,有些字段类型需要进行转换,具体看:
oracle与db2数据类型转换
启动DB2服务:
db2start
关闭DB2服务:
db2stop
一、加载数据:
1、以默认分隔符加载,默认为“,”号
db2"importfrombtpoper.txtofdelinsertintobtpoper"
2、以指定分隔符“|”加载
db2"importfrombtpoper.txtofdelmodifiedbycoldel|insertintobtpoper"
二、卸载数据:
1、卸载一个表中全部数据
db2"exporttobtpoper.txtofdelselect*frombtpoper"
db2"exporttobtpoper.txtofdelmodifiedbycoldel|select*frombtpoper"
2、带条件卸载一个表中数据
db2"exporttobtpoper.txtofdelselect*frombtpoperwherebrhid='907020000'"
db2"exporttocmmcode.txtofdelselect*fromcmmcodewherecodtp='01'"
db2"exporttocmmcode.txtofdelmodifiedbycoldel|select*fromcmmcodewherecodtp='01'"
三、查询数据结构及数据:
db2"select*frombtpoper"
db2"select*frombtpoperwherebrhid='907020000'andoprid='0001'"
db2"selectoprid,oprnm,brhid,passwdfrombtpoper"
四、删除表中数据:
db2"deletefrombtpoper"
db2"deletefrombtpoperwherebrhid='907020000'orbrhid='907010000'"
五、修改表中数据:
db2"updatesvmmstsetprtlines=0wherebrhid='907010000'andjobtp='02'"
db2"updatesvmmstsetprtlines=0wherejobtp='02'orjobtp='03'"
六、联接数据库
db2connecttobtpdbs
七、清除数据库联接
db2connectreset断开数据库连接
db2terminate断开数据库连接
db2forceapplicationsall断开所有数据库连接
八、备份数据库
1、db2backupdbbtpdbs
2、db2movebtpdbsexport
db2look-dbtpdbs-e-x[-a]-ocrttbl.sql
九、恢复数据库
1、db2restoredbbtpdbswithoutrollingforward
2、db2-tvfcrtdb.sql
crtdb.sql文件内容:
createdbbtpdbson/db2catalog
db2-stvfcrttbl.sql
db2movebtpdbsimport
十、DB2帮助命令:
db2?
db2?
restroe
db2?
sqlcode(例:
db2?
sql0803)注:
code必须为4位数,不够4位,前面补0
十一、bind命令:
将应用程序与数据库作一捆绑,每次恢复数据库后,建议都要做一次bind
(1)db2bindbr8200.bnd
(2)/btp/bin/bndall/btp/bnd
/btp/bin/bndall/btp/tran/bnd
十二、查看数据库参数:
db2getdbmcfg
db2getdbcfgforbtpdbs
十三、修改数据库参数:
db2updatedbcfgforbtpdbsusingLOGBUFSZ20
db2updatedbcfgforbtpdbsusingLOGFILSIZ5120
改完后,应执行以下命令使其生效:
db2stop
db2start
补充:
db2setschemabtp修改当前模式为"btp"
db2listtablespacesshowdetail查看当前数据库表空间分配状况
db2listtablespacecontainersfor2showdetail查看tablespaceid=2使用容器所在目录
db2listapplication
db2listdbdirectory列出所有数据库
db2listactivedatabases列出所有活动的数据库
db2listtablesforall列出当前数据库下所有的表
db2listtablesforschemabtp列出当前数据库中schema为btp的表
db2listtablespacesshowdetail显示数据库空间使用情况
db2listpackagesforall
db2"importfromtab76.ixfofixfcommitcount5000insertintoachact"
db2"createtableachact_tlikeachact"
db2"renametableachact_ttoachact"
db2"insertintoachact_tselect*fromachactwheretxndt>=(selectlstpgdtfrom
acmactwhereactno=achact.actno)"
db2getsnapshotfordynaimicsqlonjining
删除一个实例:
#cd/usr/lpp/db2_07_01/instance
#./db2idropInstName
列出所有DB2实例:
#cd/usr/lpp/db2_07_01/bin
#./db2ilist
为数据库建立编目
$db2catalogdbbtpdbson/db2catalog取消已编目的数据库btpdbs
$db2uncatalogdbbtpdbs
查看版本
#db2level
显示当前数据库管理实例
$db2getinstance
设置实例系统启动时是否自动启动。
$db2iauto-on自动启动
$db2iauto-off不自动启动
数据库优化命令:
reorg、runstats
当数据库经过一段时间使用,数据空间会变得越来越庞大。
一些delete掉
的数据仍存放在数据库中,占用数据空间,影响系统性能。
因此需要定期
运行reorg、runstats命令,清除已delete的数据,优化数据结构。
db2reorgtable表名
db2runstatsontable表名withdistributionandindexesall
因为要优化的表比较多,所以在/btp/bin目录下提供了一个sh程序runsall,
可在当天业务结束后,运行runsall,对数据库进行优化
======================================================================
======================================================================
================
DB2命令详解收藏
在使用DB2RDBMS时有几个重要的命令。
有关这些命令和其它数据库命令的附加信息,请参阅DB2文档。
这些命令用于以下操作:
启动一个DB2交互式会话
要启动一个交互式会话,请输入以下命令:
db2
编制DB2服务器节点目录
要编制DB2服务器节点目录,请输入以下命令:
db2catalogtcpipnodedb2noderemotehostnameserverservice_name
其中db2node是安装了DB2客户机的系统名称(它在节点目录列表中必须是唯一的),hostname是安装了DB2服务器的全限定系统名称,service_name是在services文件中定义的连接端口名。
编制远程DB2数据库目录
要编制远程数据库目录,请输入以下命令:
db2catalogdatabasedb_nameasalias_nameatnodedb2node
其中db_name是远程数据库的名称,alias_name是客户机实例的名称,db2node是安装了DB2客户机的系统名称。
连接到DB2服务器
要连接到DB2服务器,请输入以下命令:
db2connecttodatabaseusernameusingpassword
其中database是系统数据库目录中的数据库名称或别名,name是数据库实例所有者的用户名,password是先前用户的密码。
运行脚本
要运行脚本,请输入以下命令:
db2-fscript_name-o-t-zlog_name
其中script_name是脚本的名称,log_name是日志文件的名称。
结束一个DB2会话
要注销一个交互式会话,请输入以下命令:
quit
================================================================
以下主要以DB27.X为基础的.以下的字符为小写
本文对DB2高手来说是不用看的.
1.DB2产品的级别有那些?
企业版的NTERPRISEEDITION
工作组版WORKGROUPEDITION
企业扩展版ENTERPRISEEXTENDEDEDITION
个人版的PERSONALEDITION
卫星版的SATELLITEEDITION
微型版的EVERYPLACE
2.可以连接到DB2数据库的产品有哪些?
DB2客户端
DB2CONNECT
DB2DATAPROPAGATOR
DB2NET.DATA
DB2DATAJOINER
DB2RELATIONALCONNECT
WEBSPHERE应用服务器
等
3.DB2支持的通讯协议有哪些?
TCP/IP
NETBIOS
APPG
IPX/SPX
NAMEPIPE
等
4.DB2客户端产品有哪些?
DB2运行时间客户端DB2RUNTIMECLIENT
DB2管理客户端DB2ADMINISTRATIONCLIENT
DB2应用程序开发客户端DB2APPLICATIONDEVELOPMENTCLIENT
DB2瘦客户端DB2THINCLIENT
5.一个数据库是否可以安装在多个数据库服务器上?
可以
6.从哪个版本后存储过程可以用SQL语句来创建?
7.1版后
7.DB2提供哪些关系扩展器?
文本扩展器TEXTEXTENDER
图象扩展器IMAGEEXTENDER
音频扩展器AUDIOEXTENDER
视频扩展器VIDEOEXTENDER
空间数据扩展器SPATIALEXTENDER
XML扩展器XMLEXTENDER
网络搜索扩展器NET.SEARCHEXTENDER
8.WINDOWS和OS/2环境下的DB2安装目录结构?
用SETUP.EXE来安装
\SQLLIB安装的根目录,包括README文件
\SQLLIB\ADSM包含ADSTAR分布式存储管理器文件
\SQLLIB\BIN包含DB2工具的可执行文件
\SQLLIB\BND包含DB2工具的绑定文件
\SQLLIB\CC包含运行控制中心所需的文件
\SQLLIB\CFG包含默认的系统配置文件
\SQLLIB\CONV包含代码页转换表文件
\SQLLIB\DB2默认的实例目录
\SQLLIB\DB2DAS00缺省的DB2管理服务器目录
\SQLLIB\DOC包含DB2联机手册
\SQLLIB\FUNCTION默认的用户自定义函数目录
\SQLLIB\FUNCTION\UNFENCED默认的非隔离用户自定义函授目录
\SQLLIB\HELP联机帮助文件
\SQLLIB\JAVADB2所需的JAVA类库
JAVA12包含JDK1.2的支持程序
\SQLLIB\MISC包含HTML搜索服务器文件
\SQLLIB\MSG\PRIME包含信息文件
\SQLLIB\QP包含QUERYPATROLLER的客户端文件
\SQLLIB\SAMPLES包含样例程序和样例脚本
\SQLLIB\SPMLOG包含DB2同步点管理器日志文件
\SQLLIB\THNSETUP包含瘦客户端安装文件
9.UNIX和LINUX环境下的DB2安装目录结构?
用DB2SETUP.EXE来安装
安装的根目录下还将创建以下目录:
README安装的根目录,包括README文件
ADM包含系统管理工具文件
ADSM包含ADSTAR分布式存储管理器文件
BIN包含DB2工具的二进制可执行文件
BND包含DB2工具的绑定文件
CC包含运行控制中心所需的文件
CFG包含默认的系统配置文件
CONV包含代码页转换表文件
DOC包含DB2联机手册
FUNCTION默认的用户自定义函数目录
FUNCTION\UNFENCED默认的非隔离用ё远ㄒ搴谀柯?
lt;BR>INSTALL包含安
装程序
INSTANCE包含实例脚本
JAVADB2所需的JAVA类库
LIBDB2库文件
MAP包含DB2CONNECT使用的映射文件
MISC包含HTML搜索服务器文件
SAMPLES包含样例程序和样例脚本
MSG\$L包含DB2信息文件
10.AIX下用哪个命令来安装DB2?
INSTALLP命令
11.同一操作系统下可以安装多个DB2数据库?
可以的
12.如何停止实例?
DB2STOP
13.如何启动实例?
DB2START
[page]
14.如何修改注册项的值?
DB2SET可以修改
如:
设定当前实例的一个参数
DB2SETPARAMETER=VALUE
设定一个全局级的参数
DB2SETPARAMETER=VALUE-G(小写)
查看能在配置文件注册表中设置的所有变量的列表
DB2SET-LR(小写)
15.如何在CLP执行操作系统的命令?
在命令前加"!
"作为前缀
DB2=>!
DIRC:
\
16.在CLP中命令过长怎么办?
用"\"作为续行符号
17.如何获得DB2的命令的语法相关信息?
DB2?
显示所有DB2命令
DB2?
COMMAND显示命令信息
DB2?
SQLnnnn显示这个SQLCODE的解释信息
DB2?
DB2nnnn显示这个DB2错误的解释信息
18.如何查看当前CLP的设置?
DB2=>LISTCOMANDOPTIONS
19.如何更新当前CLP会话的特定项设置?
DB2UPDATECOMMANDOPTIONSUSINGOPTIONS...
20.COMMANDWINDOWS可以通过哪个命令调用?
DB2CMD命令
21.管理服务器的默认名为?
UNIX下为DB2AS
WINDOWS下为DB2DAS00
22.常用管理DB2服务器实例的命令?
DB2ADMINSTART启动DB2管理服务器实例
DB2ADMINSTOP停止DB2管理服务器实例
DASICRTUNIX下创建DB2管理服务器实例
DASIDROPUNIX下删除DB2管理服务器实例
DB2ADMINCREATEWINDOWSOROS/2下创建DB2管理服务器实例
DB2ADMINDROPWINDOWSOROS/2下删除DB2管理服务器实例
DB2GETADMINCFG显示DB2管理服务器的配置参数
DB2UPDATEADMINCFG修改DB2管理服务器的配置参数
DB2RESETADMINCFG将DB2管理服务器的配置参数设为默认值
23.DB2目录分为哪几种?
系统数据库目录
本地数据库目录
节点目录
DCS目录
管理节点目录
24.如何查看系统数据库目录?
LISTDBDIRECTORY
25.如何查看数据库服务器目录?
LISTNODEDIRECTORY
26.DB2实例的服务器的默认端口是?
50000
服务器名称为DB2CDB2
27.DB2UDB服务器端的认证类型有?
SERVER
SERVER_ENCRYPT
CLIENT
DCE
DCE_SERVER_ENCRYPT
KERBEROS
KRB_SERVER_ENCRYPT
28.DB