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,假设是server,则參数须要改动。
#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 set schema btp 改动当前模式为"btp"
db2 list tablespaces show detail
查看当前数据库表空间分配状况
db2 list tablespace containers for 2 show detail
查看tablespace id=2使用容器所在文件夹
db2 list application
db2 list db directory
列出全部数据库
db2 list active databases
列出全部活动的数据库
db2 list tables for all
列出当前数据库下全部的表
db2 list tables for schema btp
列出当前数据库中schema为btp的表
db2 list tablespaces show detail
显示数据库空间使用情况
db2 list packages for all
db2 "import from tab76.ixf of ixf commitcount 5000 insert into achact"
db2 "create table achact_t like achact"
db2 "rename table achact_t to achact"
db2 "insert into achact_t select * from achact where txndt>=(select lstpgdt from
acmact where actno=achact.actno)"
db2 get snapshot for dynaimic sql on jining
删除一个实例:
# cd /usr/lpp/db2_07_01/instance
# ./db2idrop InstName
列出全部DB2实例:
# cd /usr/lpp/db2_07_01/bin
# ./db2ilist
为数据库建立编目
$ db2 catalog db btpdbs on /db2catalog
取消已编目的数据库btpdbs
$ db2 uncatalog db btpdbs
查看版本号
# db2level
显示当前数据库管理实例
$ db2 get instance
设置实例系统启动时是否自己主动启动。
$ db2iauto -on 自己主动启动
$ db2iauto -off 不自己主动启动
数据库优化命令:
reorg、runstats
当数据库经过一段时间使用,数据空间会变得越来越庞大。一些delete掉
的数据仍存放在数据库中,占用数据空间,影响系统性能。
因此须要定期
运行reorg、runstats命令,清除已delete的数据,优化数据结构。
db2 reorg table 表名
db2 runstats on table
表名 with distribution and indexes all
由于要优化的表比較多。所以在/btp/bin文件夹下提供了一个sh程序runsall,
可在当天业务结束后,运行runsall,对数据库进行优化
在DB2的开发过程中,贯穿整个开发过程还有非常重要的一部分工作就是数据库的维护;对于维护一个庞大信息系统来说是非常必要的。留一份简易的维护手冊。以备不时之需。下面收集到的部分维护命令,以飨我们的维护project师和项目经理。
=================================================================
38、更改db2日志空间的大小
备注:下面命令为了防止db2数据库过份使用硬盘空间而设,仅用于开发人员自己机器上的db2。假设是server,则參数须要改动。
# db2 UPDATE DB CFG FOR <db name> USING logretain OFF logprimary 3 logsecond 2 logfilsiz 25600;
假设页大小是4KB,则以上命令创建3个100M的日志文件,占用300MB硬盘空间。25600*4KB=102400KB。
39、创建暂时表空间
#DB2 CREATE USER TEMPORARY TABLESPACE STMASPACE PAGESIZE 32 K MANAGED BY DATABASE USING (FILE 'D:\DB2_TAB\STMASPACE.F1' 10000) EXTENTSIZE 256
40、创建表空间
rem 创建缓冲池空间 8K
#db2 connect to gather
#db2 CREATE BUFFERPOOL STMABMP IMMEDIATE SIZE 25000 PAGESIZE 8K
rem 创建表空间:STMA
rem 必须确认路径正确
rem D:\DB2Container\Stma
#db2 drop tablespace stma
#db2 CREATE REGULAR TABLESPACE STMA PAGESIZE 8 K MANAGED BY SYSTEM USING ('D:\DB2Container\Stma' ) EXTENTSIZE 8 OVERHEAD 10.5 PREFETCHSIZE 8 TRANSFERRATE 0.14 BUFFERPOOL STMABMP DROPPED TABLE RECOVERY OFF
#db2 connect reset
41、将暂挂的数据恢复到前滚状态
#db2 ROLLFORWARD DATABASE TESTDB TO END OF LOGS AND COMPLETE NORETRIEVE
42、备份表空间
#BACKUP DATABASE YNDC TABLESPACE ( USERSPACE1 ) TO "D:\temp" WITH 2 BUFFERS BUFFER 1024 PARALLELISM 1 WITHOUT PROMPTING
43、创建db2工具数据库
#db2 create tools catalog systools create new database toolsdb
44、怎样进行增量/差量备份
增量:上一次完整备份至本次备份之间添加的数据部分;
差量(delta):上次备份以来(可能是完整备份、增量备份或者差量备份)至本次备份之间添加的数据部分;
45、更新全部表的统计信息
#db2 -v connect to DB_NAME
#db2 -v "select tbname, nleaf, nlevels, stats_timefrom sysibm.sysindexes"
#db2 -v reorgchkupdate statistics on table all
#db2 -v "select tbname, nleaf, nlevels, stats_timefrom sysibm.sysindexes"
#db2 -v terminate
46、对一张表运行统计信息
#db2 -v runstatson table TAB_NAMEand indexes all
47、查看是否对数据库运行了RUNSTATS
#db2 -v "select tbname, nleaf, nlevels,stats_timefrom sysibm.sysindexes"
48、更改缓冲池的大小
缓冲池中,当syscat.bufferpools的npages是-1时,由数据库的配置參数bufferpage控制缓冲池的大小。
将npages的值更改为-1的命令:
#db2 -v connect to DB_NAME
#db2 -v select * from syscat.bufferpools
#db2 -v alter bufferpoolIBMDEFAULTBP size -1
#db2 -v connect reset
#db2 -v terminate
更改数据库配置參数BufferPages的命令例如以下:
#db2 -v update db cfgfor dbnameusing BUFFPAGE bigger_value
#db2 -v terminate
49、看数据库监视内容列表
#db2 -v get monitor switches
50、打开某个数据库监视内容
#db2 -v update monitor switches using bufferpoolon
51、获取数据库快照
#db2 -v get snapshot for all databases > snap.out
#db2 -v get snapshot for dbm>> snap.out
#db2 -v get snapshot for all bufferpools>> snap.out
#db2 -v terminate
52、重置数据库快照
#db2 -v reset monitor all
53、计算缓冲池命中率
理想情况下缓冲池命中率在95%以上,计算公式例如以下:
(1 -((buffer pool data physical reads + buffer pool index physical reads)
/(buffer pool data logical reads + pool index logical reads))) *100%
=========数据库实例========================
54、创建db2实例
#db2icrt <实例名称>
55、删除db2实例
#db2idrop <实例名称>
56、设置当前db2实例
#set db2intance=db2
57、显示db2拥有的实例
#db2ilist
58、恢复离线增量备份数据库的命令
#DB2 RESTORE DATABASE YNDC INCREMENTAL AUTOMATIC FROM D:\backup\autobak\db2 TAKEN AT 20060314232015
59、创建样本数据库
在unix平台。使用:
#sqllib/bin/db2sampl <path>
在windows,os/2平台,使用:db2sampl e,e是可选參数。指定将创建数据库的驱动器
60、设置联合数据库为可用(默认联合数据库不可用)
#db2 update dbm cfg using federated yes
61、列出数据库中全部的表
#db2 list tables
62、数据迁移方法1
export脚本演示样例
#db2 connect to testdb user test password test
#db2 "export to aa1.ixf of ixf select * from table1"
#db2 "export to aa2.ixf of ixf select * from table2"
#db2 connect reset
import脚本演示样例
#db2 connect to testdb user test password test
#db2 "load from aa1.ixf of ixf replace into table1 COPY NO without prompting "
#db2 "load from aa2.ixf of ixf replace into table2 COPY NO without prompting "
#db2 connect reset
具体出处參考:http://www.jb51.net/article/21172.htm
DB2经常使用命令的更多相关文章
- DB2数据库常用命令数据库学习
DB2数据库常用命令数据库学习你可以用 get snapshot for locks on XXX 看是那个表锁了,再从相关的操作去查原因吧 db2pd -d 库名 -locks和db2pd -d 库 ...
- (转)DB2 restart database命令的作用总结
DB2 restart database命令的作用总结 原文:https://blog.csdn.net/qingsong3333/article/details/62049039 信息中心对于RES ...
- DB2常用sql命令
DB2 清除数据库序列缓存 alter sequence wfr.wfr_bill_histories_s nocache; 创建清空所有表数据脚本select 'alter table '||RT ...
- DB2数据库常用命令
--创建数据库 CREATE DATABASE example AUTOMATIC STORAGE YES --自动存储 ON 'D:\' DBPATH ON'D:\' --指定数据库控制文件的存储路 ...
- 【DB2】DB2使用IMPORT命令导入含有自增长列的表报错处理
1.启动数据库:db2start 2.创建数据库:create db TestDB using codeset gbk territory CN collate using identity 3.连 ...
- DB2常用命令
DB2安装启动服务中启动不了,可用command启动并查看windows系统的日志.1.启动数据库 db2start2.停止数据库 db2stop3.连接数据库运行 db2命令之前要先运行db2c ...
- DB2 常用命令小结
. 打开命令行窗口 #db2cmd . 打开控制中心 # db2cmd db2cc . 打开命令编辑器 db2cmd db2ce =====操作数据库命令===== . 启动数据库实例 #db2sta ...
- db2命令
把远程的数据库信息加载到本地 第一步,catalog server端的node ,命令如下: db2 catalog tcpip node db2node remote hostname server ...
- db2常用命令大全
#显示这个DB2错误的解释信息(SQLSTATE 5位数字)db2 ? 42704 #显示这个SQLCODE的解释信息(SQLCODE 四位数字) db2 ? SQL0204N ##查看数据库指定配置 ...
随机推荐
- EditPlus 4.3.2473 中文版已经发布(10月21日更新)
新的 EditPlus 修复了如下问题: * Ctrl+鼠标拖放文本功能异常 * 上传文件到 FTP 服务器失败后将弹出对话框,可重试上传 * 列选模式下粘贴到现存的选中内容时文本错乱的问题 本博客已 ...
- 《高性能CUDA应用设计与开发》--笔记
第一章 1.2 CUDA支持C与C++两种编程语言,该书中的实例采取的是Thrust数据并行API,.cu作为CUDA源代码文件,其中编译器为ncvv. 1.3 CUDA提供多种API: 数据并行 ...
- 根据Excel文件中的内容,修改指定文件夹下的文件名称
问题:根据Excel文件中内容,把文件名称由第2列,改为第1列.比如:把文件“123.jpg”修改为“1.jpg”.
- 20145315 《Java程序设计》第七周学习总结
20145315 <Java程序设计>第七周学习总结 教材学习内容总结 第十三章 时间与日期 13.1.1时间的度量 1.格林威治时间(GMT):参考太阳到达最高点,有时间误差. 2.世界 ...
- 2017-2018-1 JaWorld 第六、七周作业
2017-2018-1 JaWorld 第六.七周作业 修改需求规格说明书 上次的<需求规格说明书>初稿有哪些不足? 王译潇同学回答: 1. 引言和目的性考虑的不是很周全. 2. ...
- POJ 2771 Guardian of Decency
http://poj.org/problem?id=2771 题意: 一个老师想带几个同学出去,但是他怕他们会谈恋爱,所以带出去的同学两两之间必须满足如下条件之一: ①身高差大于40 ②同性 ③喜欢 ...
- mis权限系统
在mis中开发,主要目的是有一个统一的权限管理(即r360.right表),以及一个统一的系统和界面供后台配置管理 1.数据库准备工作: mis后台涉及表: right表是权限操作表,role_rig ...
- **优化--后端**: 计数缓存counter_cache; rack-mini-profiler(2300🌟) ; bullet(5000✨):侦测N+1query
rack-mini-profiler 这个 gem,可以永远显示网页的加载时间.(2300✨)开发环境和产品环境都可以用.(生成非常详细的报告) development环境,直接使用gem 'rack ...
- 先对结果集排序然后做update、delete操作
--先排序然后删除第n条数据delete from scott.emp where empno in (select empno from (select * ...
- 一. Spring框架防XXS跨站攻击
使用 Spring 框架进行 Java Web 开发,可以在 web.xml 文件中设置 HTML encode,在 JSP 文件页面元素 form 中确定实施. web.xml 加上: <co ...