Home
Blog
About
Database administration
Operating systems
Development
Links


Following require login:
ScratchPad



Locations of visitors to this page


2011 January

2011-01-25

Did you know #2

DB2 9.5 introduced the db2dsdriver.cfg configuration file to define connection attributes for databases and aliases for databases.
By default this file is located in installation_path/cfg but this can be changed by setting the DB2DSDRIVER_CFG_PATH environment variable.

db2dsdriver.cfg can be used by, for example, CLPPlus

A utility, db2dsdcfgfill, is provided to create a version of the file from information already stored, e.g.,

$ db2dsdcfgfill -i db2ed1
SQL01535I  The db2dsdcfgfill utility successfully created the db2dsdriver.cfg configuration file.

$ cat /db2/db2ed1/sqllib/cfg/db2dsdriver.cfg
<configuration>
  <DSN_Collection>
    <dsn alias="ED1" name="ED1" host="LOCALHOST" port="0">
      <parameter name="CommProtocol" value="IPC"/>
      <parameter name="IPCInstance" value="db2ed1"/>
    </dsn>
  </DSN_Collection>
</configuration>

In this example db2dsdcfgfill creates an IPC alias for database ED1 with a port number of 0 and that agrees with the documentation.
My experience is that port 0 doesn't work for IPC connections, it generates an error, e.g.,

[jcc][t4][2043][11550][3.59.81] Exception java.net.ConnectException: 
Error opening socket to server LOCALHOST/127.0.0.1 on port 0 with message: Connection refused. ERRORCODE=-4499, SQLSTATE=08001

A working version of db2dsdriver.cfg -

$ cat etc/db2dsdriver.cfg
<configuration>
   <!-- Based on sample in - /db2/db2ed1/db2_software/cfg/db2dsdriver.cfg
        The aliases 'default' and 'ED1' (case sensitive) both work, but both require a password
        despite the docs suggesting that they should use current OS user
     -->
   <DSN_Collection>
      <dsn alias="default" name="ED1" host="localhost" port="5912">
         <!-- comms -->
         <parameter name="IPCInstance" value="db2ed1" />
         <parameter name="CommProtocol" value="IPC" />
      </dsn>
      <dsn alias="ED1" name="ED1" host="dv0003" port="5912">
         <parameter name="CommProtocol" value="TCPIP"/>
      </dsn>
   </DSN_Collection>
   <!-- Global parameters -->
   <parameters>
         <parameter name="ConnectionTimeout" value="10" />
         <!-- yyyy-mm-dd hh:mi:ss -->
         <parameter name="DateTimeStringFormat" value="ISO" />
   </parameters>
</configuration>

2011-01-12

Did you know #1

Did you know that SQL Server version 2005 introduced a new system database, [mssqlsqlsystemresource].

If you look under System Databases in SSMS you won't find this database and it also doesn't appear in dmv's, e.g. dm_io_virtual_file_stats.
However, the filename does appear in [master].[dbo].[sysaltfiles] and I/O stats are reported by the ::fn_virtualfilestats function.

select dbid,fileid,name,filename 
from [master].[dbo].[sysaltfiles] 
where filename like '%systemresource%'

dbid	fileid	name	filename
32767	1	data	E:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\Binn\mssqlsystemresource.mdf
32767	2	log	E:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\Binn\mssqlsystemresource.ldf

select NumberReads, NumberWrites, BytesRead, BytesWritten
from ::fn_virtualfilestats(32767,1) 

NumberReads	NumberWrites	BytesRead	BytesWritten
2537	0	22331392	0

More details on the resource database can be found on MSDN.
Worthy of note:

  • SQL Server cannot backup the resource database, that can only be done manually.
  • Similarly, the database can only be restored manually.

2011-01-05

In case you were wondering, the current site logo is a rather out of proportion picture of our dogs,
I'm working on a better one …
The correctly proportioned image is: The Pack

2011-01-04

Virtualbox 4.0.0 has been released.
Make sure you download and install the extension pack to get:

  • USB 2.0 (EHCI) support
  • VirtualBox Remote Desktop Protocol (VRDP) support
  • Intel PXE boot ROM with support for the E1000 network card

See here for details.

Note: Install the extension pack before starting a VM created with a previous version of Virtualbox…
If you don't do that then USB support will be disabled and I haven't found a way to enable it and get the VM running … :-(


Copyright HandyDBA 2012