DB2一般操作指南本文适用于IBM®DB2®UniversalDatabase™forLinux、UNIX®和Windows®。1.启动实例(db2inst1):db2start2.停止实例(db2inst1):db2stop3.列出所有实例(db2inst1)db2ilist4.列出当前实例:db2getinstance5.设置当前实例setdb2instance=db26.察看示例配置文件:db2getdbmcfg|more7.更新数据库管理器参数信息:db2updatedbmcfgusingpara_namepara_value8.创建数据库:db2createdbtest9.察看数据库配置参数信息db2getdbcfgfortest|more10.更新数据库参数配置信息db2updatedbcfgfortestusingpara_namepara_value11.删除数据库:db2dropdbtest12.连接数据库db2connecttotest13.列出所有表空间的详细信息。db2listtablespacesshowdetail14.列出容器的信息db2listtablespacecontainersfortbs_idshowdetail15.创建表:db2createtabletb1(idintegernotnull,namechar(10))16.列出所有表db2listtables17.插入数据:db2insertintotb1values(1,’sam’);db2insertintotb2values(2,’smitty’);18.查询数据:db2select*fromtb119.数据:db2deletefromtb1whereid=120.创建索引:db2createindexidx1ontb1(id);21.创建视图:db2createviewview1asselectidfromtb122.查询视图:db2select*fromview123.节点编目db2catalogtcpnodenode_nameremoteserver_ipserverserver_portdb2catalogtcpipnodeisapremote10.204.155.60server5000124.察看端口号db2getdbmcfg|grepSVCENAME25.测试节点的附接db2attachtonode_name26.察看本地节点db2listnodedirecotry27.节点反编目db2uncatalognodenode_name28.数据库编目db2catalogdbdb_nameasdb_aliasatnodenode_namedb2catalogdbpisadbaspisadbatnodeisapdb2catalogdbportaldbasportaldbatnodeisap29.察看数据库的编目db2listdbdirectory30.连接数据库db2connecttodb_aliasuseruser_nameusinguser_password31.数据库反编目db2uncatalogdbdb_alias32.导出数据db2exporttomyfileofixfmessagesmsgselect*fromtb133.导入数据db2importfrommyfileofixfmessagesmsgreplaceintotb134.导出数据库的所有表数据db2movetestexport35.生成数据库的定义db2look-ddb_alias-a-e-m-l-x-f-odb2look.sql36.创建数据库db2createdbtest137.生成定义db2-tvfdb2look.sql38.导入数据库所有的数据db2movedb_aliasimport39.重组检查db2reorgchk40.重组表tb1db2reorgtabletb141.更新统计信息db2runstatsontabletb142.备份数据库testdb2backupdbtest43.恢复数据库testdb2restoredbtest44.命令处理器参数列举可用命令格式:db2listcommandoptions更改命令格式:updatecommandoptionsusingoptionvalue(on/off)实例:比如更改命令行自动提交的参数db2=updatecommandoptionsusingCoff--或on,只是临时改变命令行下db2setdb2options=+c--或-c,永久改变45.获取当前机器db2所有配置信息:db2support.-ddbname-c此时数据库管理程序将生成一个db2support压缩文件包。46.更新数据库版本级别(适用于使用不通版本备份恢复时使用)v7:db2updv7db2updv7–ddbname–uusername–ppasswordv8:db2updv8db2updv7–ddbname–uusername–ppassword47.获取当前机器的管理级配置db2set–all48.强制终止指定连接db2forceapplicationappname49.强制终止所用连接db2forceapplicationall附:一些具体使用实例//建立数据库DB2_GCBCREATEDATABASEDB2_GCBONG:ALIASDB2_GCBUSINGCODESETGBKTERRITORYCNCOLLATEUSINGSYSTEMDFT_EXTENT_SZ32//连接数据库connecttosample1userdb2adminusing8301206//建立别名createaliasdb2admin.tablesforsysstat.tables;CREATEALIASDB2ADMIN.VIEWSFORSYSCAT.VIEWScreatealiasdb2admin.columnsforsyscat.columns;createaliasguest.columnsforsyscat.columns;//建立表createtablezjt_tablesas(select*fromtables)definitiononly;createtablezjt_viewsas(select*fromviews)definitiononly;//插入记录insertintozjt_tablesselect*fromtables;insertintozjt_viewsselect*fromviews;//建立视图createviewV_zjt_tablesasselecttabschema,tabnamefromzjt_tables;//建立触发器CREATETRIGGERzjt_tables_delAFTERDELETEONzjt_tablesREFERENCINGOLDASOFOREACHROWMODEDB2SQLInsertintozjt_tables1values(substr(o.tabschema,1,8),substr(o.tabname,1,10))//建立唯一性索引CREATEUNIQUEINDEXI_ztables_tabnameONzjt_tables(tabname);//查看表selecttabnamefromtableswheretabname='ZJT_TABLES';//查看列selectSUBSTR(COLNAME,1,20)as列名,TYPENAMEas类型,LENGTHas长度fromcolumnswheretabname='ZJT_TABLES';//查看表结构db2describetableuser1.departmentdb2describeselect*fromuser.tables//查看表的索引db2describeindexesfortableuser1.department//查看视图selectviewnamefromviewswhereviewname='V_ZJT_TABLES';//查看索引selectindnamefromindexeswhereindname='I_ZTABLES_TABNAME';//查看存贮过程SELECTSUBSTR(PROCSCHEMA,1,15),SUBSTR(PROCNAME,1,15)FROMSYSCAT.PROCEDURES;//类型转换(cast)ipdatatype:varcharselectcast(ipasinteger)+50fromlog_comm_failed//重新连接connectreset//中断数据库连接disconnectdb2_gcb//viewapplicationLISTAPPLICATION;//killapplicationFORCEAPPLICATION(0);db2forceapplicationsall(强迫所有应用程序从数据库断开)//locktable//独占locktabletestinexclusivemode//共享locktabletestinsharemode//显示当前用户所有表listtables//列出所有的系统表listtablesforsystem//显示当前活动数据库listactivedatabases//查看命令选项listcommandoptions//系统数据库目录LISTDATABASEDIRECTORY//表空间listtablespaces//表空间容器LISTTABLESPACECONTAINERSFORExample:LISTTABLESPACECONTAINERSFOR1//显示用户数据库的存取权限GETAUTHORIZATIONS//启动实例DB2START//停止实例db2stop//表或视图特权grantselect,delete,insert,updateontablestousergrantallontablestouserWITHGRANTOPTION//程序包特权GRANTEXECUTEONPACKAGEPACKAGE-nameTOPUBLIC//模式特权GRANTCREATEINONSCHEMASCHEMA-nameTOUSER//数据库特权grantconnect,createtab,dbadmondatabasetouser//索引特权grantcontrolonindexindex-nametouser//信息帮助(?XXXnnnnn)例:?SQL30081//SQL帮助(说明SQL语句的语法)helpstatement例如,helpSELECTSQLSTATE帮助(说明SQL的状态和类别代码)?sqlstate或?class-code//更改与“管理服务器”相关的口令db2adminsetidusernamepassword//创建SAMPLE数据库db2sampldb2samplF:(指定安装盘)//使用操作系统命令!dir//转换数据类型(cast)SELECTEMPNO,CAST(RESUMEASVARCHAR(370))FROMEMP_RESUMEWHERERESUME_FORMAT='ascii'//要运行DB2Java存储过程或UDF,还需要更新服务器上的DB2数据库管理程序配置,以包括在该机器上安装JDK的路径db2updatedbmcfgusingJDK11_PATHd:\sqllib\java\jdkTERMINATEupdatedbmcfgusingSPM_NAMEsample//检查DB2数据库管理程序配置db2getdbmcfg//检索具有特权的所有授权名SELECTDISTINCTGRANTEE,GRANTEETYPE,'DATABASE'FROMSYSCAT.DBAUTHUNIONSELECTDISTINCTGRANTEE,GRANTEETYPE,'TABLE'F