Quick Hit Tips – CPUSPEED, RESTRICTIVE, and DB2_WORKLOAD

Today we are going to talk about some random DB2 features that can’t stand in a blog of their own, but are worth discussing nonetheless. These are tidbits I had discovered during "DB2’s Got Talent" presentations, IDUG conferences, or “Hey, look what I discovered” moments. You blow past this setting every time you execute “db2 [...]

DB2 Error Logging

(Edited 8/12/2014 to add links to the old tutorials from IBM) There are a number of ways to cover error logging. I have covered some specific elements in previous posts, so I'm going for a more comprehensive approach in this post. There used to be this great "Problem Determination Mastery" certification available. The study material [...]

Bad Message Queue Handler. Sit. Stay.

There's an error message that appears in my db2 diagnostic logs rather frequently. It looks like this: 2014-07-30-13.34.58.446316+000 E1638372A476 LEVEL: Error (OS) PID : 32374944 TID : 1 PROC : db2 INSTANCE: db2inst1 NODE : 000 HOSTNAME: redacted EDUID : 1 FUNCTION: DB2 UDB, oper system services, sqlodque, probe:2 MESSAGE : ZRC=0x870F003E=-2029060034=SQLO_QUE_BAD_HANDLE "Bad Queue Handle" [...]

When Index Scans Attack!

We all know that table scans can be (but aren't always) a negative thing. I have spent less time worrying about index scans, though. Index access = good, right? I thought I'd share a recent scenario where an index scan was very expensive. Maybe still better than a table scan, but with one index, I [...]

DB2 Basics: Aliases

My blog entries covering the DB2 Basics continue to be my most popular blog entries. This is probably because they appeal to a wider audience - even non-DBAs are interested in them and I continue to rank highly in Google search results. My blog entry on how to catalog a DB2 database gets a ridiculous [...]

DB2 Basics: Storage Groups

A storage group is a layer of abstraction between the data in your database and disk. It is only used with Automatic Storage Tablespaces (AST). It allows us to group tablespaces together to live in similar places. Storage groups were first introduced in a roundabout way with automatic storage databases in DB2 8.2. These databases [...]

Quick Tip: Simple Errors on Database Connection

There are a couple of errors that you can get on database connection that simply mean you typed something wrong, but I figure there are people who will search on these errors, so I thought I would share. If you do not already have a database connection, you can get: db2 conenct to SAMPLE DB21034E [...]

STMM Analysis Tool

I mostly like and use DB2's Self Tuning Memory Memory Manager (STMM) for my OLTP databases where I have only one DB2 Instance/Database on a database server. I do have some areas that I do not let it set for me. I've recently learned about an analysis tool - Adam Storm did a presentation that [...]

Three Different Ways to Write the Same Join in SQL

This was really a revelation for me when I took DanL's SQL workshop before the IDUG conference in Phoenix. I started out as a physical or systems DBA at IBM, and until studying for certification, I hardly wrote a statement more complicated than select * from syscat.bufferpools. After being a DBA for probably 5 years [...]

Scrambled Output from db2top

I don't know about you, but I'm pretty addicted to db2top. I started using it way back when it was a download from Alphaworks. It is simply unparalleled for free real-time monitoring for DB2. No, it's not full enough of a feature set to be your only monitoring tool, but I can barely troubleshoot a [...]