DB2常用命令列表

一、常用命令

-----$dbname    数据库名字
-----$dbuser    用户名字
-----$dbusing   用户密码
-----$tbname    表名
-----$vname     视图名

1. 建立数据库DB2_GCB

db2 create db  $dbname  on /opt/da ta using codeset GBK territory zh_CN

2.设置数据库参数
db2 update db cfg for $dbname  using STMTHEAP 4096

3. 连接数据库
connect to $dbname  user $dbuser using $dbusing 

3. 插入记录
insert into zjt_tables select * from tables;
insert into zjt_views   select * from views;

6. 建立视图
create view V_zjt_tables as select tabschema,tabname from zjt_tables;

9. 查看表
select name from sysibm.tables

11. 查看表结构
db2 describe table user1.tables 
db2 describe select * from user.tables

12. 查看视图

select viewname from views
where viewname='V_ZJT_TABLES';

13. 重新连接
connect reset

14. 中断数据库连接
disconnect db2_gcb

15. view application
 
DB2 LIST APPLICATION;

16. kill application

db2 force applications all (强迫所有应用程序从数据库断开)

17. 显示当前用户所有表
db2 list tables

          Note:列出Shcema的值为CONFORM的所有表

          db2 list tables for schema CONFORM

18. 列出所有的系统表
db2 list tables for system

19. 显示当前活动数据库
db2 list active databases

20. 查看命令选项
list command options

21. 系统数据库目录
db2 list database directory

21. 表空间
db2 list tablespaces
db2 list tablespaces show detail

22. 表空间容器
LIST TABLESPACE CONTAINERS FOR

23. 显示用户数据库的存取权限
GET AUTHORIZATIONS

24. 启动实例
DB2START

25. 停止实例
db2stop


26. 程序包特权
GRANT EXECUTE
ON PACKAGE PACKAGE-name
TO PUBLIC

27. 模式特权
GRANT CREATEIN ON SCHEMA SCHEMA-name TO USER

28. 数据库特权
grant connect,createtab,dbadm on database to user

GRANT  DBADM,CREATETAB,BINDADD,CONNECT,CREATE_NOT_FENCED_ROUTINE,IMPLICIT_SCHEMA,LOAD,CREATE_EXTERNAL_ROUTINE,QUIESCE_CONNECT ON DATABASE  TO USER sino_zgs;
29. 索引特权
grant control on index index-name to user

30. 信息帮助 (? XXXnnnnn )
例:? SQL30081

31. SQL 帮助(说明 SQL 语句的语法)
help statement
例如,help SELECT

32. 检查 DB2 数据库管理程序配置
db2 get dbm cfg


db2 export to staff.ixf of ixf select * from userid.staff
 

db2 imp ort from stafftab.ixf of ixf insert into userid.staff


33.DB2的db2look命 令诠释如下:

db2look 版本 8.2
db2look:生成 DDL 以便重新创建在数据库中定义的对象
语法: db2look -d DBname [-e] [-u Creator] [-z Schema] [-t Tname1 Tname2...TnameN] [-tw Tname] [-h] [-o Fname] [-a]
                        [-m] [-c] [-r] [-l] [-x] [-xd] [-f] [-fd] [-td x] [-noview] [-i userID] [-w password]
                        [-v Vname1 Vname2 ... VnameN]
                        [-wrapper WrapperName] [-server ServerName] [-nofed]

      db2look -d DBname [-u Creator] [-s] [-g] [-a] [-t Tname1 Tname2...TnameN]
                        [-p] [-o Fname] [-i userID] [-w password]
      db2look [-h]

        -d: 数据库名称:这必须指定

        -e: 抽取复制数据库所需要的 DDL 文件
            此选项将生成包含 DDL 语句的脚本
            可以对另一个数据库运行此脚本以便重新创建数据库对象
            此选项可以和 -m 选项一起使用
        -u: 创建程序标识:若 -u 和 -a 都未指定,则将使用 $USER
            如果指定了 -a 选项,则将忽略 -u 选项
        -z: 模式名:如果同时指定了 -z 和 -a,则将忽略 -z
            联合部分的模式名被忽略
        -t: 生成指定表的统计信息
            可以指定的表的数目最多为 30
       -tw: 为名称与表名的模式条件(通配符)相匹配的表生成 DDL
            当指定了 -tw 选项时,-t 选项会被忽略
        -v: 只为视图生成 DDL,当指定了 -t 时将忽略此选项
        -h: 更详细的帮助消息
        -o: 将输出重定向到给定的文件名
            如果未指定 -o 选项,则输出将转到 stdout
        -a: 为所有创建程序生成统计信息
            如果指定了此选项,则将忽略 -u 选项
        -m: 在模拟方式下运行 db2look 实用程序
            此选项将生成包含 SQL UPDATE 语句的脚本
            这些 SQL UPDATE 语句捕获所有统计信息
            可以对另一个数据库运行此脚本以便复制初始的那一个
            当指定了 -m 选项时,将忽略 -p、-g 和 -s 选项
        -c: 不要生成模拟的 COMMIT 语句
            除非指定了 -m 或 -e,否则将忽略此选项
            将不生成 CONNECT 和 CONNECT RESET 语句
            省略了 COMMIT。在执行脚本之后,需要显式地进行落实。
        -r: 不要生成模拟的 RUNSTATS 语句
            缺省值为 RUNSTATS。仅当指定了 -m 时,此选项才有效
        -l: 生成数据库布局:数据库分区组、缓冲池和表空间。
        -x: 如果指定了此选项,则 db2look 实用程序将生成授权 DDL
            对于现有已授权特权,不包括对象的原始定义器
       -xd: 如果指定了此选项,则 db2look 实用程序将生成授权 DDL
            对于现有已授权特权,包括对象的原始定义器
        -f: 抽取配置参数和环境变量
            如果指定此选项,将忽略 -wrapper 和 -server 选项
       -fd: 为 opt_buffpage 和 opt_sortheap 以及其它配置和环境参数生成 db2fopt 语句。
       -td: 将 x 指定为语句定界符(缺省定界符为分号(;))
            应该与 -e 选项一起使用(如果触发器或者 SQL 例程存在的话)
        -p: 使用明文格式
        -s: 生成 postscript 文件
            此选项将为您生成 postscript 文件
            当设置了此选项时,将除去所有 latex 和 tmp ps 文件
            所需的(非 IBM)软件:LaTeX 和 dvips
            注意:文件 psfig.tex 必须在 LaTeX 输入路径中
        -g: 使用图形来显示索引的页访存对
            必须安装 Gnuplot,并且 <psfig.tex> 必须在您的 LaTeX 输入路径中
            还将随 LaTeX 文件一起生成 <filename.ps> 文件
        -i: 登录到数据库驻留的服务器时所使用的用户标识
        -w: 登录到数据库驻留的服务器时所使用的密码
   -noview: 不要生成 CREATE VIEW ddl 语句
  -wrapper: 为适用于此包装器的联合对象生成 DDL
            生成的对象可能包含下列各项:
            包装器、服务器、用户映射、昵称、类型映射、
            函数模板、函数映射和索引规范
   -server: 为适用于此服务器的联合对象生成 DDL
            生成的对象可能包含下列各项:
            包装器、服务器、用户映射、昵称、类型映射、
            函数模板、函数映射和索引规范
    -nofed: 不要生成 Federated DDL
            如果指定此选项,将忽略 -wrapper 和 -server 选项

LaTeX 排版:latex filename.tex 以获得 filename.dvi

示例: db2look -d DEPARTMENT -u walid -e -o db2look.sql

 -- 这将生成由用户 WALID 创建的所有表和联合对象的 DDL 语句
 -- db2look 输出被发送到名为 db2look.sql 的文件中

示例: db2look -d DEPARTMENT -z myscm1 -e -o db2look.sql

 -- 这将为模式名为 MYSCM1 的所有表生成 DDL 语句
 -- 还将生成 $USER 创建的所有联合对象的 DDL。
 -- db2look 输出被发送到名为 db2look.sql 的文件中

示例: db2look -d DEPARTMENT -u walid -m -o db2look.sql

 -- 这将生成 UPDATE 语句以捕获关于用户 WALID 创建的表/昵称的统计信息
 -- db2look 输出被发送到名为 db2look.sql 的文件中

示例: db2look -d DEPARTMENT -u walid -e -wrapper W1 -o db2look.sql

 -- 这将生成由用户 WALID 创建的所有表的 DDL 语句
 -- 还将生成适用于包装器 W1 的用户 WALID 所创建所有联合对象的 DDL
 -- db2look 输出被发送到名为 db2look.sql 的文件中

示例: db2look -d DEPARTMENT -u walid -e -server S1 -o db2look.sql

 -- 这将生成由用户 WALID 创建的所有表的 DDL 语句
 -- 还将生成适用于服务器 S1 的用户 WALID 所创建所有联合对象的 DDL
 -- db2look 输出被发送到名为 db2look.sql 的文件中

导出数据库的表结构:db2look -d estudy -a -e -m -x -l -f -o db2look.sql


34.
db2move $dbname export  用户表的数据

35. 创建库
db2 " create database zftest using codeset GBK territory zh_CN  USER TABLESPACE MANAGED BY system USING ('/home/db2inst3/user.dat','   ') 


36.修改表空间
ALTER TABLESPACE TS1
     RESIZE (FILE '/conts/cont0' 2000,FILE 'cont1' 2000)

ALTER TABLESPACE TS1
     RESIZE (ALL 2000)

ALTER TABLESPACE TS1
     EXTEND (FILE '/conts/cont0' 1000,FILE 'cont2' 1300)

ALTER TABLESPACE TS0
     ADD (FILE 'cont2' 20 M, FILE 'cont3' 2000)

 

37.查看DB2实列的 配置参数
db2 get  dbm cfg

38.修改访问量

update dbm cfg using maxagents 400

39.当表的状态为check pending(死锁了)
set integrity for  表名 immediate checked ;

40. SQL0668N  由于表 "db2inst1.test" 上的原因代码 "3",所以不允许操作。

SQLSTATE=57016  表处于load状态由于没有load完所以被挂起
解决办法创建个空文 件执行此命令
db2 load from del文件地址  of del terminate into 表名
重新执行原来的任务
db2 load from del文件地址  of del restart into 表名

41.查看缓冲池
db2 "select * from syscat.bufferpools";

42.列出表空间
db2 connect to $dbname  user $dbuser using $dbusing 
db2 list tablespaces


42. 创建缓冲池
创建数据库的时候会创建一个 IBMDEFAULTBP 缓冲池

CREATE BUFFERPOOL BFP2
  IMMEDIATE  ---意思是说以后ALTER BUFFERPOOL时会立即生效
  ALL DBPARTITIONNUMS
  SIZE 3000   ---- SIZE 关键字来覆盖该缺省值
  NUMBLOCKPAGES 0
  PAGESIZE 16 K;   ---页大小


43.创建表空间
当您创建数据库时,将创建三个表空间(SYSCATSPACE--目录表空间、 TEMPSPACE1--临时表空间 这个表空间很重要放一些临时数据 我门可以自己键系统临时表空间假如说我门自己键了一个用户表空间DMS类型的那就需要一个PAGESIZE 大小一样的系统临时表空间 和 USERSPACE1--用户表空间)
创建系统临时表空间
    CREATE SYSTEM TEMPORARY TABLESPACE tmp_tbsp PAGESIZE 32K
      MANAGED BY SYSTEM --建立的是SMS 系统临时表空间
      USING ('/opt/da
ta2/tmp_tbsp')
    BUFFERPOOL TEMPPOOL;

创建用户表空间   

CREATE TABLESPACE YWCHG1IDX
  IN DATABASE PARTITION GROUP IBMDEFAULTGROUP
  PAGESIZE 16K  ---页大小
  MANAGED BY DATABASE --建立的是DMS 类型的用户表空间
  USING
   (File '/opt/da
ta/sino/zgsrywchg1idx1' 12800,
    File '/opt/da
ta/sino/zgsrywchg1idx2' 12800,
    File '/opt/da
ta/sino/zgsrywchg1idx3' 12800,
    File '/opt/da
ta/sino/zgsrywchg1idx4' 12800
   )
  EXTENTSIZE 32  --指定在跳到下一个容器之前将写到当前容器中的页数该参数只有在表空间中有多个容器时才起作用
  PREFETCHSIZE 64  ---指定当执行数据预取时将从表空间读取的页数
  BUFFERPOOL CHG1IDXBP   ---指定的缓冲池
  OVERHEAD 12.67  --开销 defaule 24.1
  TRANSFERRATE 0.18   ---传送速率 0.9
  DROPPED TABLE RECOVERY ON;

44.创建系统临时表空间
    CREATE SYSTEM TEMPORARY TABLESPACE tmp_tbsp PAGESIZE 32K
      MANAGED BY SYSTEM --建立的是SMS 系统临时表空间
      USING ('/opt/da
ta2/tmp_tbsp')
    BUFFERPOOL TEMPPOOL;

45.脱机备份数据库
 db2 backup db sino
 
 46. 打成TAQ包

tar -cvf 目录.tar 目录
--解包
tar -xvf 目录.tar 目录

47. 将TAR包压缩

gzip 目录.tar  -->目录.tar.gz

gunzip --解压缩

48. 恢复数据库

db2 restore db sino without rolling forward

49.如何重新启 动数据库?
RESTART  DATABASE   DATABASE _NAME
  

50.如何激活数据库?
ACTIVATE DATABASE  DATABASE _NAME
  
51.如何停止数据库?

DEACTIVATE DATABASE  DATABASE _NAME

52.查看备份的记录
db2 list history backup all for sino

53.DB2 日志
修改日志文件大小:update db cfg using logfilsiz 65536; 实际大小为65536(页数)×4k(块大小);
增加主日志文件数:update db cfg using logprimary 10;最多不超过256;
也可以增加辅助日志文件数:update db cfg using logsecond 100;最大不超过254;辅助日志文件在需要时分配,不再使用时系统收回


54.db2中的三种日志文件的类型
db2.log ,db2cc.log,db2diag.log

55.列出DB的实例
db2ilist
56.全部 DB2 配置文件注册库
db2set -lr
57.显示服务器上当前设置的所有 DB2 配置文件注册库,请执行以下命令
db2set -all
58.得到当前数据库的实例
db2 get instance

59.显示的停止某个应用
force application (APP HANDLE)

60.列出数据库中定义的所有表
list tables for all

61.显示指定的表的结构
describe table tablename


62.使用表压缩

create table table_name ... compress yes

alter table tablename compress yes

 

63.创建压缩字典

第一次压缩一个表(或者您想重建压缩字典)时,必须运行命令:

reorg table  table_name resetdictionary

64.压缩表估计节省的空间

db2 inspect rowcompestimate table name $tbname results keep file_name

65. 将二进制输出文件转换成一个名为 output_file_name 的文本文件

db2inspf file_name output_file_name

66.DB2 中提供了三个数据移动实用程序:
EXPORT
IMP
ORT
LOAD

67.EXPORT 导出数据
EXPORT TO del_name OF DEL MESSAGES logfile_name SELECT * FROM $tbname;

EXPORT TO myfile.del OF DEL MODIFIED BY chardel! coldel@ codepage=1208 timestampformat="yyyy.mm.dd hh:mm tt"
 MESSAGES msg.out
 SELECT * FROM $tbname;
 
chardelx
--指定 x 作为新的单字符字符串分界符。默认值是一个双引号(")。
coldelx
--指定 x 作为新的单字符列分界符。默认值是一个逗号(,)。
codepage=x
--指定 x (一个 ASCII 字符串)作为输出数据的新的码页(co
de page)。在导出操作期间,字符数据被从应用程序码页转换成这种码页。
timestampformat="x"
x 是源表中时间戳的格式。

--前面的命令按照以下方式将 SCHEDULE 表中的数据导出到 DEL 格式的文件中:

--字符串以感叹号(!)括起来。
--列之间以 @ 符号分隔开。
--将字符串转换成码页 1208。
--SCHEDULE 表中用户定义的时间戳的格式为 yyyy.mm.dd hh:mm tt。

--用 LOBSINFILE 修饰符导出大型对象
EXPORT TO file_name OF file_type
    LOBS TO lobfile_directory_1, lobfile_directory_2, ...
    LOBFILE lobfilename
    MODIFIED BY LOBSINFILE
    MESSAGES message_file
    select_statement

      
--68.DB2 数据移动实用程序

db2move

db2move sino imp ort -u sino_zgs -p 123456 > ../imp ort.log

--这个命令用指定的用户 ID 和密码以 REPLACE 模式导入 sample 数据库中的所有表:

db2move sample IMP ORT -io REPLACE -u userid -p password
 
--下面的命令以 REPLACE 模式装载 db2admin 和 db2user 这两个模式下的所有表:

db2move sample LOAD -sn db2admin,db2user -lo REPLACE
 

db2look

--从数据库对象中提取数据库定义语言(DDL)语句。
--这个命令生 成 peter 在数据库 department 中创建的所有对象的 DDL,输出被存储在 alltables.sql 中。

db2look -d $dbname  -u peter -e -o db2look.sql

下面的命令生成:

数据库 department 中所有对象的 DDL(由 -d、-a 和 -e 选项指定)。
UPDATE 语句,用于复制数据库中所有表和索引的统计信息(由选项 -m 指定)。
GRANT 授权语句(由选项 -x 指定)。
用于数据库管 理器和数据库配置参数的 UPDATE 语句和用于概要注册表的 db2set 命令(由选项 -f 指定)。

db2look -d department -a -e -m -x -f -o db2look.sql
 
db2batch

--基准测试是 从各种不同方面(例如数据库响应时间、cpu 和内存使用情况)对应用程序进行评测的一个过程

--69 查看db2版本信息是否过期
db2licm -l

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值