You can create Database Managed Space (DMS) containers with the type 'DEVICE' using Quick I/O. The best way to preallocate space for tablespace containers and to make them accessible using the Quick I/O interface is to use the qiomkfile. You can use the qiomkfile to create the Quick I/O files for either temporary or permanent tablespaces.
To create a container as a Quick I/O file using qiomkfile
Create a Quick I/O-capable file using the qiomkfile command:
$ /opt/VRTS/bin/qiomkfile -s file_size /mount_point/filename
Create tablespace containers using this file with the following SQL statements:
$ db2 connect to database $ db2 create tablespace tbsname managed by database using \ ( DEVICE /mount_point/filename size ) $ db2 terminate
An example to show how to create a 100MB Quick I/O-capable file named dbfile on the VxFS file system /db01 using a relative path name:
$ /opt/VRTS/bin/qiomkfile -s 100m /db01/dbfile $ ls -al -rw-r--r-- 1 db2inst1 db2iadm1 104857600 Oct 2 13:42 .dbfile lrwxrwxrwx 1 db2inst1 db2iadm1 19 Oct 2 13:42 dbfile -> \ .dbfile::cdev:vxfs:
In the example, qiomkfile creates a regular file named /db01/.dbfile, which has the real space allocated. Then, qiomkfile creates a symbolic link named /db01/dbfile. This symbolic link is a relative link to the Quick I/O interface for /db01/.dbfile, that is, to the .dbfile::cdev:vxfs: file. The symbolic link allows .dbfile to be accessed by any database or application using its Quick I/O interface.
We can then add the file to the DB2 database PROD:
$ db2 connect to PROD $ db2 create tablespace NEWTBS managed by database using \ ( DEVICE '/db01/dbfile' 100m ) $ db2 terminate