当前位置:文档之家› DB2数据库基础

DB2数据库基础

DB2数据库基础
DB2数据库基础

1、查看版本相关信息

db2ls

db21s -q -b /opt/ibm/db2/V9.7 #可查看安装组件相关信息2、在linux平台下创建实例

db2icrt 的用法:

-p:指定实例端口号

-s:指定实例类型

-u:指定fenced user

groupadd -g 1100 db2iadm1 #创建实例管理组

groupadd -g 1101 db2fadm1 #创建fenced组

useradd -g db2iadm1 -u 1100 -m -d /home/db2inst1 db2inst1 # 创建实例用户

useradd -g db2fadm1 -u 1101 -m -d /home/db2fenc1 db2fenc1 # 创建fence用户

切换至root目录

cd /opt/ibm/db2/V9.7/instance

./db2icrt -p 50000 -u db2fenc1 db2inst1 #创建实例

3、数据库参数配置

A. 配置实例:

查询:db2 get dbm cfg

设置:db2 update dbm cfg using B. 配置数据库:

查询:db2 get db cfg for

设置:db2 update db cfg for using

应用实例:

db2 update db cfg for simudb using LOGPRIMARY 80

恢复默认设置:db2 reset db cfg

4、实例的基本操作

db2ilist #显示版本下面有哪些实例db2greg -dump #显示服务器上面有哪些实例db2 get instance #显示当前实例

5、数据库实例的开启

su - db2inst1

db2start #启动实例

6、数据库实例的关闭

db2stop #停止实例

如果当前实例下有数据库连接,db2stop 会报错。

db2 force applications all #断开所有应用连接db2stop #停止实例

db2stop force #强制停止

7、数据库实例的更新

cd /opt/ibm/db2/V9.7/instance

./db2iupdt db2inst1 #更新实例

8、数据库实例的删除

切换到root用户下

cd /opt/ibm/db2/V9.7/instance

./db2idrop db2inst1 #删除实例

9、列出当前实例中有哪些数据库

su - db2inst1

db2 list db directory

8、创建数据库

su - db2inst1

db2 “create database test”

#SQL1032N No start database manager command was issued.

SQLSTATE=57019

db2start

db2 “create database test”

#SQL0204N "SYSTEM_1386_US" is an undefined name. SQLSTATE=42704 db2 "create database test using codeset gbk territory cn"

db2 list db directory

使用UTF-8编码

db2"create database test on '/home/db2inst1' using codeset UTF-8 territory CN"

# on '/home/db2inst1' 表示数据库路径,一般情况下

'/home/db2inst1'为默认数据库路径

9、数据库的连接与断开

A.连接数据库

db2 connect to test

db2 connect to user using db2 connect to test user username using password

B.断开数据库

db2 connect reset 或

db2 disconnect

10、列出当前实例中所有激活的数据库

su - db2inst1

db2 list active databases

#SQL1032N No start database manager command was issued.

SQLSTATE=57019

db2 list db directory

db2start

db2 list active databases

db2 connect to test

db2 list active databases

11、查看表的空间

db2 list tablespaces

db2 list tablespace containers for 8 show detail #8是表空间id db2pd -d test -tablespaces #显示表空间配置信息使用情况和容器信息

12、列出数据库中所有用户表

db2 connect to amfedb

db2 list tables

13、在数据库test中创建表student

db2 connect to test

db2 "create table student (id int,fname varchar(30),age int)"

db2 list tables

14、向表student中添加数据信息

db2 "insert into student values (1,'Tom',22)"

db2 "insert into student values (2,'Jack',21)"

db2 "insert into student values (3,'Sunrier',25)"

15、显示表student所有的信息

db2 "select * from student

16、更改表student中的数据(如将Sunrier的年龄改为22)

db2 "select * from student"

db2 "update student set age=22 where fname='Sunrier'"

db2 "select * from student"

17、查看表student结构

db2 describe table student

db2 "describe select * from student"

18、创建一个新表(如people)与数据库中表(如student)结构相同

db2 list tables

db2 "select * from student"

db2 "create table people like student"

db2 list tables

db2 describe table people

19、将原来数据库中某个表的数据导入与它相同结构的新表中

db2 list tables

db2 describe table student

db2 describe table people

db2 "select * from student"

db2 "select * from people"

db2 "insert into people select * from student"

db2 "select * from people"

20、修改一个表的字段类型

如将表people中的fname字段把varchar(30)改为varchar(28)格式:db2 "alter table alter column set data type "

db2 "select * from people"

db2 "alter table people alter column fname set data type

varchar(28)"

#SQL0668N Operation not allowed for reason code "7" on table

"DB2INST1.SANGUO". SQLSTATE=57016

解决方法:执行命令:reorg table xxx;对表进行优化重组。

db2 describe table people

db2 "select * from people"

21、向一个表添加字段(如向表people中添加备注信息字段notes)

格式:db2 "alter table add

"

db2 describe table people

db2 "select * from people"

db2 "alter table people add notes varchar(100)"

db2 describe table people

db2 "select * from people"

db2 "alter table people add score integer"

db2 describe table people

db2 "select * from people"

给表中添加带默认值的字段(向表people中添加地址字段address 默认设置为shanghai)

格式:db2 "alter table add column

not null with default "

db2 "alter table people add column address varchar(30) not null with default 'ShangHai'"

db2 describe table people

db2 "select * from people"

22、删除表中的某个字段(如删除表people中的字段score)

格式:db2 "alter table drop column "

db2 describe table people

db2 "select * from people"

db2 "alter table people drop column score"

db2 describe table people

db2 "select * from people"

注:如果drop掉字段之后,可能会导致表查询/插入操作不能执行, 则需要执行一下reorg命令,优化数据结构,

格式如db2 reorg table

db2 reorg table people

23、列出数据库中用户表

db2 list tables for user

24.、列出数据库中所有系统表

db2 list tables for system

25、列出数据库中所有表

su - db2inst1

db2start

db2 list active databases

db2 connect to test

db2 list tables for all

26、列出数据库中特定用户表

格式: db2 list tables for schema su - db2inst1

db2start

db2 list active databases

db2 connect to test

db2 list tables for schema db2inst1

27、删除表中的数据

db2 delete from student where id=3

db2 "select * from student"

28、删除一个数据库中的某个表

db2 drop table student

db2 list tables

29、删除一个数据库test

db2 list db directory

db2 drop db test

#SQL1025N The database manager was not stopped because databases are still active.

db2 connect reset

db2 drop db test

db2 list db directory

注:删除数据库首先要断开数据库的连接

30、显示当前数据库连接有哪些应用程序

su - db2inst1

db2 list application

db2 connect to test

db2 list application

31、导出表中的数据

A. 以txt 格式导出

db2 "export to /home/db2inst1/teacher.txt of del select * from teacher"

ls

cat teacher.txt

B.以ixf格式导出

db2 "export to /home/db2inst1/teacher.ixf of ixf select * from teacher"

ls

cat teacher.ixf

32、导入数据到一个表中

db2 "select * from teacher"

db2 "import from teacher.txt of del insert into teacher"

ls

db2 "select * from teacher"

db2 "import from teacher.txt of del insert into teacher"

ls

db2 "select * from teacher"

33、利用脚本创建表

格式:db2 -tvf scriptName.sql(.txt)

teacher.sql为以下内容

----建立表teacher

create table teacher

(

id integer not null ,

fname varchar(20) not null,

address varchar(80) default '上海',

birth date,

primary key(id)

);

--建表结束

--以下为插入数据字段

db2 "insert into teacher values(1,'Lory','上海徐汇中','1978-08-06')"

db2 "insert into teacher values(2,'Sunrier','田林中学','1988-06-27')"

db2 describe table teacher

db2 "select * from teacher"

34、备份数据库

格式:db2 backup db to

database name:表示数据库

to

:表示为备份到的目录路径,为可选项,默认在当前目录下

ls

db2 list db directory

db2 backup db test to /home/db2inst1

ls /home/db2inst1

db2 list active databases

注:执行备份命令时,如果出现无法执行,则先断开数据库的连接再执行备份命令.从上面可以看出没有断开也可以执行,但执行

完,发现数据库处于断开状态了。

db2 force application all

35、恢复数据库

格式:db2 restore db from

taken at

database nam:表示恢复的数据库名

from

:表示为从哪个目录路径下恢复,为可选项,默认在

当前目录下

taken at :指定回复那个备份文件

例:db2 restore db amfedb from /home/db2inst1 taken at

20150203094124

db2 connect to test

db2 list tables

db2 "select * from teacher"

db2 drop table teacher

db2 list tables

db2 connect test

ls /home/db2inst1

db2 restore db test from /home/db2inst1

db2 list tables

db2 connect to test

db2 list tables

db2 "select * from teacher"

注:如果想把恢复的数据库更改为新的数据库名,则格式如下db2 restore db from

into

database name>

例:db2 restore db test from /home/db2inst1 into testdb

36、查看test数据库备份的历史记录

格式:db2 list history backup all for

db2 list history backup all for test

37、查看数据库的配置

db2 connect to user using db2 get db cfg for

database:数据库名

username:用户名

password:表示密码

38、设置数据库参数

db2 connect to user using db2 get db cfg for

db2 update db cfg for using 参数名参数值

39、设置实例参数

db2 get dbm cfg

db2set DB2COMM=TCPIP

db2 update dbm cfg using 参数名参数值

如果将某个参数设为空值,可采用如下命令:

db2 update dbm cfg for sample using 参数名NULL

40、数据库的连接

A. 编目节点:

CATALOG TCPIP NODE node_name REMOTE hostname SERVER service_name

应用实例:

db2 catalog tcpip node acse remote 192.168.1.99 server 50000

B. 编目数据库:

CATALOG DB db_name AT NODE node_name

应用实例:

db2 catalog db ACSEDB at node db2inst1

C. 连接数据库

DB2 CONNECT TO database_name USER user_name

USING passwd

D. 在有些时候,在编目的时候可能会输入错误信息,比如敲错

ip或端口号,这就需要重新编目,在重新编目之前需要删除之前的编目配置,这就是反编目(uncatalog)。

DB2 UNCATALOG DATABASE database _name

# 反编目数据库DB2 UNCATALOG NODE node_name # 反编目节点E. 综合实例:

服务端:

db2set db2comm=tcpip # 配置监听协议db2 update dbm cfg using svcename 50000 # 配置实例端口db2stop

db2start

客户端:

db2 catalog tcpip node db2inst1 remote 192.168.1.99 server 50000 db2 catalog db ACSEDB at node db2inst1

db2 terminate # 使操作生效

db2 list node directory # 查看节点信息

db2 list db directory # 查看数据库信息db2 connect to ACSEDB user db2inst1 using 123456

41、设置日志归档模式

日志模式的设置通过LOGARCHMETH1 参数来实现。当参数值等于OFF时,表示循环日志模式,当参数值为OFF之外的其他值时,表示归档模式。

db2 connect to amfedb

db2 get db cfg

cd /amfe/dbarchlog

ls

db2 update db cfg for amfedb using logarchmeth1 disk:/amfe/

dbarchlog #设置归档路径

若修改数据库LOGRETAIN参数,从循环日志模式改为归档日志模式,则会导致数据库backup pending状态

db2数据库使用

一、db2 基础 基本语法 注释:“--”(两个减号) 字符串连接:“||” 如set msg=’aaaa’||’bbbb’,则msg为’aaaabbbb’ 字符串的引用:'’(一定用单引号),如果需要输入单引号,输入两个单引号即可。 语句结束:“;” 语法来源:PASCLE 转义字符: 如果你想查询字符串中包含'%’或'_’ ,就得使用转义字符(Escape Characters)。比如,要想查询book_title中包含字符 串’99%’的纪录: SELECT * FROM books WHERE book_title like '%99!%%’escape '!’ 后面的escape '!’是定一个转义字符'!’, 指明紧跟着转义字符’!'后的%不再是统配符。 DB2命令参数选项 Db2 list command options 可以查看 -a 显示 SQLCA OFF -c 自动落实 ON -e 显示 SQLCODE/SQLSTATE OFF -f 读取输入文件 OFF -l 将命令记录到历史文件中 OFF -n 除去换行字符 OFF -o 显示输出 ON -p 显示交互式输入提示 ON -r 将输出保存到报告文件 OFF -s 在命令出错时停止执行 OFF -t 设置语句终止字符 OFF -v 回送当前命令 OFF -w 显示 FETCH/SELECT 警告信息 ON -x 不打印列标题 OFF -z 将所有输出保存到输出文件 OFF 这些选项的具体功能及其缺省设置为: .a 显示 SQLCA 的数据,缺省为 OFF。 .c 是否自动落实 SQL 命令,缺省为 ON。

DB2_数据库日志管理

1、load 方法装入数据: export to tempfile of del select * from tablename where not 清理条件; load from tempfile of del modified by delprioritychar replace into tablename nonrecoverable; 说明: 在不相关的数据表export数据时,可以采取并发的形式,以提高效率; tablename指待清理table的名称; modified by delprioritychar防止数据库记录中存在换行符,导致数据无法装入的情况; replace into对现数据库中的内容进行替换,即将现行的数据记录清理,替换为数据文件内容; nonrecoverable无日志方式装入; 2、查找当前的应用: db2 list application grep btpdbs; 3、删除当前正在使用的application: db2 "force application (id1,id2,id3)" id1,id2,id3 是list显示的应用号; 4、查看当前应用号的执行状态: db2 get snapshot for application agentid 299 grep row 5、查看数据库参数: db2 get db cfg for //当前数据库可以省略 6、修改数据库的log数据: db2 update db cfg using <参数名> <参数值> 7、db2stop force的用法: 在进行bind的时候出现如下错误: sql0082can error has occurred which has terminated processing. sql0092nno package was created because of previous errors. sql0091nbinding was ended with "3" errors and "0" warnings. 主要是表文件被加锁,不能继续使用; 在进行stop的时候报错:db2stop 8/03/2005 21:46:530 0 sql1025nthe database manager was not stopped because databases are still active.

db2培训笔记

1、Tablespace ●表空间分为dms与sms 设定后不可以修改,库中必定存在 syscatspace/systmpspace 两个sms类型的表空间。可创建userspace/usertmpspace(用户临时表空间用于临时表) ●Systmpspace: 在小根据使用情况自动分配动态伸缩,仅在需要时才分配磁盘空 间,并在使用后进行回收,pagesize=4 ●Syscatspace: 在数据库中创建的任何对象都以在系统编目表空间中增加记录的方式 体现 ●Dms、sms、container Dms可以为对应多个container,不能为目录,而Sms只能提定一个目录且不能增加。 表空间是数据存储的逻辑位置定义,容器则是数据存储的物理位置定义 2、Instance ●在一个实例中数据库是完全独立的,各自有系统编目表(放在SysCatspace中) ●若为当前会话设置 DB2INSTANCE 环境变量,则其值为当前实例。要设置 DB2INSTANCE 环境变量,输入: set db2instance= ●若没有为当前会话设置DB2INSTANCE 环境变量,则DB2 UDB 使用系统环境变量 中DB2INSTANCE 环境变量的设置 ●如果根本没有设置 DB2INSTANCE 环境变量,则 DB2 UDB 使用注册表变量 DB2INSTDEF。要在注册表的全局级别设置 DB2INSTDEF 注册表变量,输入: db2set db2instdef= -g ●查询当前实例 db2 get instance ●实例命令(db2ilist db2icrt db2drop db2stop db2start) ●attach to nodename user username using password (在客户端登陆到实例上) ●当更新实例级别或数据库级别的参数后,有些可以立即生效,有些需要重新启动实例 才可生效。immediate 显式指明更改立即生效,deferred 显式指明更改在重起实例后生效。 3、在AIX中创建实例时必须有一个相同的用户名存上 4、关于在AIX小机上建库注意事现 ●需查询\etc\servise 中的开放端口与服务名称与dbm cfg 中的SVCENAME保持一致 database manager config file 数据库管理配置文件 db2 update dbm cfg using SVCENAME netstat –a|grep db2c_instname,看看监听是否起来 db2 get dbm cfg ●更改相关的注册表变量(在sqllib 下) Db2set db2codepage=1386 Db2set db2country=86 Db2set db2comm=tcpip Db2 terminate ●创建/usr/opt/db2_08_01/instance/db2icrt -u db2inst1 ●显示一个注册表变量的级别db2set rvn –all 显示一个实例级别概要文件设置的注册表值db2set -i (-g)

db2培训资料

第一章DB2 UDB 概况 1.1、DB2 UDB的产品家族 UDB(Universal Database )的前身为DB2,是IBM公司开发的关系型数据库管理系统。从其诞生之日开始,DB2就定位于要为各种规模的企业提供稳定、高效的数据管理支持。可以说,DB2是当前适用范围最广泛的数据库产品。我们对DB2产品的划分通常分为两种方法:一种方法是按其所能支持的硬件和操作系统平台进行划分,另一种方法是按其所能支持的用户规模的不同进行划分。 DB2产品几乎覆盖了当前所有流行的硬件和操作系统平台。在大型机操作系统上,有DB2 for OS/390、DB2 for MVS/ESA、DB2 for VSE 和DB2 for VM等多种产品;在由IBM公司设计的小型机AS/400上,DB2已经嵌入在操作系统OS/400之中,成为其不可分割的一部分。DB2对UNIX操作系统的支持同样十分广泛,可以在AIX、HP-UX、Solaris、SCO-UNIX、SINIX 等多种系统上找到其相应的版本。另外,在PC操作系统上,DB2可以对Window 9x、Windows NT以及OS/2等多种操作系统提供支持。UDB 6.1还增加了对Linux操作系统的支持。以上我们所提到的只是DB2服务器所能运行的平台,DB2的客户端所能支持的平台更为广泛,除了以上提到的所有平台之外,DB2的客户端还能运行在Dos、Windows 3.x、Mac OS以及SGI公司的IRIS系统之上。 UDB产品除了能够对各种硬件和操作系统平台进行支持之外,为了适应不同用户群的需要,UDB提供了不同级别的产品,对小到个人用户,大到跨国企业的不同需求提供支持。以下是对UDB 6.1版本不同级别产品的特点介绍: UDB卫星版:是专门为移动用户设计的小型数据库产品。适合于偶尔连接DB2控 制服务器来与公司系统交换数据的单用户系统。它既能允许用户对 本地数据进行各种修改,又可以接受远程卫星控制器的集中管理, 减轻本地用户的管理负担。该版本只能运行在Windows平台。(该版 本属于UDB 6.1版本新增版本) UDB个人版:是专门为个人用户设计的功能完备的个人数据库产品,允许用户在本 地建立数据库、更改数据、开发应用程序从本地对数据库管理系统 进行存取以及通过内置的客户端对远程数据库服务器进行管理。。该 版本的限制在于不能对远程应用程序提供全面支持。该版本可以运 行在Windows、OS/2以及Linux平台。 UDB工作组版:适用于小型局域网的数据管理需求。具有UDB个人版的全部功能, 并能够对远程应用程序提供全面支持。该版本可以运行在Windows、 OS/2以及Linux平台。(UDB工作组版5.0可以运行在UNIX平台)UDB企业版:简称为UDB EE,适用于企业级的数据管理需求。具有UDB工作组 版的全部功能,并能够利用对称多处理(SMP)技术提高系统性能。 在它的程序包中,包含了DB2 Connect企业版,允许Intel平台和 UNIX平台的客户端应用程序访问大型机和AS/400上的数据库服 务。UDB企业版可以运行在Windows、OS/2、Linux以及UNIX平 台。 UDB企业扩展版:简称为UDB EEE,适用于大规模的企业应用。大规模的企业应

DB2数据库备份与恢复详解

DB2数据库备份与恢复 1.备份 1.1离线备份(必须在数据库所在PC机进行操作) STEP 1 连接到要备份的数据库(数据库名:ncc) C:\Documents and Settings\Administrator>db2 connect to ncc user nccwykpi using nccwykpi STEP 2 显示数据库应用状态 C:\Documents and Settings\Administrator>db2 list applications

STEP 3 停掉数据库应用 C:\Documents and Settings\Administrator>db2 force applications all 注意:由于该命令是异步的,所以在进行备份的时候会出现以下错误信息。此时可以再次执行db2 force applications all 命令。 STEP 4 对数据库进行离线状态下的备份 C:\Documents and Settings\Administrator>db2 backup database ncc to d:\db2\backup

注意:指定的备份文件的输出目录必须是已创建的,否则会报错。 STEP 5 查看备份历史记录 C:\Documents and Settings\Administrator>db2 list history backup all for ncc

1.2在线备份 注意:如果要做在线的备份,要对两个参数作修改:USEREXIT和LOGRETAIN,将其修改为on,默认是off的,默认使用日志模式,修改完参数后,可以变为归档日志模式,启用了userexit做数据库日志的归档。 STEP 1 查看数据库当前的属性 C:\Documents and Settings\Administrator>db2 get db cfg STEP 2 设置userexit、logretain参数的状态为on C:\Documents and Settings\Administrator>db2 update db cfg for ncc using userexit on C:\Documents and Settings\Administrator>db2 update db cfg for ncc using logretain on

db2培训资料

为 ( ( 第一章 DB2 UDB 概况 1.1、DB2 UDB 的产品家族 UDB(Universal Database )的前身为 DB2,是 IBM 公司开发的关系型数据库管理系 统。从其诞生之日开始,DB2 就定位于要为各种规模的企业提供稳定、高效的数据管理 支持。可以说,DB2 是当前适用范围最广泛的数据库产品。我们对 DB2 产品的划分通 常分为两种方法:一种方法是按其所能支持的硬件和操作系统平台进行划分,另一种方 法是按其所能支持的用户规模的不同进行划分。 DB2 产品几乎覆盖了当前所有流行的硬件和操作系统平台。在大型机操作系统上, 有 DB2 for OS/390、DB2 for MVS/ESA 、DB2 for VSE 和 DB2 for VM 等多种产品;在由 IBM 公司设计的小型机 AS/400 上,DB2 已经嵌入在操作系统 OS/400 之中,成为其不 可分割的一部分。DB2 对 UNIX 操作系统的支持同样十分广泛,可以在 AIX 、HP-UX 、 Solaris 、SCO-UNIX 、SINIX 等多种系统上找到其相应的版本。另外,在 PC 操作系统 上,DB2 可以对 Window 9x 、Windows NT 以及 OS/2 等多种操作系统提供支持。UDB 6.1 还增加了对 Linux 操作系统的支持。以上我们所提到的只是 D B2 服务器所能运行的平台, DB2 的客户端所能支持的平台更为广泛,除了以上提到的所有平台之外,DB2 的客户端 还能运行在 Dos 、Windows 3.x 、Mac OS 以及 SGI 公司的 IRIS 系统之上。 UDB 产品除了能够对各种硬件和操作系统平台进行支持之外, 了适应不同用户群 的需要,UDB 提供了不同级别的产品,对小到个人用户,大到跨国企业的不同需求提供 支持。以下是对 UDB 6.1 版本不同级别产品的特点介绍: UDB 卫星版:是专门为移动用户设计的小型数据库产品。适合于偶尔连接 DB2 控 制服务器来与公司系统交换数据的单用户系统。它既能允许用户对 本地数据进行各种修改,又可以接受远程卫星控制器的集中管理, 减轻本地用户的管理负担。该版本只能运行在 Windows 平台。 该版 本属于 UDB 6.1 版本新增版本) UDB 个人版:是专门为个人用户设计的功能完备的个人数据库产品,允许用户在本 地建立数据库、更改数据、开发应用程序从本地对数据库管理系统 进行存取以及通过内置的客户端对远程数据库服务器进行管理。 该 版本的限制在于不能对远程应用程序提供全面支持。该版本可以运 行在 Windows 、OS/2 以及 Linux 平台。 UDB 工作组版:适用于小型局域网的数据管理需求。具有 UDB 个人版的全部功能, 并能够对远程应用程序提供全面支持。该版本可以运行在 Windows 、 OS/2 以及 Linux 平台。 UDB 工作组版 5.0 可以运行在 UNIX 平台) UDB 企业版: 简称为 UDB EE ,适用于企业级的数据管理需求。具有UDB 工作组 版的全部功能,并能够利用对称多处理(SMP )技术提高系统性能。 在它的程序包中,包含了 DB2 Connect 企业版,允许 Intel 平台和 UNIX 平台的客户端应用程序访问大型机和 AS/400 上的数据库服 务。UDB 企业版可以运行在 Windows 、OS/2、Linux 以及 UNIX 平 台。 UDB 企业扩展版:简称为 UDB EEE ,适用于大规模的企业应用。大规模的企业应

DB2数据库参数详解配置

DB2数据库参数配置 数据库配置发行版级别= 0x0c00 数据库发行版级别= 0x0c00 数据库地域= CN 数据库代码页= 1208 数据库代码集= UTF-8 数据库国家/地区代码= 86 数据库整理顺序= IDENTITY 备用整理顺序(ALT_COLLATE) = 数字兼容性= OFF Varchar2 兼容性= OFF 数据库页大小= 4096 动态SQL查询管理(DYN_QUERY_MGMT) = DISABLE 对此数据库的发现支持(DISCOVER_DB) = ENABLE 限制访问= NO 缺省查询优化类(DFT_QUERYOPT) = 5 并行度(DFT_DEGREE) = 1 在算术异常时继续(DFT_SQLMATHWARN) = NO 缺省刷新有效期(DFT_REFRESH_AGE) = 0 缺省维护的选项(DFT_MTTB_TYPES)的表类型= SYSTEM 保留的高频值的数目(NUM_FREQVALUES) = 10 保留的分位点数目(NUM_QUANTILES) = 20 十进制浮点舍入方式(DECFLT_ROUNDING) = ROUND_HALF_EVEN 备份暂挂= NO

数据库是一致的= NO 前滚暂挂= NO 复原暂挂= NO 启用的多页文件分配= YES 恢复状态的日志保留= NO 日志记录状态的用户出口= NO 自调整内存(SELF_TUNING_MEM) = ON 数据库共享内存大小(4KB)(DATABASE_MEMORY) = AUTOMATIC 数据库内存阈值(DB_MEM_THRESH) = 10 锁定列表的最大存储量(4KB)(LOCKLIST) = AUTOMATIC 每个应用程序的锁定百分比列表(MAXLOCKS) = AUTOMATIC 程序包高速缓存大小(4KB)(PCKCACHESZ) = AUTOMATIC 共享排序的排序堆域值(4KB)(SHEAPTHRES_SHR) = AUTOMATIC 排序列表堆(4KB)(SORTHEAP) = AUTOMATIC 数据库堆(4KB)(DBHEAP) = AUTOMATIC 目录高速缓存大小(4KB)(CATALOGCACHE_SZ) = 260 日志缓冲区大小(4KB)(LOGBUFSZ) = 98 实用程序堆大小(4KB)(UTIL_HEAP_SZ) = 23665 缓冲池大小(页)(BUFFPAGE) = 250 SQL 语句堆(4KB)(STMTHEAP) = AUTOMATIC 缺省应用程序堆(4KB)(APPLHEAPSZ) = AUTOMATIC 应用程序内存大小(4KB)(APPL_MEMORY) = AUTOMATIC 统计信息堆大小(4KB)(STAT_HEAP_SZ) = AUTOMATIC 检查死锁的时间间隔(毫秒)(DLCHKTIME) = 10000 锁定超时(秒)(LOCKTIMEOUT) = -1

DB2数据库基础入门

IBM DB2数据库基础 基本命令集合 1. 建立数据库DB2_GCB CREATE DATABASE DB2_GCB ON G: ALIAS DB2_GCB USING CODESET GBK TERRITORY CN COLLATE USING SYSTEM DFT_EXTENT_SZ 32 2. 连接数据库 connect to sample1 user db2admin using 8301206 3. 建立别名 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; 4. 建立表 create table zjt_tables as (select * from tables) definition only; create table zjt_views as (select * from views) definition only; 5. 插入记录 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; 7. 建立触发器 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)) 8. 建立唯一性索引 CREATE UNIQUE INDEX I_ztables_tabname ON zjt_tables(tabname); 9. 查看表 select tabname from tables where tabname='ZJT_TABLES'; 10. 查看列 select SUBSTR(COLNAME,1,20) as 列名,TYPENAME as 类型,LENGTH as 长度 from columns where tabname='ZJT_TABLES'; 11. 查看表结构 db2 describe table user1.department db2 describe select * from user.tables

DB2数据库SQL语法参考手册

DB2数据库SQL语法参考手册 DB2提供了关连式资料库的查询语言SQL (Structured Query Language),是一种非常口语化、既易学又易懂的语法。此一语言几乎是每个资料库系统都必须提供的,用以表示关连式的操作,包含了资料的定义(DDL)以及资料的处理(DML)。SQL原来拼成SEQUEL,这语言的原型以"系统R"的名字在IBM 圣荷西实验室完成,经过IBM内部及其他的许多使用性及效率测试,其结果相当令人满意,并决定在系统R 的技术基础发展出来IBM 的产品。而且美国国家标准学会(ANSI)及国际标准化组织(ISO)在1987遵循一个几乎是以IBM SQL 为基础的标准关连式资料语言定义。 一、资料定义DDL(Data Definition Language) 资料定义语言是指对资料的格式和形态下定义的语言,他是每个资料库要建立时候时首先要面对的,举凡资料分哪些表格关系、表格内的有什麽栏位主键、表格和表格之间互相参考的关系等等,都是在开始的时候所必须规划好的。 1.建表格: CREATE TABLE table_name( column1 DATATYPE [NOT NULL] [NOT NULL PRIMARY KEY], column2 DATATYPE [NOT NULL], ...) 说明: DATATYPE是资料的格式,详见表。 NUT NULL可不可以允许资料有空的(尚未有资料填入)。 PRIMARY KEY是本表的主键。 2.更改表格 ALTER TABLE table_name ADD COLUMN column_name DATATYPE 说明:增加一个栏位(没有删除某个栏位的语法。 ALTER TABLE table_name ADD PRIMARY KEY (column_name) 说明:更改表得的定义把某个栏位设为主键。 ALTER TABLE table_name DROP PRIMARY KEY (column_name)

DB2学习总结

DB2学习整理笔记 ●数据库软件安装(v9.7) ●软件下载 IBM官方网站,需注册账号。 ●解压db2安装包 #tar -zxvf v9.7_linuxx64_server.tar.gz 进入server目录下,执行安装检查 [root]#cd server [root]#./db2prereqcheck ●运行安装程序 [root]#./db2_install ------no-------ese--- ●安装license db2licm -l命令可以查看到db2的license信息。可以找一个永久的license添加到db2数据库即可,把db2ese_c.lic放到一目录下: /opt/ibm/db2/V9.7/license/db2ese_c.lic,在/opt/ibm/db2/V9.7/adm/目录下执行: db2licm -a /opt/ibm/db2/V9.7/license/db2ese_c.lic ●创建DB2运行所需要的用户组和用户 [root]#groupadd -g 901 db2iadm [root]#groupadd -g 902 db2fadm [root]#groupadd -g 903 dasadm [root]#useradd -g db2iadm -u 801-d /home/db2inst -m db2inst (管理当前实例) [root]#useradd -g db2fadm -u 802 -d /home/db2fenc1 -m db2fenc [root]#useradd -g dasadm -u 803 -d /home/dasadm1 -m dasusr (管理所有实例) ●为用户创建密码 passwd db2inst

db2中的常用命令及使用方法

db2中的常用命令及使用方法 一高(重要度) 1 启动一个db 2实例使用: net start instanceName 2 停止一个db 2实例使用: net stop instanceName 3 启动配置助手: db2=>!db2ca 4 手工配置连接: db2=>catalog node/db 5 删除视图: db2=>drop view view_name 6 创建表: db2=>create table tablename 7 列出活动的数据库和连接数: db2=>list active databases 8 断开所有应用程序与数据库的连接: db2=> force application all 9 以用户 通过使用密码 与标识为 的远程实例连接: db2=> attach to user using 10 创建名为 的数据库: db2=> create database 11 显式地使数据库失效: db2=> deactivate database 12 根据需要,显式地以用户 和密码 与数据库 连接:db2=> connect to [ [user ] using ] 13 断开与当前数据库的连接: db2=> connect reset 14 列出数据库中的表。如果没有指定任何参数,则缺省情况是列出当前用户的表:db2=> list tables[for {user | all | system | schema }][show detail] 15 显示一个表或视图的列信息: db2=> describe table 16确定是否需要对表进行重组。这对于对所有表自动执行runstats 很有用 db2=> reorgchk on table all 17通过重构行来消除“碎片”数据并压缩信息,对表进行重组 db2=> reorg table 18将数据库数据抽取到一个平面文件中 db2=> export 19通过使用IMPORT 实用程序,将数据导入到数据库 db2=> import 20返回LOAD 实用程序的进度 db2=> load query table [to local-message-file][nosummary | summaryonly] [showdelta] 21 创建索引:

DB2_数据库日志管理上课讲义

D B2_数据库日志管理

1、load 方法装入数据: export to tempfile of del select * from tablename where not 清理条件; load from tempfile of del modified by delprioritychar replace into tablename nonrecoverable; 说明: 在不相关的数据表export数据时,可以采取并发的形式,以提高效率;tablename指待清理table的名称; modified by delprioritychar防止数据库记录中存在换行符,导致数据无法装入的情况; replace into对现数据库中的内容进行替换,即将现行的数据记录清理,替换为数据文件内容; nonrecoverable无日志方式装入; 2、查找当前的应用: db2 list application grep btpdbs; 3、删除当前正在使用的application: db2 "force application (id1,id2,id3)" id1,id2,id3 是list显示的应用号; 4、查看当前应用号的执行状态: db2 get snapshot for application agentid 299 grep row 5、查看数据库参数: db2 get db cfg for //当前数据库可以省略 6、修改数据库的log数据: db2 update db cfg using <参数名> <参数值> 7、db2stop force的用法:

db2培训资料(1).doc

第一章DB2 UDB概况 1.1、DB2 UDB的产品家族 UDB(Universal Database )的前身为DB2,是IBM公司开发的关系型数据库管理系统。从其诞生之日开始,DB2就定位于要为各种规模的企业提供稳定、高效的数据管理 支持。可以说,DB2是当前适用范围最广泛的数据库产品。我们对 DB2产品的划分通常分为两种方法:一种方法是按其所能支持的硬件和操作系统平台进行划分,另一种方法是按其所能支持的用户规模的不同进行划分。 DB2产品几乎覆盖了当前所有流行的硬件和操作系统平台。在大型机操作系统上,有 DB2 for OS/390、DB2 for MVS/ESA、DB2 for VSE 和 DB2 for VM 等多种产品;在由 IBM公司设计的小型机 AS/400上,DB2已经嵌入在操作系统 OS/4OO之中,成为其不可分割的一部分。DB2对UNIX操作系统的支持同样十分广泛,可以在 AIX、HP-UX、 Solaris、SCO-UNIX、SINIX 等多种系统上找到其相应的版本。另外,在PC操作系统 上,DB2可以对 Window 9x、Windows NT以及OS/2等多种操作系统提供支持。UDB 6.1 还增加了对Linux操作系统的支持。以上我们所提到的只是 DB2服务器所能运行的平台, DB2的客户端所能支持的平台更为广泛,除了以上提到的所有平台之外,DB2的客户端 还能运行在 Dos、Windows 3.x、Mac OS以及SGI公司的IRIS系统之上。 UDB产品除了能够对各种硬件和操作系统平台进行支持之外,为了适应不同用户群的需要,UDB 提供了不同级别的产品,对小到个人用户,大到跨国企业的不同需求提供支持。以下是对 UDB 6.1版本不同级别产品的特点介绍: UDB卫星版:是专门为移动用户设计的小型数据库产品。适合于偶尔连接DB2 控制服务器来与公司系统交换数据的单用户系统。它既能允许用户对本地数据 进行各种修改,又可以接受远程卫星控制器的集中管理,减轻本地用户的管理 负担。该版本只能运行在Windows平台。(该 版本属于UDB 6.1版本新增版本) UDB个人版:是专门为个人用户设计的功能完备的个人数据库产品,允许用户在本 地建立数据库、更改数据、开发应用程序从本地对数据库管理系统进行存取以 及通过内置的客户端对远程数据库服务器进行管理。。该 版本的限制在于不能对远程应用程序提供全面支持。该版本可以运行在 Windows、OS/2以及Linux平台。 UDB工作组版:适用于小型局域网的数据管理需求。具有UDB个人版的全部功能, 并能够对远程应用程序提供全面支持。该版本可以运行在 Win dows、 OS/2以及Linux平台。(UDB工作组版 5.0可以运行在 UNIX平台)UDB企业版:简称为UDB EE,适用于企业级的数据管理需求。具有UDB工作组 版的全部功能,并能够利用对称多处理( SMP)技术提高系统性能。在它的程 序包中,包含了DB2 Conn ect企业版,允许 In tel平台和 UNIX平台的客户端应用程序访问大型机和AS/400上的数据库服 务。UDB企业版可以运行在 Windows、OS/2、Linux以及UNIX 平台。 UDB企业扩展版:简称为 UDB EEE,适用于大规模的企业应用。大规模的企业应用的基本要求是 稳定(宕机时间短)和高效(处理速度快),UDB企业扩展版能够利用群集 (cluster)和大规模并行处理(MPP )技术提高系统的稳定性和性能。 UDB丰富的产品线给用户提供了极大的选择余地。是构造企业信息系统的基石。

如何在Windows CMD里面用命令行操作DB2数据库

如何在Windows CMD里面用命令行操作DB2数据库 尽管 DB2 脚本可以包含 SQL 语句、DB2 系统命令和操作系统命令,但它只是有一个或多个 DB2 命令的文本文件。虽然不是必需的,但通过使用适当的文件扩展名形成一个标准的 DB2 脚本命名约定通常是个很好的方法。表 1显示了几种最常用的文件扩展名。 表 1. 脚本的常用文件扩展名 文件扩展名描述.db2 包含 DB2 命令的 DB2 脚本 .ddl 包含数据定义语言(DDL)语句的 DB2 脚本 .sql 包含 SQL 语句的 DB2 脚本 作为说明之用,清单 1包含一个非常简单的 DB2 脚本,该脚本使用数个 DB2 命令备份 sample 数据库。可以从任一 DB2 命令行工具执行该脚本。本文中用到的全部脚本都可以下载。这些脚本使用缺省的 DB2 实例(DB2)和样本数据库(SAMPLE)。其中的一些脚本将要求您安装 Windows 资源包(Windows Resource Kit)。 清单 1. 备份 sample 数据库的样本 DB2 脚本(db2backup.db2) -- -- This is a sample DB2 Backup Script -- ATTACH TO DB2; BACKUP DATABASE SAMPLE; DETACH; TERMINATE; 您可以使用以下语法从 DB2 命令窗口执行以上 DB2 脚本: db2 -tvf db2backup.db2 -l db2backup.log -r db2backup.rpt

在上面的示例中,使用了以下 DB2 命令选项来执行 DB2 脚本文件(db2backup.db2 ): -t 指明在缺省情况下用分号(;)终止每条命令 -v 指明应将每条命令显示到标准输出 -f 指明从输入文件读取命令 -l 指明将命令记录到输出文件中 -r 指明将结果保存到报告文件中 使用-l 选项将所有 DB2 命令记录到日志文件 (db2backup.log )并且使用-r 选项将命令的输出保存到报告文件(db2backup.rpt ),这始终是一个很好的方法。这两个选项的区别在于: ?-l 选项记录每条命令的开始和结束并记录日期和时间 ?-r 选项将每条命令的输出保存到文件中。 同时使用这两个选项可以让您利用报告文件查看脚本的执行摘要,并利用日志文件查看每条命令的详细信息。 也可以从 Windows shell 调用 DB2 命令窗口本身,只需从 Windows shell(命令提示符)输入db2cmd 即可。它有一些有用的开关,可以在调用它时向它传递这些开关。表 2描述了这些选项: 表 2. DB2 命令窗口的选项 开关描述-c 执行 DB2 命令窗口,然后终止。 -w 一直等到 DB2 命令窗口终止。 -i 从进行调用的 shell 继承环境。 -t 从进行调用的 shell 继承标题。

DB2操作指南及命令大全

DB2操作指南及命令大全 1.启动实例(db2inst1): db2start 2.停止实例(db2inst1): db2stop 3.列出所有实例(db2inst1) db2ilist 4.列出当前实例: db2 get instance 5.设置当前实例 set db2instance=db2 6.察看示例配置文件: db2 get dbm cfg|more 7.更新数据库管理器参数信息: db2 update dbm cfg using para_name para_value 8.创建数据库: db2 create db test 9.察看数据库配置参数信息 db2 get db cfg for test|more 10.更新数据库参数配置信息 db2 update db cfg for test using para_name para_value 11.删除数据库: db2 drop db test 12.连接数据库 db2 connect to test 13.列出所有表空间的详细信息。 db2 list tablespaces show detail 14.列出容器的信息 db2 list tablespace containers for tbs_id show detail

15.创建表: db2 ceate table tb1(id integer not null,name char(10)) 16.列出所有表 db2 list tables 7.插入数据: db2 insert into tb1 values(1,’sam’); db2 insert into tb2 values(2,’smitty’); 18.查询数据: db2 select * from tb1 9.数据: db2 delete from tb1 where id=1 0.创建索引: db2 create index idx1 on tb1(id); 1.创建视图: db2 create view view1 as select id from tb1 2.查询视图: db2 select * from view1 3.节点编目 db2 catalog tcp node node_name remote server_ip server server_port 4.察看端口号 db2 get dbm cfg|grep SVCENAME 5.测试节点的附接 db2 attach to node_name 6.察看本地节点 db2 list node direcotry 7.节点反编目 db2 uncatalog node node_name 8.数据库编目 db2 catalog db db_name as db_alias at node node_name

DB2数据库安全配置基线

DB2数据库系统安全配置基线 中国移动通信有限公司管理信息系统部 2012年 04月

备注: 1.若此文档需要日后更新,请创建人填写版本控制表格,否则删除版本控制表格。

目录 第1章概述 (4) 1.1适用范围 (4) 1.2适用版本 (4) 1.3实施 (4) 1.4例外条款 (4) 第2章帐号与口令 (5) 2.1帐号 (5) 2.1.1删除不必要的帐号* (5) 2.1.2分配数据库用户所需的最小权限* (5) 2.2口令 (6) 2.2.1DB2用户口令安全 (6) 第3章数据库权限 (7) 3.1从PUBLIC撤销隐式的权限和特权 (7) 3.1.1从PUBLIC撤销隐式的权限和特权 (7) 3.2跟踪隐式的特权 (9) 3.2.1跟踪隐式的特权 (9) 3.3检查用户许可和特权 (9) 3.3.1检查用户许可和特权* (9) 第4章DB2认证 (11) 4.1为SYS XXX_GROUP参数使用显式值 (11) 4.1.1为SYSxxx_GROUP 参数使用显式值 (11) 4.2使用加密的AUTHENTICATION模式 (11) 4.2.1使用加密的AUTHENTICATION模式 (11) 第5章DB2审计 (13) 5.1执行随机安全审计 (13) 5.1.1执行随机安全审计* (13) 第6章评审与修订 (14)

第1章概述 本文档规定了中国移动管理信息系统部所维护管理的DB2数据库系统应当遵循的数据库安全性设置标准,本文档旨在指导系统管理人员或安全检查人员进行DB2数据库系统的安全合规性检查和配置。 1.1 适用范围 本配置标准的使用者包括:数据库管理员、应用管理员、网络安全管理员。 本配置标准适用的范围包括:中国移动总部和各省公司信息化部门维护管理的DB2数据库系统。 1.2 适用版本 DB2数据库系统。 1.3 实施 本标准的解释权和修改权属于中国移动集团管理信息系统部,在本标准的执行过程中若有任何疑问或建议,应及时反馈。 本标准发布之日起生效。 1.4 例外条款 欲申请本标准的例外条款,申请人必须准备书面申请文件,说明业务需求和原因,送交中国移动通信有限公司管理信息系统部进行审批备案。

db2pd简介及使用方法

1.打开 db2pd – Monitor and Troubleshoot DB Command,如图 3 所示。 图 3. DB2 Information Center 中关于 db2pd 工具的信息

调用 db2pd 工具有两种方式。可以用交互模式调用 db2pd 工具,或者直接在操作系统命令提示符下运行。要是用交互模式执行该工具,可以在操作系统命令提示符下输入 db2pd –interactive 或者直接输入 db2pd,这样将看到 db2pd 命令提示符db2pd>,可以输入命令选项。使用–help 选项可以获得帮助信息。退出 db2pd 命令提示符只需要输入 quit 或者 q。图 4 中的例子说明了如何使用交互模式显示当前的代理。 图 4. 用交互模式调用 db2pd 在操作系统命令提示符下调用该工具可以输入带有命令选项的 db2pd 命令。下面的例子(图 5)使用 -agents 选项显示了所有的活动代理。 图 5. 在操作系统命令提示符下调用 db2pd

此外,还可以通过将选项保存在文件中或者在 DB2PDOPT 环境变量中设置选项来控制该命令。下面的例子(图 6)说明可以将 -agents 选项保存在一个(在该例中)名叫file.out的文件中,然后使用 db2pd –command file.out 执行选项。 图 6. 将 db2pd 选项保存在文件中 如果要使用 DB2PDOPT 环境变量,可以将 DB2PDOPT 设成需要的选项然后像下面这样调用 db2pd: 图 7. 在 DB2PDOPT 环境变量中设置 db2pd 选项

文本预览
相关文档 最新文档