2013年7月18日
摘要: 1. DB2大数据处理不记录事务日志步骤: 建表需要添加属性“NOT LOGGED INITIALLY” 在大批量更改操作的同一个事务开始时执行:“ALTER TABLE tabname ACTIVATE NOT LOGGED INITIALLY” 执行更新sql 提交,一个事务完成,后续sql为下一个事务,默认记录事务日志 但是根据IBM的官方文档及测试,建表的时候不加参数“NOT LOGGED INITIALLY”,直接进行“ALTER TABLE tabname ACTIVATE NOT LOGGED INITIALLY”也是可以的。2. IBM官方文档:使用 NOT LOGGED IN 阅读全文
posted @ 2013-07-18 17:21 Brad Miller 阅读(13492) 评论(0) 推荐(1)
摘要: biee 11g学习1. 创建资料档案库文件(RPD) 文件数据库1.1 创建数据源连接 运行Net Manager 用于BIEE的数据库服务1.2 模型的建立 1.运行oracle bi 管理工具,新建资料.档案库(二进制文件、名称、位置、导入元数据是、资料档案库口令admin123) 2.选择数据源(连接类型OCI 10g/11g,数据源名称MERIT,用户名DEV_BIPLATFORM,密码biee) 3.选择元数据类型 (表、关键字、外键) 4.选择元数据对象 用于把所需表创建成资料档案库 5.点击完成 6.保存RPD文件,检查是否有错误1.3 加载rpd文件 1.启动BI服务后登入h 阅读全文
posted @ 2013-07-18 16:36 Brad Miller 阅读(3698) 评论(0) 推荐(0)
摘要: 1.安装oracle创建字符集为AL32UTF8的实力MERIT sys密码merit创建biee用户create tablespace biee datafile 'D:\ORADATA\MERIT\biee01.DBF' size 1024m reuse autoextend on next 100m;create user biee identified by biee default tablespace biee;授角色权限grant dba,resource,connect,sysdba to biee;修改初始化参数alter system set session 阅读全文
posted @ 2013-07-18 16:17 Brad Miller 阅读(2955) 评论(0) 推荐(0)
摘要: 卸载Oracle步骤:1.停止所有与ORACLE相关的服务。2. 使用OUI(Oracle Universal Installer)卸载Oracle软件。 “开始”->“程序”->“Oracle-OraDb110g_home1|Oracle installation product|Universal installer.3.删除注册表内容。运行regedit命令,删除下面内容:HKEY_LOCAL_MACHINE|SOFTWARE|ORACLE注册表键,删除此键。 HKEY_LOCAL_MACHINE|SYSTEM|CurrentControlSet|Services,删除Ser 阅读全文
posted @ 2013-07-18 16:07 Brad Miller 阅读(1914) 评论(0) 推荐(0)
摘要: 本文摘自 http://www-128.ibm.com/developerworks/cn/db2/library/techarticles/dm-0404snow/index.htmlDB2 UDB DBA 核对清单一.简介虽然数据库越来越具有自我感知(self-aware)和自我修复(self-healing)的能力,但是仍然需要进行一些监控,才能使数据库尽可能高效地运行。就像汽车一样,数据库也需要进行一些检查,才能够以最佳状态运行。本文被划分为一些检查或任务,这些检查或任务应该按不同时间间隔执行。 第一组检查或任务应该每天都执行,以确保当前或者将来一段时间内没有问题。第二组检查或任务则需 阅读全文
posted @ 2013-07-18 15:32 Brad Miller 阅读(764) 评论(0) 推荐(0)
摘要: col1 col2 ----------------- 0001 Tom 0001 Jack 0001 Mike 0002 Kate 0002 Rose 0002 Fene 如何用一条SQL语句得到如下结果: col1 col2 ----------------- 0001 Tom,Jack,Mike 0002 Kate,Rose,Fene 创建自定义函数: create or replace function f_ename(jobno in varchar2) return varchar2 is str_return varchar2(200); curso... 阅读全文
posted @ 2013-07-18 14:53 Brad Miller 阅读(272) 评论(0) 推荐(0)
摘要: DB2 通用数据库进程全接触Dwaine Snow, DB2 UDB 和 Informix IDS 产品经理, IBM 多伦多实验室Dwaine Snow 是 DB2 UDB 分区数据库以及查询巡视器(Query Patroller)和 IBM Informix IDS 的产品经理。Dwaine 过去 12 年一直效力于 IBM,过去 8 年里他一直从事 DB2 UDB 方面的工作。可以通过 dsnow@ca.ibm.com与 Dwaine 联系。Raul F. Chong, DB2 UDB 顾问, IBM 多伦多实验室Raul F. Chong是 IBM 多伦多实验室的数据库顾问,主要与 I 阅读全文
posted @ 2013-07-18 14:50 Brad Miller 阅读(6609) 评论(0) 推荐(0)
摘要: 1、创建系统用户dbuser/ehong隶属于db2users2、C:\Program Files\IBM\SQLLIB\BIN>db2 connect to AKZXTEST数据库连接信息数据库服务器 = DB2/NT 9.7.3SQL 授权标识 = ADMINIST...本地数据库别名 = AKZXTEST3、给用户授权授予连接权限C:\Program Files\IBM\SQLLIB\BIN>db2 grant connect on database to user dbuserDB20000I SQL 命令成功完成。这里可以授予的数据库级特权有:CREATETAB: 用户可 阅读全文
posted @ 2013-07-18 14:35 Brad Miller 阅读(36160) 评论(0) 推荐(0)
摘要: 1、DB2数据库的日志原理事务日志记录数据库中所有对象和数据的改变,在早前版本中最大可达256G,其大小为( logprimary + logsecond ) * logfilsiz,其中logprimary + logsecond的值小于或等于256,logfilsiz的最大为262144,在9.5版本中,日志最大已经可以达到512G,其中logfilsz的大小更改为524286。DB2数据库的日志分为主日志和辅助日志,其中主日志在第一个连接到达数据库或者数据库被激活后立即分配,而辅助日志在主日志大小不够的时候动态分配。所以需要注意一点,日志所在的文件系统的大小必须大于主日志文件与辅助日志文 阅读全文
posted @ 2013-07-18 14:13 Brad Miller 阅读(13724) 评论(0) 推荐(0)
摘要: 当我们发现某个SQL语句执行很慢时,可以通过查看它的访问计划来定位原因,如是否执行了合适的索引、是否采用了正确的连接方法等。但是我们发现很多用户对访问计划的生成和解释工具的使用存在很多疑惑,本文通过一些实例来解释具体的用法,希望对大家有所帮助。步骤1. 创建explain表 访问计划的采集和评估是通过一些explain命令和工具实现的,在采集和评估之前需要先创建一些数据表来存放解释数据。在/sqllib/misc下有个文件叫EXPLAIN.DDLdb2 connect to db2 -tvf /sqllib/misc/EXPLAIN.DDL (unix和linux下注意大小写)在当前数据库中. 阅读全文
posted @ 2013-07-18 14:00 Brad Miller 阅读(6115) 评论(0) 推荐(0)
摘要: 【转】DB2日常维护——REORG TABLE命令优化数据库性能 一个完整的日常维护规范可以帮助 DBA 理顺每天需要的操作,以便更好的监控和维护数据库,保证数据库的正常、安全、高效运行,防止一些错误重复发生。 由于DB2使用CBO作为数据库的优化器,数据库对象的状态信息对数据库使用合理的 ACCESS PLAN至关重要。DB2 优化器使用目录统计信息来确定任何给定查询的最佳访问方案。如果有关表或索引的统计信息已过时或者不完整,则会导致优化器选择不是最佳的方案,并且会降低 执行查询的速度。当数据库里某个表中的记录变化量很大时,需要在表上做REORG操作来优化数据库性能一、完整的REORG表的. 阅读全文
posted @ 2013-07-18 13:59 Brad Miller 阅读(12477) 评论(0) 推荐(0)
摘要: 1.runstats的语法:runstats on table [模式名].[表名] with distribution and detailed indexes all注意:你可以在所有列上,或者仅仅在某些列或列组(除了LONG和LOB列)上执行RUNSTATS。如果没有指定特定列的子句,系统则会使用默认的ON ALL COLUMNS子句。使用RUNSTATS WITH DISTRIBUTION当您已确定表中包含不是统一分布的数据时,可以运行包含WITH DISTRIBUTION子句的RUNSTATS。目录统计信息表通常包含关于表中最高和最低值的信息,而优化器假定数据值是在两个端点值之间均匀 阅读全文
posted @ 2013-07-18 13:58 Brad Miller 阅读(20022) 评论(0) 推荐(0)
摘要: 打开和关闭快照缺省情况不打开 DB2 监控,必须在连接或实例级别上进行设置。有一系列监视器开关来决定是否监控某种数据元素。还预留了一个内存堆,用于包含为监控而存储的信息。1:在instance级别上设置监视器开关 在实例级别上设置监视器开关会影响连接到该实例中任何数据库的所有用户。下面是监视器开关 DFT_MON_STMT:语句监视器(用于动态 SQL) DFT_MON_TABLE:表监视器 DFT_MON_LOCK:锁监视器 DFT_MON_BUFPOOL:缓冲池监视器 DFT_MON_SORT:排序监视器 DFT_MON_UOW:工作单元信息 DFT_MON_TIMESTAMP:跟踪时间戳 阅读全文
posted @ 2013-07-18 13:56 Brad Miller 阅读(6143) 评论(1) 推荐(0)
摘要: ERROR [55019] [IBM][DB2/NT] SQL1477N For table "DB_YHJX.YHJX_FHDKFHZ" an object "521" in table space "3" cannot be accessed. SQLSTATE=55019SQL1477N 对于表 "",不能访问表空间 "" 中的对象 ""。说明:试图访问一个表,而该表的其中一个对象是不可访问的。由于下列原因之一,该表可能不可访问:1.当回滚工作单元时,该表激活了 NOT 阅读全文
posted @ 2013-07-18 13:55 Brad Miller 阅读(10165) 评论(0) 推荐(0)
摘要: 1. 统计所有节点表空间使用率 select substr(TABLESPACE_NAME,1,20) as TBSPC_NAME,bigint(TOTAL_PAGES * PAGE_SIZE)/1024/1024 as "TOTAL(MB)", used_pages*PAGE_SIZE/1024/1024 as "USED(MB)", free_pages*PAGE_SIZE/1024/1024 as "FREE(MB)" from table(snapshot_tbs_cfg('DB_NAME', -2)) as 阅读全文
posted @ 2013-07-18 13:54 Brad Miller 阅读(32421) 评论(0) 推荐(0)
摘要: DB2中的数据类型DB2内置数据类型可以分成数值型(numeric)、字符串型(character string)、图形字符串(graphic string)、二进制字符串型(binary string)或日期时间型(datetime)。还有一种叫做 DATALINK 的特殊数据类型。DATALINK 值包含了对存储在数据库以外的文件的逻辑引用。数值型数据类型包括 SMALLINT、INTEGER、BIGINT、DECIMAL(p,s)、REAL 和 DOUBLE。所有数值都有符号和精度。精度是指除符号以外的二进制或十进制的位数。如果数字的值大于等于零,就认为符号为正。*小整型,SMALLIN 阅读全文
posted @ 2013-07-18 11:48 Brad Miller 阅读(21732) 评论(0) 推荐(0)
摘要: 相比较Oracle来说,DB2的锁机制麻烦了很多,而且这个麻烦带来的不是性能的上升而是下降,不过如果细致了解的话,只能感慨不愧是数据库理论诞生的公司,在实现数据库理论上比Oracle全面得多。 Oracle没有实现一般数据库理论里的锁机制,带来的并发性与性能上的提升以及相关的问题上文已经介绍了,现在来说说几乎完全实现一般数据库理论锁机制的DB2数据库这方面的实现。 下面的资料来源于IBM资料库DB2和 Oracle的并发控制(锁)比较 首先是锁是属性,有如下几个基本属性:锁定对象,锁定大小,锁定时间,锁定状态。锁定对象表示锁定的数据资源,DB2支持对表空间,表,行,索引(大型机里支持对数据页. 阅读全文
posted @ 2013-07-18 11:46 Brad Miller 阅读(21459) 评论(0) 推荐(2)
摘要: DB2数据库常用命令数据库学习你可以用 get snapshot for locks on XXX 看是那个表锁了,再从相关的操作去查原因吧db2pd -d 库名 -locks和db2pd -d 库名 -wlockswindow环境下在db2cmd下,使用db2 get snapshot for locks on dbname-查看数据库管理器级别快照信息 db2 get snapshot for dbm -查看数据库级别快照信息 db2 get snapshot for database on dbname -查看应用级别快照信息 db2 get snapshot for applic... 阅读全文
posted @ 2013-07-18 11:44 Brad Miller 阅读(3954) 评论(0) 推荐(0)
摘要: 1.对于执行中的报错,可以在db2命令行下运行命令 : db2=>? SQLxxx 查看对应的报错原因及解决方法。2.错误SQL0206N SQLSTATE=42703 检测到一个未定义的列、属性或参数名。 SQL0206N "SQL_COU_ALL" is not valid in the context where it is used. SQLSTATE=42703 db2 => ? "42703" db2 => ? SQL0206N 3.错误SQL0668N code "7" SQLSTATE=57016 表 阅读全文
posted @ 2013-07-18 11:42 Brad Miller 阅读(39648) 评论(0) 推荐(0)
摘要: --DB2频繁出现死锁,常用解决问题的命令db2 get snapshot for locks on sampledb2 get db cfg for sampledb2 update db cfg using dlchktime 10000-查看数据库管理器级别快照信息 db2 get snapshot for dbm -查看数据库级别快照信息 db2 get snapshot for database on dbname -查看应用级别快照信息 db2 get snapshot for application agentid appl-handler 注:appl-handler可... 阅读全文
posted @ 2013-07-18 11:38 Brad Miller 阅读(10329) 评论(0) 推荐(0)