`
mgoann
  • 浏览: 253472 次
  • 性别: Icon_minigender_1
  • 来自: 南京
社区版块
存档分类
最新评论

db2SQL命令

    博客分类:
  • DB2
阅读更多

db2SQL命令

export to tempfile of del select * from TABLENAME where not 清理条件;

load from tempfile of del modified by delprioritychar replace into TABLENAME nonrecoverable

 

调整数据库参数。
%db2 connect to wisg
%db2 UPDATE DB CFG FOR wisg USING LOGBUFSZ        512  
日志缓冲区大小(4KB

%db2 UPDATE DB CFG FOR wisg USING LOCKLIST        512   
锁定列表的最大存储量(4KB

%db2 UPDATE DB CFG FOR wisg USING APP_CTL_HEAP_SZ 512   
最大应用程序控制堆大小(4KB

%db2 UPDATE DB CFG FOR wisg USING SORTHEAP        25000 
排序列表堆(4KB

%db2 UPDATE DB CFG FOR wisg USING MAXLOCKS        60  
每个应用程序的锁定百分比列表

%db2 UPDATE DB CFG FOR wisg USING NUM_IOCLEANERS  4 
异步页清除程序的数目

%db2 UPDATE DB CFG FOR wisg USING NUM_IOSERVERS   6  I/O
服务器的数目

%db2 UPDATE DB CFG FOR wisg USING logfilsiz       160000   
日志文件大小(4KB

%db2 UPDATE DB CFG FOR wisg USING LOGPRIMARY      3  
主日志文件的数目

%db2 UPDATE DB CFG FOR wisg USING LOCKTIMEOUT      60  
锁的超时时间

%db2 UPDATE DBM CFG USING HEALTH_MON off   
关闭健康监控中心

%db2 UPDATE DBM CFG USING START_STOP_TIME 3 
启动停止超时时间

%db2 terminate

79. db2
创建用户

1.
在系统中创建一个用户

2.
db2inst1链接数据
:db2 connect to das
3.
给新用户赋权限
:db2 grant connect on database to user XXX

80.
启动数据库监听

db2set DB2COMM=tcpip
db2stop force
db2start

db2优化:

db2inst1用户登录,调整实例参数,并测试启动是否成功。


#su - db2inst1
%db2start
%db2 UPDATE DBM CFG USING SHEAPTHRES 125000   
共享排序的排序堆域值(4KB

%db2set DB2_PARALLEL_IO=* 
所有表空间将使用每个容器主轴数等于 6 的缺省值。预取大小比启用并行 I/O 时大 6 倍。 所有表空间均会启用并行 I/O。预取请求分解成多个较小请求,每个请求等于预取大小除以扩展数据块大小后的值(或等于容器数乘以主轴数)。

%db2set DB2_SKIPINSERTED=on
%db2set DB2_EVALUNCOMMITTED=on
为了提高并发性,DB2(R) 现在允许在某些情况下对 CS RS 隔离扫描延迟行锁定,直到知道一条记录满足查询的谓词为止。 缺省情况下,当在表扫描或索引扫描期间执行行锁定时,DB2 会先锁定已扫描的每一行然后再确定该行是否符合查询要求。 为了提高扫描的并发性,可以延迟行锁定,直到确定某行符合查询要求为止。


要利用此功能,应启用 DB2_EVALUNCOMMITTED 注册表变量。


%db2set DB2_SKIPDELETED=on
如果启用了 DB2_SKIPDELETED 注册表变量,则 DB2 在类型 2 索引扫描中将跳过已删除的键。

%db2stop

77. 数据库调优
db2untag -f /dev/raw/raw1
db2untag -f /dev/raw/raw2
db2untag -f /dev/raw/raw3
db2untag -f /dev/raw/raw4
db2 update db cfg using newlogpath /dev/raw/raw4
db2 update db cfg using logfilsiz 20480
db2 update db cfg using logprimary 15
db2 update db cfg using logsecond 5
db2 update db cfg using PCKCACHESZ 51200
堆中没有足够的存储器可用来处理语句
:db2 update db cfg using APP_CTL_HEAP_SZ 1000
statement is too long or too complex:db2 update db cfg using STMTHEAP 4096
db2 alter bufferpool ibmdefaultbp size 102400

78.
创建裸设备

#fdisk –l
#fdisk /dev/sdb
其中/dev/sdb为阵列的一个盘

输入“n”创建新分区

输入“p”创建主分区。

输入“1”,指定分区号为
1
选择默认值1,按键盘上的“Enter”

选择默认值51200,按键盘上的“Enter”

输入“p”查看分区信息

输入“t”改变分区
ID
输入“1”指定分区号为1。输入“8e”指定ID8e8eLVM类型分区

输入“p”查看分区信息

输入“w”,上述设置生效并退出

创建物理卷
#pvcreate -ff /dev/sdb1
创建逻辑卷组
#vgcreate -s 64M -v db2dg /dev/sdb1
创建逻辑卷
#lvcreate -l 160 –n  db2vol01 db2dg
#lvcreate -L 5120M -n db2vol02 db2dg
#lvcreate -L 5120M -n db2vol03 db2dg
查看创建的卷组和逻辑卷。
#vgdisplay –v
创建文件系统。
#mkfs -t ext3 /dev/db2dg/db2vol01
挂载文件系统。
#mkdir /db2vol01
#mount /dev/db2dg/db2vol01 /db2vol01
#chown –R db2inst1:db2grp1 /db2vol01
挂载文件系统。

#mkdir /db2vol01
#mount /dev/db2dg/db2vol01 /db2vol01
#chown –R db2inst1:db2grp1 /db2vol01
关于目录/home/db2inst1,具体的操作如下:

#cd /home/db2inst1
#tar cvf /home/db2.tar .*
#cd /opt/IBM/db2/V8.1/instance
#./db2idrop db2inst1
#mount /dev/db2dg/db2vol10 /home/db2inst1
#cd /home/db2inst1
#tar xvf /home/db2.tar
#chown –R db2inst1:db2grp1 /home/db2inst1
把逻辑卷链接到裸设备上。

#raw /dev/raw/raw1 /dev/db2dg/db2vol02
#raw /dev/raw/raw2 /dev/db2dg/db2vol03
#raw /dev/raw/raw3 /dev/db2dg/db2vol04
#raw /dev/raw/raw4 /dev/db2dg/db2vol05
改变裸设备的属组。

#chown -R db2inst1:db2grp1 /dev/raw/raw1
#chown -R db2inst1:db2grp1 /dev/raw/raw2
#chown -R db2inst1:db2grp1 /dev/raw/raw3
#chown -R db2inst1:db2grp1 /dev/raw/raw4

73. 检索具有特权的所有授权名
SELECT DISTINCT GRANTEE, GRANTEETYPE, 'DATABASE' FROM SYSCAT.DBAUTH UNION
SELECT DISTINCT GRANTEE, GRANTEETYPE, 'TABLE ' FROM SYSCAT.TABAUTH UNION
SELECT DISTINCT GRANTEE, GRANTEETYPE, 'PACKAGE ' FROM SYSCAT.PACKAGEAUTH UNION
SELECT DISTINCT GRANTEE, GRANTEETYPE, 'INDEX ' FROM SYSCAT.INDEXAUTH UNION
SELECT DISTINCT GRANTEE, GRANTEETYPE, 'COLUMN ' FROM SYSCAT.COLAUTH UNION
SELECT DISTINCT GRANTEE, GRANTEETYPE, 'SCHEMA ' FROM SYSCAT.SCHEMAAUTH UNION
SELECT DISTINCT GRANTEE, GRANTEETYPE, 'SERVER ' FROM SYSCAT.PASSTHRUAUTH
ORDER BY GRANTEE, GRANTEETYPE, 3
74.
修改表结构

alter table yhdab ALTER kh SET DATA TYPE varchar(13);
alter table lst_bsi alter bsi_money set data type int;
75.
备份数据库:

CONNECT TO EXOA;
QUIESCE DATABASE IMMEDIATE FORCE CONNECTIONS;
CONNECT RESET;
BACKUP DATABASE EXOA TO "/home/exoa2/db2bak/" WITH 2 BUFFERS BUFFER 1024 PARALLELISM 1 WITHOUT PROMPTING;
CONNECT TO EXOA;
UNQUIESCE DATABASE;
CONNECT RESET;
76.
查看是哪张表挂起
:db2 select tabname,tableid from syscat.tables where tableid=59
表名知道后到db2move.lst(db2move  YOURDB  export的目录中)中找到相应的.ixf文件

db2 load from tab11.ixf of ixf terminate into db2admin.xxxxxxxxx
tab11.ixf
对应的是xxxxxxxxx

51. view applicationLIST APPLICATION;
52. kill application
FORCE APPLICATION(0);
db2 force applications all (
强迫所有应用程序从数据库断开
)
53. lock table
lock table test in exclusive mode
54.
共享:
lock table test in share mode
55.
列出所有的系统表:
list tables for system
56.
显示当前活动数据库:
list active databases
57.
查看命令选项
list command options
58.
表空间:
list tablespaces
59.
表空间容器:LIST TABLESPACE CONTAINERS FOR
Example: LIST TABLESPACE CONTAINERS FOR 1
60.
显示用户数据库的存取权限:
GET AUTHORIZATIONS
61.
表或视图特权
:grant select,delete,insert,update on tables to user
grant all on tables to user WITH GRANT OPTION
62.
程序包特权
:GRANT EXECUTE ON PACKAGE PACKAGE-name TO PUBLIC
63.
模式特权
:GRANT CREATEIN ON SCHEMA SCHEMA-name TO USER
64.
数据库特权
:grant connect,createtab,dbadm on database to user
65.
索引特权
:grant control on index index-name to user
66.
信息帮助 (? XXXnnnnn):
:? SQL30081
67. SQL
帮助(说明 SQL 语句的语法
):help statement
68. SQLSTATE
帮助(说明 SQL 的状态和类别代码):? sqlstate
? class-code
69.
更改与"管理服务器"相关的口令
:db2admin setid username password
70.
使用操作系统命令
:! dir
71.
转换数据类型
(cast)
SELECT EMPNO, CAST(RESUME AS VARCHAR(370)) FROM EMP_RESUME WHERE RESUME_FORMAT = 'ascii'
72. UDF:
要运行 DB2 Java 存储过程或 UDF,还需要更新服务器上的 DB2 数据库管理程序配置,以包括在该机器上安装 JDK 的路径

db2 update dbm cfg using JDK11_PATH d:sqllibjavajdk
TERMINATE
update dbm cfg using SPM_NAME sample

31. 重组检查:db2 reorgchk
32.
重组表tb1
db2 reorg table tb1
33.
更新统计信息:
db2 runstats on table tb1
34.
备份数据库test
db2 backup db test
35.
恢复数据库test
db2 restore db test
36.
列出容器的信息:
db2 list tablespace containers for tbs_id show detail
37.
列出所有表:
db2 list tables
38.
建立别名

create alias db2admin.tables for sysstat.tables;
CREATE ALIAS DB2ADMIN.VIEWS FOR SYSCAT.VIEWS
create alias db2admin.columns for syscat.columns;
create alias guest.columns for syscat.columns;
39.
建立触发器

CREATE TRIGGER zjt_tables_del
AFTER DELETE ON zjt_tables
REFERENCING OLD AS O
FOR EACH ROW MODE DB2SQL
40.
建立唯一性索引:
CREATE UNIQUE INDEX I_ztables_tabname ON zjt_tables(tabname);
41.
查看表:
select tabname from tables where tabname='ZJT_TABLES';
42.
查看列 select SUBSTR(COLNAME,1,20) as 列名,TYPENAME as 类型,LENGTH as 长度
from columns where tabname='ZJT_TABLES';
43.
查看表结构 db2 describe table user1.department

db2 describe select * from user.tables
44.
查看表的索引:
db2 describe indexes for table user1.department
45.
查看视图:
select viewname from views where viewname='V_ZJT_TABLES';
46.
查看索引:
select indname from indexes where indname='I_ZTABLES_TABNAME';
47.
查看存贮过程:
SELECT SUBSTR(PROCSCHEMA,1,15),SUBSTR(PROCNAME,1,15) FROM SYSCAT.PROCEDURES;
48.
类型转换
(cast)
ip datatype:varchar
select cast(ip as integer)+50 from log_comm_failed
49.
重新连接:
connect reset
50.
中断数据库连接:disconnect db2_gcb


1.
启动实例(db2inst1):db2start
2.
停止实例
(db2inst1):db2stop
3.
列出所有实例(db2inst1)
db2ilist
4.
列出当前实例
:db2 get instance
5.
察看示例配置文件
:db2 get dbm cfg|more
6.
更新数据库管理器参数信息
:db2 update dbm cfg using para_name para_value
7.
察看数据库配置参数信息:
db2 get db cfg for test|more
8.
更新数据库参数配置信息:
db2 update db cfg for test using para_name para_value
9.
删除数据库
:db2 drop db test
10.
连接数据库:
db2 connect to test
11.
列出所有表空间的详细信息:
db2 list tablespaces show detail
12.
创建索引
:db2 create index idx1 on tb1(id);
13.
创建视图
:db2 create view view1 as select id from tb1
14.
查询视图
:db2 select * from view1
15.
节点编目:
db2 catalog tcp node node_name remote server_ip server server_port
16.
察看端口号:
db2 get dbm cfg|grep SVCENAME
17.
测试节点的附接:
db2 attach to node_name
18.
察看本地节点:
db2 list node direcotry
19.
节点反编目:
db2 uncatalog node node_name
20.
数据库编目:
db2 catalog db db_name as db_alias at node node_name
21.
察看数据库的编目:
db2 list db directory
22.
连接数据库:
db2 connect to db_alias user user_name using user_password
23.
数据库反编目:
db2 uncatalog db db_alias
24.
导出数据:
db2 export to myfile of ixf messages msg select * from tb1
25.
导入数据:
db2 import from myfile of ixf messages msg replace into tb1
26.
导出数据库的所有表数据:
db2move test export
27.
生成数据库的定义:
db2look -d db_alias -a -e -m -l -x -f -o db2look.sql
28.
生成定义:
db2 -tvf db2look.sql
29.
加载脚本: db2 –td@ -vf filename,其中@为命令行的分隔符

30.
导入数据库所有的数据:db2move db_alias import


创建数据库
在文件上创建数据库:

CREATE DATABASE das USING CODESET 'UTF-8' TERRITORY 'CN' CATALOG TABLESPACE MANAGED BY DATABASE USING (file 'd:\db2data\dascat.dat' 102400) EXTENTSIZE 16 PREFETCHSIZE 32 USER TABLESPACE MANAGED BY DATABASE USING (file 'd:\db2data\dasusr.dat' 102400) EXTENTSIZE 256 PREFETCHSIZE 64 TEMPORARY TABLESPACE MANAGED BY DATABASE USING (file 'd:\db2data\dastmp.dat' 102400) EXTENTSIZE 256 WITH "DAS DB"

在裸设备上创建数据库

CREATE DATABASE das212 CATALOG TABLESPACE MANAGED BY DATABASE USING (device '/dev/db2dg/lv_dat01' 10240000) EXTENTSIZE 16 PREFETCHSIZE 32 USER TABLESPACE MANAGED BY DATABASE USING (device '/dev/db2dg/lv_dat02' 10240000) EXTENTSIZE 256 PREFETCHSIZE 64 TEMPORARY TABLESPACE MANAGED BY DATABASE USING (device '/dev/db2dg/lv_dat03' 10240000) EXTENTSIZE 256 WITH "DAS DB"


GRANT USE OF TABLESPACE exoatbs TO PUBLIC;
GRANT USE OF TABLESPACE exoatbs16k TO PUBLIC;
GRANT USE OF TABLESPACE exoatbs32k TO PUBLIC;

创建系统表空间:
  CREATE TEMPORARY TABLESPACE exoasystmp IN DATABASE PARTITION GROUP IBMTEMPGROUP PAGESIZE 8K  MANAGED BY SYSTEM USING ('/home/exoa2/exoasystmp'   ) EXTENTSIZE 32 PREFETCHSIZE 16 BUFFERPOOL IBMDEFAULT8K  OVERHEAD 24.10 TRANSFERRATE 0.90  DROPPED TABLE RECOVERY OFF;

  CREATE TEMPORARY TABLESPACE exoasystmp16k IN DATABASE PARTITION GROUP IBMTEMPGROUP PAGESIZE 16K MANAGED BY SYSTEM USING ('/home/exoa2/exoasystmp16k'  ) EXTENTSIZE 32 PREFETCHSIZE 16 BUFFERPOOL IBMDEFAULT16K OVERHEAD 24.10 TRANSFERRATE 0.90  DROPPED TABLE RECOVERY OFF;
CREATE TEMPORARY TABLESPACE exoasystmp32k IN DATABASE PARTITION GROUP IBMTEMPGROUP PAGESIZE 32K MANAGED BY SYSTEM USING ('/home/exoa2/exoasystmp32k') EXTENTSIZE 32 PREFETCHSIZE 16 BUFFERPOOL IBMDEFAULT32K OVERHEAD 24.10 TRANSFERRATE 0.90  DROPPED TABLE RECOVERY OFF;

创建缓冲池(8K)
  create bufferpool ibmdefault8k IMMEDIATE  SIZE 5000 PAGESIZE 8 K ;
创建缓冲池(16K)(OA_DIVERTASKRECORD)

  create bufferpool ibmdefault16k IMMEDIATE  SIZE 5000 PAGESIZE 16 K ;
创建缓冲池(32K)(OA_TASK)

  create bufferpool ibmdefault32k IMMEDIATE  SIZE 5000 PAGESIZE 32 K ;

创建表空间:

  CREATE TABLESPACE exoatbs IN DATABASE PARTITION GROUP IBMDEFAULTGROUP PAGESIZE 8K MANAGED BY SYSTEM USING ('/home/exoa2/exoacontainer') EXTENTSIZE 32 PREFETCHSIZE 16  BUFFERPOOL IBMDEFAULT8K  OVERHEAD 24.10 TRANSFERRATE 0.90  DROPPED TABLE RECOVERY OFF;
  CREATE TABLESPACE exoatbs16k  IN DATABASE PARTITION GROUP IBMDEFAULTGROUP PAGESIZE 16K MANAGED BY SYSTEM USING ('/home/exoa2/exoacontainer16k'   ) EXTENTSIZE 32  PREFETCHSIZE 16  BUFFERPOOL IBMDEFAULT16K  OVERHEAD 24.1 TRANSFERRATE 0.90  DROPPED TABLE RECOVERY OFF;
  CREATE TABLESPACE exoatbs32k  IN DATABASE PARTITION GROUP IBMDEFAULTGROUP PAGESIZE 32K MANAGED BY SYSTEM USING ('/home/exoa2/exoacontainer32k'   ) EXTENTSIZE 32  PREFETCHSIZE 16  BUFFERPOOL IBMDEFAULT32K  OVERHEAD 24.1 TRANSFERRATE 0.90  DROPPED TABLE RECOVERY OFF;

说明:
在不相关的数据表export数据时,可以采取并发的形式,以提高效率;

TABLENAME
指待清理table的名称;

modified by delprioritychar
防止数据库记录中存在换行符,导致数据无法装入的情况
;
replace into
对现数据库中的内容进行替换,即将现行的数据记录清理,替换为数据文件内容;

nonrecoverable
无日志方式装入;

  connect to [
数据库名] user [操作用户名] using [密码]

 

分享到:
评论

相关推荐

    DB2SQL命令大全

    根据提供的标题、描述以及部分内容,本文将详细介绍与DB2 SQL命令相关的知识点,涵盖数据库管理、表空间创建、缓冲池配置等内容。 ### DB2 SQL 命令大全 #### 概述 DB2(Database 2)是IBM开发的一款关系型数据库...

    超全DB2SQL命令大全

    本篇文章将详细阐述DB2中的SQL命令,特别是涉及连接数据库、创建缓冲池和表空间的操作。 1. **连接数据库**: 在DB2中,使用`CONNECT`命令可以连接到指定的数据库。语法为: ``` connect to [数据库名] user ...

    Db2_SQL命令大全(完整版)

    ### Db2_SQL命令大全知识点详解 #### 连接数据库 **命令格式:** ``` connect to [数据库名] user [操作用户名] using [密码]; ``` - **功能介绍:**此命令用于建立与DB2数据库的连接。 - **参数解释:** - `...

    linux下DB2常用命令

    Linux 下 DB2 常用命令 DB2 是一个 relation database management system(关系数据库管理系统),广泛应用于企业级的数据存储和管理中。在 Linux 环境下,DB2 提供了丰富的命令行工具,用于管理和维护数据库。下面...

    DB2 SQL 常用命令

    DB2 SQL 常用命令

    DB2 SQL Reference.pdf

    **DB2 SQL Reference** 是一个详尽的参考资料文档,主要介绍IBM DB2 Universal Database版本6中的SQL命令及相关功能。该文档是学习和掌握DB2数据库管理系统的必备指南之一,对于数据库管理员(DBA)、开发者以及其他与...

    DB2常用命令列表,DB2常用命令列表

    7. 建立触发器:CREATE TRIGGER命令用于创建一个新的触发器,例如:CREATE TRIGGER zjt_tables_del AFTER DELETE ON zjt_tables REFERENCING OLD AS O FOR EACH ROW MODE DB2SQL Insert into zjt_tables1 values...

    db2SQL_Reference_1_950

    DB2 SQL Reference Volume 1涵盖了DB2 9.5版本下的SQL语言参考,包括语法、命令、函数和操作符等核心内容。该文档强调了使用前需阅读的注意事项,特别是版权和许可协议,以及如何订购IBM出版物和联系代表的指南,...

    DB2_SQL入门

    #### 三、DB2 SQL命令详解 ##### 3.1 基本查询 - **SELECT**:用于从一个或多个表中检索数据。 - 示例:`SELECT column_name FROM table_name;` - **WHERE**:用于过滤查询结果,指定条件来筛选数据。 - 示例:`...

    IBM DB2 SQL Reference

    - **Interactive SQL**:介绍如何使用交互式SQL环境来执行SQL命令。 - **Schemas**:描述模式(schema)的概念及其管理方法。 - **Controlling Use of Schemas**:讨论控制模式访问权限的方法。 - **Tables**:详细...

    DB2 SQL语句性能分析方法

    ### DB2 SQL语句性能分析方法 #### 一、引言 DB2 Universal Database (UDB) 是IBM推出的一款高性能关系型数据库管理系统。为了确保DB2数据库能够在各种应用场景下高效稳定运行,DB2 UDB提供了丰富的工具帮助用户...

    DB2数据库命令详解

    "DB2数据库命令详解" DB2 数据库命令详解是 DB2 RDBMS 的重要组成部分,掌握这些命令是使用 DB2 数据库的基础。本文将详细讲解 DB2 命令的使用,包括启动交互式会话、编译 DB2 服务器节点目录、编译远程数据库目录...

    db2 常用命令大全

    DB2 常用命令大全 DB2 是 IBM 公司的一款关系数据库管理系统,具有强大的数据存储和处理能力。以下是 DB2 的一些常用命令,可以帮助开发人员更好地使用 DB2 数据库。 一、基础篇 1. 连接数据库 db2 connect to ...

    DB2资料sql语法.zip

    在现代IT行业中,数据库管理系统(DBMS)是数据管理的核心组件,而DB2作为IBM的一款强大关系型数据库,其SQL(Structured Query Language)语法的学习对于任何从事此领域工作的专业人士来说至关重要。DB2资料sql语法...

    DB2 SQL-Reference

    《DB2 SQL Reference》是DB2官方提供的SQL语言指南,其中详细介绍了DB2中的SQL语句、系统表、管理命令等内容,是DB2用户进行数据库设计、管理和优化的重要参考资料。 #### 二、SQL语言概念 ##### 1. 关系型数据库 ...

    DB2 SQL 消息

    ### DB2 SQL 消息详解 #### 一、概述 在DB2数据库系统中,SQL消息是用来帮助数据库管理员和操作人员快速定位并解决问题的重要工具。这些消息通常包含了关于执行SQL语句时出现的问题详情,包括错误代码、描述以及...

    db2常用命令大全,有说明

    CREATE TRIGGER ZJT_TABLES_DEL AFTER DELETE ON ZJT_TABLES REFERENCING OLD AS O FOR EACH ROW MODE DB2SQL INSERT INTO ZJT_TABLES1 VALUES(SUBSTR(O.TABSCHEMA, 1, 8), SUBSTR(O.TABNAME, 1, 10)); ``` **说明*...

    db2查看sql执行计划

    本文将详细介绍如何在DB2中查看SQL执行计划,并通过实际案例深入解析相关命令及其参数的作用。 ### 一、DB2简介 DB2是IBM公司开发的一款关系型数据库管理系统(RDBMS),广泛应用于企业级应用中。它支持多种操作系统...

Global site tag (gtag.js) - Google Analytics