DB2 - 技术教程文章

db2 v10.5 HADR快速部署手册

一、目录准备mkdir -p /home/db2inst1/db2_backupmkdir -p /home/db2inst1/db2_archivemkdir -p /home/db2inst1/db2_logchmod -R 775 /home/db2inst1/db2_backupchmod -R 775 /home/db2inst1/db2_archivechmod -R 775 /home/db2inst1/db2_logchown -R db2inst1:db2inst1 /home/db2inst1/db2_backupchown -R db2inst1:db2inst1/home/db2inst1/db2_archivechown -R db2inst1:db2inst1 /home/db2inst1/db2_log 二、服务和端口配置(注...

sql分页 sql server,oracle,db2,mysql

场景一(假设用户只会浏览前面数十页的情况):思路:取出 页大小*页数的数据,然后拿去 intStartIndex和intEndIndex直接的数据;优点: 书写简单,通用,适用于用户只会浏览最初几页的情况缺点:如果数据量超过千万,读取最后几页时会很慢。 【sql server】: select top 页大小*页数 * from table1 ; 获得数据,然后通过计算拿对应的数据。 【oracle】: select * from (select TMP_TAB.*, rownum as RN from (select * from...

DB2日常维护——REORG TABLE命令优化数据库性能

一个完整的日常维护规范可以帮助 DBA 理顺每天需要的操作,以便更好的监控和维护数据库,保证数据库的正常、安全、高效运行,防止一些错误重复发生。由于DB2使用CBO作为数据库的优化器,数据库对象的状态信息对数据库使用合理的 ACCESS PLAN至关重要。DB2 优化器使用目录统计信息来确定任何给定查询的最佳访问方案。如果有关表或索引的统计信息已过时或者不完整,则会导致优化器选择不是最佳的方案,并且会降低 执行查询的速度...

linux 下C连接db2学习【代码】

网上找了好久的资料,也没有找到怎么告诉我如何编译和连接db2 ,用C语言这个工具,后来发现以前工作中见到安装完db2,huizai实例用户如db2inst1 的sqllib下面自带一个samples的文件夹,里面有各种工具连接db2的样例,如odbc,c,perl,java等。这里我就看了一下C如何连接db2,通过在sqc中嵌入sql语句。说到这里,要使用嵌入式c编程,大家要抽空看看db2的数据库编程的语法,有点像oracle的sql/pl的语法结构;这里由于samples里面的样例...

使用LOAD工具导致DB2进入备份暂挂、复原暂挂、装入暂挂及完整性暂挂问题的解决方法

为了加快数据的装载速度,许多DBA们喜欢使用load工具进行数据的迁移和装载,但是load工具带来便利性的同时也为我们带来一些问题,今天就着重介绍一下当我们再使用Load工具时遇到问题后的解决办法。 众所周知,load过程分为4个阶段:load/build/delete/index copy。load阶段是将源文件parser成物理数据存储的格式,直接装入到页中,而不通过db2引擎,load阶段会检查表定义,违背定义的数据不会装入到表中。build阶段建议索引(如果装...

段云峰:DB2 9对企业有3点帮助

正在看的db2教程是:段云峰:DB2 9对企业有3点帮助。段云峰于2001年获得北京邮电大学博士学位,2005年获得北京大学信息与通信工程专业博士后学历。 在中国移动工作期间,在国际上创新性地提出了分级式数据仓库理论,主持设计并建设了中国移动的数据仓库系统,前后投资了几十亿元人民币,建成了目前国际最大容量的数据仓库系统(截至到2006年6月达到1416TB存储容量)。在国内首次系统性地引入了数据仓库的各种业务应用(报表/指标/OL...

DB2 bind on z/os

BIND and REBIND options for packages and plansThere are several options you can use for binding or rebinding plans and packages. Some of the options are common for both bind and rebind and for both plans and packages. Defaults: The default for an option is the value used if you omit the entire option. A default of plan value for BIND PACKAGE means that the default is the same as the value determin...

db2死锁分析与处理【代码】

在数据库中,锁的主要功能是为了控制并发数据的完整性而引入的机制,在并发应用中出现锁现象并不可怕,锁现象通常分为死锁和锁等待两种情形。 死锁是因为两个并发的进程或者线程同时各自占有一个资源,又需要占有对方资源,但又都各不相让造成的,这通常是因为程序在并发上考虑不周造成的。锁等待则是数据库中最普通的情况,一各应用使用数据期间必然要加锁,防止其他进程或应用破坏数据,其他进程或应用在此期间不得不等待前一个...

DB2 设置最大连接数【代码】

db2 connect to dbname user username using passwd db2 update db cfg using MAXAPPLS number查看最大连接数查看DB2最大连接数(v9.7) db2 get dbm cfg MAX_CONNECTIONS=AUTOMATIC(MAX_COORDAGENTS) MAX_COORDAGENTS=AUTOMATIC(200) 原文:http://www.cnblogs.com/wangyuelang0526/p/4599360.html

DB2编程序技巧 (九)

正在看的db2教程是:DB2编程序技巧 (九)。4.8 查看本instance下有哪些database db2 LIST DATABASE DIRECTORY [ on /home/db2inst1 ] 4.9 查看及更改数据库head的配置 请注意,在大多数情况下,更改了数据的配置后,只有在所有的连接全部断掉后才会生效。 查看数据库head的配制 db2 get db cfg for head 更改数据库head的某个设置的值 4.9.1 改排序堆的大小 db2 update db cfg for head using SORTHEAP 2048 将排序堆的大小改为2048...

常见DB2 sql错误码积累

DB2 SQL Error:SQLCODE=-302, SQLSTATE=22001;原因:sql中要更新的某个字段的长度超过了数据库表中字段的定义长度。SQLCODE=-407, SQLSTATE=23502;原因:把NULL值插入到定义为NOT NULL的列中。也就是违反了完整性约束异常。SQLCODE=-803, SQLSTATE=23505;原因:自增id违反唯一性约束,使用insert 语句进行插入新的记录时,可以将自增id设为"DEFAULT"。例:insert into HAIPERIOD (PROPERIODID, PROPERIODSTARTDATETIME, PROPERIO...

阐述 QUEST CENTRAL FOR DB2 八罪

作为一个从事oracle plsql发展2猿 - 年计划,现在,在退出DB2数据仓库项目。 同PL/SQL Developer参考,下文PLSQL,阐述QUEST CENTRAL FOR DB2 5.0 N罪 执行平台:window xp sp3 1:默认行数限制,刚開始用的时候。让我以为数据未插入,由于更本看不到,也根本不提示说事实上还有很多其它数据 在这点上PLSQL是默认出10条。可是非常明显的让你知道有很多其它数据。而且能够按下一个工具栏就显示所有,QC仅仅有去Setting里改。 2:长文字...

DB2Error

一个有相互关系的引用+098 01568 动态SQL语句用分号结束+100 02000 没有找到满足SQL语句的行+110 01561 用DATA CAPTURE定义的表的更新操作不能发送到原来的子系统+111 01590 为2型索引设置了SUBPAGES语句+117 01525 要插入的值的个数不等于被插入表的列数 +162 01514 指定的表空间被置为检查挂起状态+203 01552 使用非唯一的名字来解决命名的限定列+204 01532 命名的对象未在DB2中定义+206 01533 命名的列不在SQL语句中指定的任何表...

db2 怎么计算两个时间相差多少个月。如2015-10-10 和2014-1-12【代码】

SELECT timestampdiff (256, char(timestamp(‘2013-12-30 20:30:30‘) - timestamp(‘2001-09-26 15:24:23‘))) AS "间隔年", timestampdiff (128, char(timestamp(‘2013-12-30 20:30:30‘) - timestamp(‘2001-09-26 15:24:23‘))) AS "间隔季度", timestampdiff (64, char(timestamp(‘2013-12-30 20:30:30‘) - timestamp(‘2001-09-26 15:24:23‘))) AS "间隔月", timestampdiff (32, char(timestamp(‘2013-12-30 20:30...

DB2备份还原中常用的sql语句

初始化环境0.启动 db2start1.Cmd 环境下输入 db2cmd 新打开db2 操作窗口2.连接数据库 db2 connect to db_name3.在本地主机备份语句 db2 backup database db_name to D: 备份成功得到备份映像的时间戳 4.在该环境下创建数据库 db2 create database db_nameDb2 create database pb_db using codeset gbk territory zh_CN pagesize 8192 ---建库;Db2 connect to pb_db ---连接;Db2 create bufferpool t...

DB2 表空间类型【代码】

DB2 表空间类型在介绍如何将数据库管理表空间转换为自动存储表空间之前,我们先来回顾一下 DB2 表空间的各种类型以及各自的特点。系统管理表空间 (System-Managed Space,SMS):这种类型的表空间由操作系统的文件管理系统分配和管理空间。在 DB2 V9 之前,SMS 表空间是默认选项,如果不带任何选项创建数据库或表空间,数据库管理器会自动将表空间建成系统管理表空间。创建 SMS 时,可以指定多个路径做为表空间的容器,空间的大小随...

DB2 日期时间函数【代码】

db2日期时间函数(DATE(TRIM(CHAR(DT#11Y))||‘-‘||TRIM(CHAR(DT#11M))||‘-‘||TRIM(CHAR(DT#11D))) BETWEEN DATE(‘" & strDate1 & "‘) AND DATE(‘" & strDate2 & "‘))(Y > y) OR ((Y = y) AND (M > m)) OR ((Y = y) AND (M = m) AND (D >= d))基础 要使用 SQL 获得当前的日期、时间及时间戳记,请参考适当的 DB2 寄存器:SELECT current date FROM sysibm.sysdummy1 SELECT current time FROM sysibm.sysdummy1 SELECT curre...

What's DB2 模式?【图】

近期负责一个银行方面的项目,需要用到DB2实现多数据库版本切换。初步接触DB2,对于它的管理工具(IBM DATA STUDIO)虽然与ORACLE\MSSQL大同小异,但还是有些东西不一样的。比如什么是它的模式。如图: 实际上DB2的SQL结构跟MSSQL也相差无几,但在不了解什么是DB2模式的情况下,写个 SECLECT * FROM TABLES 会提示未定义的TABLES.很疼!请看如下资料:DB2模式简介:模式(Schema)是一个逻辑分组,每个数据库内部的对象在创建时,都...

DB2表空间重定向恢复数据库实战【代码】

DB2的备份恢复有点坑,当源系统和目标系统的路径设置不同时,要手动进行重定向恢复,本文是我一次实战操作之后总结的过程,仅供参考。一、发出重定向恢复命令DB2 RESTORE DB OLDDB FROM "C:\OLDDBbak" TAKEN AT 20150717164847 TO "C:" INTO NEWDBREDIRECT其中,OLDDB是旧数据库、备份的数据库名称,NEWDB是新数据库名称,不用事先创建也可以,C:\OLDDBbak是备份文件放置的目录,20150717164847是备份文件的时间戳,具体可看备份文...

db2操作 连接、备份、恢复db2

db2默认需要切换到db2inst1这个默认用户才能执行操作 [root@localhost instance]# su - db2inst1[db2inst1@localhost ~]$ db2start[db2inst1@localhost ~]$ db2 force application all[db2inst1@localhost ~]$ db2stop[db2inst1@localhost DB2]$ db2stop force显示所有的实例[db2inst1@localhost ~]$ db2ilist显示当前的实例[db2inst1@localhost ~]$ db2 get instance删除一个实例(注:需切换到root用户权限下)[root@localhost ~]# ...

DB2常用傻瓜问题1000问(三)

正在看的db2教程是:DB2常用傻瓜问题1000问(三)。大家在应用DB2的时候可能会遇到一些看似简单的问题,特别对新手来说,我在此简单的总结一下,发布给大家,希望对大家能有所帮助,同时也欢迎大家一起探讨,共同发展,共同进步!以下主要以DB27.X为基础的.以下的字符为小写.  本文对DB2高手来说是不用看的.  所有字符为小写.  91.如何创建DB2的概要表?  DB2的概要表功能类似于ORACLE的实体化视图!  语法为:  CREATESUMMARYTABLET...

DB2创建EMP和DEPT并进行基础操作【代码】

一、DB2创建EMP和DEPT测试表--DB2创建测试表CREATETABLE TEST.EMP (EMPNO INTEGERNOTNULL, ENAME VARCHAR(10), JOB VARCHAR(9), MGR INTEGER, HIREDATE DATE, SAL DECIMAL(7, 2), COMM DECIMAL(7, 2), DEPTNO INTEGER );INSERTINTO TEST.EMP VALUES (7369, ‘SMITH‘, ‘CLERK‘, 7902, TO_DATE(‘17-DEC-1980‘, ‘DD-MON-YYYY‘), 800, NULL, 20); INSERTINTO TEST.EMP VALUES (7499, ‘ALLEN‘, ‘SALESMAN‘, 7698, TO_DATE(‘...

Cannot resolve classpath entry: /Program Files/IBM/SQLLIB/java/db2java.zip【图】

在mybatis的逆向工程中,使用java代码和xml配置文件生成时出现以下的错误 原来自己在复制官方配置文件的参考时将这一句也复制了进来 删掉后运行即可!成功的话控制台是没有输出的 原文:https://www.cnblogs.com/Guhongying/p/10778453.html

[数据库中间件]将用户添加到DB2组授权【代码】

1、将用户oracle添加到db2的用户组中,命令如下:usermod -a -G db2iam #将用户添加到组中并不改变当前所属组注:以下与主题无关,只是列举一些关于用户的命令id user #查看user所属组等信息 cat /etc/group #查看所有组 groups #查看当前用户所属组2、切换到db2的实例用户db2inst1,向用户oracle授权.db2 connect to sample #连接到数据库 db2 GRANT DBADM,CREATETAB,BI...

Ubuntu 14.04Install DB2【代码】

Install dependency packages:$ sudo apt-get install libstdc++6:i386 $ sudo apt-get install libpam0g:i386 $ sudo apt-get install libaio1Uncompress the tarball:$ tar -xf v10.5_linuxx64_expc.tar.gz $ cd exec $ sudo ./db2setupNext, ...$ su - db2inst1 $ cd sqllib $ . db2profile $ db2start $ db2sampl $ db2 connect to sample Database Connection Information Database server = DB2/LINUXX8664 10.5.5 ...

在DB2中使用EXPORT实现将数据导出文本文件【代码】

EXPORT TO "D:/test.txt" OF DEL SELECT loginname,password FROM cm_staff where loginname =‘TEST‘ 原文:http://www.cnblogs.com/ShaYeBlog/p/4057142.html

db2修改最大连接数

查看当前连接数,sample为数据库名db2 list applications for db sample连接数据库db2 connect to dbname user username using passwd设置最大连接数db2 update db cfg using MAXAPPLS number db2 get dbm cfgMAX_CONNECTIONS=AUTOMATIC(MAX_COORDAGENTS)MAX_COORDAGENTS=AUTOMATIC(200)原文:http://www.cnblogs.com/dyh004/p/7156669.html

DB 查询分析器 方便地创建DB2自定义函数【图】

DB 查询分析器 方便地创建DB2自定义函数 马根峰 (广东联合电子服务股份有限公司, 广州 510300)摘要 本文详细地介绍了“万能数据库查询分析器”,中文版本《DB 查询分析器》、英文版本《DB Query Analyzer》6.03 来方便地创建DB2函数。创建DB2存贮过程与此相同,大家可以参照以下步骤。另外,本示例还适用于SQL语句要以逗号来分隔的数据库系统(如ORACLE)。从6.01 版本开始,万能数...

Sybase脚本移植到DB2中【代码】

?DB2目前碰到一个任务,需要将原本基于Sybase的系统移植到DB2。前期工作中主要都是对SQL脚本的改写。鉴于目前对Sybase和DB2都不是很熟,所以开此记录日志。记录在过程中所遇到的各种问题。 db2中的系统表介绍DB2 Command Line Processor(DB2 CLP)是所有 DB2 产品中都有的,可以使用这个应用程序运行 DB2 命令、操作系统命令或 SQL 语句。在 DB2 数据库被创建的时候,DB2 会创建一些系统表。这些系统表中记录了所有数据库对象的信...

db2 基础语法【代码】

一、db2 基础基本语法注释:“--”(两个减号) 字符串连接:“||” 如set msg=’aaaa’||’bbbb’,则msg为’aaaabbbb’ 字符串的引用:‘’(一定用单引号),如果需要输入单引号,输入两个单引号即可。 语句结束:“;” 语法来源:PASCLE转义字符如果你想查询字符串中包含‘%’或‘_’ ,就得使用转义字符(Escape Characters)。比如,要想查询book_title中包含字符串’99%’的纪录: select * from books where book_title ...