Consider the following two items involving alternate server connectivity 7with DB2 Connect server:
7Applications running under the context of the local system account (LSA) 7are supported on all Windows platforms, except Windows ME.
7 7 7The CONNECT statement and ATTACH command support two-part user IDs. The 7qualifier of the SAM-compatible user ID is the NetBIOS style name which has 7a maximum length of 15 characters. This feature is not supported on Windows 7ME.
7 7 7The prerequisites for Linux Kerberos support are inaccurately reported 7in the documentation. The provided DB2 Kerberos security plug-in is supported 7with RedHat Enterprise Linux Advanced Server 3.0 with the IBM Network Authentication 7Service (NAS) 1.4 client.
For connections to zSeries and iSeries, the database must be cataloged 7with the AUTHENTICATION KERBEROS parameter and the TARGET PRINCIPAL parameter 7name must be explicitly specified.
7Neither zSeries nor iSeries support mutual authentication.
Furthermore, in all cases, the DB2 administration log or db2diag.log 7will indicate "Logon failed" or "Logon denied."
The Local Security Authority cannot be contactedThe error is a result 7of Windows locating the local user first. The solution is to fully qualify 7the user in the connection string. For example: 7
name@DOMAIN.IBM.COM
To determine if Windows accounts are configured to use DES 7encryption, look under Account properties in 7the Active Directory. A restart might be required 7if the account properties are changed.
host/<server hostname>@<server domain name>For example: 7
host/myhost.domain.ibm.com@DOMAIN.IBM.COMOtherwise, 7you must start the DB2 service under a valid domain account.
The DB2TCP_CLIENT_RCVTIMEOUT registry variable has been added in version 78.2.
7 77 7 7The DB2_LARGE_PAGE_MEM performance variable has been added in 7version 8.2.
7 7Variable name | 7Operating systems | 7Values | 7
---|---|---|
Description | 7||
DB2_LARGE_PAGE_MEM | 7
7 AIX 5.x 64-bit only 7Linux |
7Default=NULL
7 Use * to denote that all applicable 7memory regions should use large page memory, or a comma-separated list of 7specific memory regions that should use large page memory. Available regions 7vary by operating system. On AIX 5.x 64-bit, the following regions can be 7specified: DB, DBMS, or PRIVATE. On Linux, the following region can be specified: 7DB. |
7
7 Large page memory is supported only 7for DB2 UDB for AIX 5L, 64-bit Edition, and DB2 UDB for Linux. 7The DB2_LARGE_PAGE_MEM 7registry variable is used to enable large page support when running on AIX 75.x or any Linux architecture with the appropriate kernel support. This registry 7variable deprecates the DB2_LGPAGE_BP registry variable, which can only 7be used to enable large-page memory for the database shared memory region. 7 This can now be enabled by setting DB2_LARGE_PAGE_MEM=DB. Any 7documentation that mentions enabling large pages with the DB2_LGPAGE_BP 7registry variable can be treated as synonymous with setting DB2_LARGE_PAGE_MEM=DB. 7Large page usage is primarily intended to provide performance improvements 7to high performance computing applications. Memory access intensive applications 7that use large amounts of virtual memory may obtain performance improvements 7by using large pages. To enable DB2 UDB to use large pages, you must first 7configure the operating system to use large pages. 7Enabling large private 7pages will increase DB2 UDB memory usage by a significant amount, as each 7DB2 UDB agent will consume at least 1 large page (16MB) of physical memory. 7To enable large pages for agent private memory on 64-bit DB2 for AIX (the 7DB2_LARGE_PAGE_MEM=PRIVATE setting), the following conditions must 7be met, in addition to configuring large pages on the operating system: 7
On 64-bit DB2 for AIX, enabling this variable reduces the size of 7the shared memory segment backing database memory to the minimum requirement. 7 The default is to create a 64 GB segment: see the database shared memory 7size (database_memory) database configuration parameter 7for more details. This avoids pinning more shared memory in RAM than is likely 7to be used. 7By setting this variable, the ability to dynamically increase 7the overall database shared memory configuration (for example, to increase 7the size of buffer pools) will be limited. 7On Linux, there is an additional 7requirement for the availability of the libcap.so library. 7 This library must be installed for this option to work. If this option is 7turned on, and the library is not on the system, DB2 UDB will disable the 7large kernel pages and continue to function as it would previously. 7On Linux, to verify that large kernel pages are available, issue the following 7command: 7cat /proc/meminfo7 If it is available, the following 7three lines should appear (with different numbers depending on the amount 7of memory configured on your machine): 7HugePages_Total: 200 7 HugePages_Free: 200 7 Hugepagesize: 16384 KB7 If you do not see these lines, or 7if the HugePages_Total is 0, configuration of the operating system or kernel 7is required. |
7
The default value for the DB2_ENABLE_BUFPD registry variable has been changed 6to ON.
7 7 7Functionality previously achieved through DB2NTNOCACHE can be achieved 7at the table space level by specifying the NO FILE SYSTEM CACHING clause on 7the CREATE TABLESPACE or the ALTER TABLESPACE statement. Refer to SQL Reference for details on usage. The DB2NTNOCACHE registry variable 7will be removed in a future release.
7 7 7Explain tables might be common to more than one user. However, the explain 7tables can be defined for one user, and aliases can be defined for each additional 7user using the same name to point to the defined tables. Alternatively, the 7explain tables can be defined under the SYSTOOLS schema. The Explain facility 7will default to the SYSTOOLS schema if no other explain tables or aliases 7are found under the user's session ID for dynamic SQL, or the statement authorization 7ID for static SQL. Each user sharing the common explain tables must have insert 7permission on those tables. Read permission for the common explain tables 7should also be limited, typically to users who analyze the explain information.
7 7 7Explain data is captured if you request it when an SQL statement is compiled. 7Consider how you expect to use the captured information when you request explain 7data.
7Explain table information is captured in any 7of the following cases:
7The collating information parameter can only be displayed using the db2CfgGet 7API. It cannot be displayed through the command line processor or the Control Center.
7This parameter provides 260 bytes of database collating information. The 7first 256 bytes specify the database collating sequence, where byte "n" contains 7the sort weight of the code point whose underlying decimal representation 7is "n" in the code page of the database.
7The last 4 bytes contain internal information about the type of the collating 7sequence. The last 4 bytes of collate_info is an integer. The integer is sensitive 7to the endian order of the platform. The possible values are:
7If you use this internal type information, you need to consider byte reversal 7when retrieving information for a database on a different platform.
7You can specify the collating sequence at database creation time.
DB2 Universal Database (DB2 UDB) supports the XA91 specification 7defined in X/Open CAE Specification Distributed Transaction 7Processing: The XA Specification, with the following exceptions:
7The XA specification allows the interface to 7use asynchronous services, so that the result of a request can be checked 7 at a later time. The database manager requires that the requests be invoked 7in synchronous mode.
The XA interface allows two ways to register an RM: static 7registration and dynamic registration. DB2 UDB supports both dynamic and static 7registration. DB2 UDB provides two switches:
7DB2 UDB does not support transaction migration 7between threads of control.
As required by the XA interface, the database manager provides a db2xa_switch and a db2xa_switch_static external C variable of type 7xa_switch_t to return the XA switch structure to the TM. Other than 7the addresses of various XA functions, the following fields are returned:
7Explicitly states that DB2 UDB uses dynamic registration, and that the TM 7should not use association migration. Implicitly states that asynchronous 7operation is not supported.
7For db2xa_switch_static TMNOMIGRATE 7is set
7Explicitly states that DB2 UDB uses dynamic registration, and 7that the TM should not use association migration. Implicitly states that 7asynchronous operation is not supported.
7The XA architecture requires that a Resource Manager (RM) provide a switch that gives the XA Transaction Manager (TM) 7access to the RM's xa_ routines. An RM switch 7uses a structure called xa_switch_t. The switch contains the RM's name, 7non-NULL pointers to the RM's XA entry points, a flag, and a version number.
7 7DB2 UDB's switch can be obtained through either of the following two ways:
7 #define db2xa_switch (*db2xa_switch)
7 #define db2xa_switch_static (*db2xa_switch)
prior to using db2xa_switch or db2xa_switch_static.DB2 UDB provides these APIs, which return the address of 7the db2xa_switch or the db2xa_switch_static structure. 7This function is prototyped as:
7 struct xa_switch_t * SQL_API_FN db2xacic( )
7 struct xa_switch_t * SQL_API_FN db2xacicst( )
With either method, you must link your application with libdb2.
7 7The pointer to the xa_switch structure, db2xa_switch, or db2xa_switch_static is exported as DLL data. This 7implies that a Windows NT application using this structure must reference 7it in one of three ways:
7#define db2xa_switch (*db2xa_switch)
7#define db2xa_switch_static (*db2xa_switch)
prior to using db2xa_switch or db2xa_switch_static.extern __declspec(dllimport) struct xa_switch_t db2xa_switch
7extern __declspec(dllimport) struct xa_switch_t db2xa_switch_static
DB2 UDB provides this API, which returns the address of 7the db2xa_switch or db2xa_switch_static structure. 7This function is prototyped as:
7struct xa_switch_t * SQL_API_FN db2xacic( )
7struct xa_switch_t * SQL_API_FN db2xacicst( )
With any of these methods, you must link your application with db2api.lib.
7 7The following code illustrates the different ways in which the db2xa_switch or db2xa_switch_static can be accessed via a C program 7on any DB2 UDB platform. Be sure to link your application with the appropriate 7library.
7#include <stdio.h> 7 #include <xa.h> 7 7 struct xa_switch_t * SQL_API_FN db2xacic( ); 7 7 #ifdef DECLSPEC_DEFN 7 extern __declspec(dllimport) struct xa_switch_t db2xa_switch; 7 #else 7 #define db2xa_switch (*db2xa_switch) 7 extern struct xa_switch_t db2xa_switch; 7 #endif
7
main( ) 7 { 7 struct xa_switch_t *foo; 7 printf ( "%s \n", db2xa_switch.name ); 7 foo = db2xacic(); 7 printf ( "%s \n", foo->name ); 7 return ; 7 }7 7 7
The following table contains a list of all the code page conversion table 7files that are associated with code pages 923 and 924. Each file is of the 7form XXXXYYYY.cnv or ibmZZZZZ.ucs, where XXXXX is the source code page number 7and YYYY is the target code page number. The file ibmZZZZZ.ucs supports 7conversion between code page ZZZZZ and Unicode.
7To activate a particular code page conversion table, rename or copy that 7conversion table file to its new name as shown in the second column.
7For example, to support the euro symbol when connecting a 8859-1/15 (Latin 71/9) client to a Windows 1252 database, you need to rename or copy the following 7code page conversion table files in the sqllib/conv/ directory:
7923 and 924 conversion table files in the sqllib/conv/ 7directory | 7New name | 7
---|---|
04370923.cnv | 704370819.cnv | 7
08500923.cnv | 708500819.cnv | 7
08600923.cnv | 708600819.cnv | 7
08630923.cnv | 708630819.cnv | 7
09230437.cnv | 708190437.cnv | 7
09230850.cnv | 708190850.cnv | 7
09230860.cnv | 708190860.cnv | 7
09231043.cnv | 708191043.cnv | 7
09231051.cnv | 708191051.cnv | 7
09231114.cnv | 708191114.cnv | 7
09231252.cnv | 708191252.cnv | 7
09231275.cnv | 708191275.cnv | 7
09241252.cnv | 710471252.cnv | 7
10430923.cnv | 710430819.cnv | 7
10510923.cnv | 710510819.cnv | 7
11140923.cnv | 711140819.cnv | 7
12520923.cnv | 712520819.cnv | 7
12750923.cnv | 712750819.cnv | 7
ibm00923.ucs | 7ibm00819.ucs | 7
The following tables list the conversion tables that have been enhanced 7to support the euro currency symbol. If you want to disable euro symbol support, 7download the conversion table file indicated in the column titled "Conversion 7table files".
7Database server CCSIDs/CPGIDs | 7Database client CCSIDs/CPGIDs | 7Conversion table files | 7
---|---|---|
864, 17248 | 71046, 9238 | 708641046.cnv, 10460864.cnv, IBM00864.ucs | 7
864, 17248 | 71256, 5352 | 708641256.cnv, 12560864.cnv, IBM00864.ucs | 7
864, 17248 | 71200, 1208, 13488, 17584 | 7IBM00864.ucs | 7
1046, 9238 | 7864, 17248 | 710460864.cnv, 08641046.cnv, IBM01046.ucs | 7
1046, 9238 | 71089 | 710461089.cnv, 10891046.cnv, IBM01046.ucs | 7
1046, 9238 | 71256, 5352 | 710461256.cnv, 12561046.cnv, IBM01046.ucs | 7
1046, 9238 | 71200, 1208, 13488, 17584 | 7IBM01046.ucs | 7
1089 | 71046, 9238 | 710891046.cnv, 10461089.cnv | 7
1256, 5352 | 7864, 17248 | 712560864.cnv, 08641256.cnv, IBM01256.ucs | 7
1256, 5352 | 71046, 9238 | 712561046.cnv, 10461256.cnv, IBM01256.ucs | 7
1256, 5352 | 71200, 1208, 13488, 17584 | 7IBM01256.ucs | 7
Database server CCSIDs/CPGIDs | 7Database client CCSIDs/CPGIDs | 7Conversion table files | 7
---|---|---|
921, 901 | 71257 | 709211257.cnv, 12570921.cnv, IBM00921.ucs | 7
921, 901 | 71200, 1208, 13488, 17584 | 7IBM00921.ucs | 7
1257, 5353 | 7921, 901 | 712570921.cnv, 09211257.cnv, IBM01257.ucs | 7
1257, 5353 | 7922, 902 | 712570922.cnv, 09221257.cnv, IBM01257.ucs | 7
1257, 5353 | 71200, 1208, 13488, 17584 | 7IBM01257.ucs | 7
Database server CCSIDs/CPGIDs | 7Database client CCSIDs/CPGIDs | 7Conversion table files | 7
---|---|---|
1131, 849 | 71251, 5347 | 711311251.cnv, 12511131.cnv | 7
1131, 849 | 71283 | 711311283.cnv | 7
Database server CCSIDs/CPGIDs | 7Database client CCSIDs/CPGIDs | 7Conversion table files | 7
---|---|---|
855, 872 | 7866, 808 | 708550866.cnv, 08660855.cnv | 7
855, 872 | 71251, 5347 | 708551251.cnv, 12510855.cnv | 7
866, 808 | 7855, 872 | 708660855.cnv, 08550866.cnv | 7
866, 808 | 71251, 5347 | 708661251.cnv, 12510866.cnv | 7
1251, 5347 | 7855, 872 | 712510855.cnv, 08551251.cnv, IBM01251.ucs | 7
1251, 5347 | 7866, 808 | 712510866.cnv, 08661251.cnv, IBM01251.ucs | 7
1251, 5347 | 71124 | 712511124.cnv, 11241251.cnv, IBM01251.ucs | 7
1251, 5347 | 71125, 848 | 712511125.cnv, 11251251.cnv, IBM01251.ucs | 7
1251, 5347 | 71131, 849 | 712511131.cnv, 11311251.cnv, IBM01251.ucs | 7
1251, 5347 | 71200, 1208, 13488, 17584 | 7IBM01251.ucs | 7
Database server CCSIDs/CPGIDs | 7Database client CCSIDs/CPGIDs | 7Conversion table files | 7
---|---|---|
922, 902 | 71257 | 709221257.cnv, 12570922.cnv, IBM00922.ucs | 7
922, 902 | 71200, 1208, 13488, 17584 | 7IBM00922.ucs | 7
Database server CCSIDs/CPGIDs | 7Database client CCSIDs/CPGIDs | 7Conversion table files | 7
---|---|---|
813, 4909 | 7869, 9061 | 708130869.cnv, 08690813.cnv, IBM00813.ucs | 7
813, 4909 | 71253, 5349 | 708131253.cnv, 12530813.cnv, IBM00813.ucs | 7
813, 4909 | 71200, 1208, 13488, 17584 | 7IBM00813.ucs | 7
869, 9061 | 7813, 4909 | 708690813.cnv, 08130869.cnv | 7
869, 9061 | 71253, 5349 | 708691253.cnv, 12530869.cnv | 7
1253, 5349 | 7813, 4909 | 712530813.cnv, 08131253.cnv, IBM01253.ucs | 7
1253, 5349 | 7869, 9061 | 712530869.cnv, 08691253.cnv, IBM01253.ucs | 7
1253, 5349 | 71200, 1208, 13488, 17584 | 7IBM01253.ucs | 7
Database server CCSIDs/CPGIDs | 7Database client CCSIDs/CPGIDs | 7Conversion table files | 7
---|---|---|
856, 9048 | 7862, 867 | 708560862.cnv, 08620856.cnv, IBM0856.ucs | 7
856, 9048 | 7916 | 708560916.cnv, 09160856.cnv, IBM0856.ucs | 7
856, 9048 | 71255, 5351 | 708561255.cnv, 12550856.cnv, IBM0856.ucs | 7
856, 9048 | 71200, 1208, 13488, 17584 | 7IBM0856.ucs | 7
862, 867 | 7856, 9048 | 708620856.cnv, 08560862.cnv, IBM00862.ucs | 7
862, 867 | 7916 | 708620916.cnv, 09160862.cnv, IBM00862.ucs | 7
862, 867 | 71255, 5351 | 708621255.cnv, 12550862.cnv, IBM00862.ucs | 7
862, 867 | 71200, 1208, 13488, 17584 | 7IBM00862.ucs | 7
916 | 7856, 9048 | 709160856.cnv, 08560916.cnv | 7
916 | 7862, 867 | 709160862.cnv, 08620916.cnv | 7
1255, 5351 | 7856, 9048 | 712550856.cnv, 08561255.cnv, IBM01255.ucs | 7
1255, 5351 | 7862, 867 | 712550862.cnv, 08621255.cnv, IBM01255.ucs | 7
1255, 5351 | 71200, 1208, 13488, 17584 | 7IBM01255.ucs | 7
Database server CCSIDs/CPGIDs | 7Database client CCSIDs/CPGIDs | 7Conversion table files | 7
---|---|---|
437 | 7850, 858 | 704370850.cnv, 08500437.cnv | 7
850, 858 | 7437 | 708500437.cnv, 04370850.cnv | 7
850, 858 | 7860 | 708500860.cnv, 08600850.cnv | 7
850, 858 | 71114, 5210 | 708501114.cnv, 11140850.cnv | 7
850, 858 | 71275 | 708501275.cnv, 12750850.cnv | 7
860 | 7850, 858 | 708600850.cnv, 08500860.cnv | 7
1275 | 7850, 858 | 712750850.cnv, 08501275.cnv | 7
Database server CCSIDs/CPGIDs | 7Database client CCSIDs/CPGIDs | 7Conversion table files | 7
---|---|---|
852, 9044 | 71250, 5346 | 708521250.cnv, 12500852.cnv | 7
1250, 5346 | 7852, 9044 | 712500852.cnv, 08521250.cnv, IBM01250.ucs | 7
1250, 5346 | 71200, 1208, 13488, 17584 | 7IBM01250.ucs | 7
Database server CCSIDs/CPGIDs | 7Database client CCSIDs/CPGIDs | 7Conversion table files | 7
---|---|---|
837, 935, 1388 | 71200, 1208, 13488, 17584 | 71388ucs2.cnv | 7
1386 | 71200, 1208, 13488, 17584 | 71386ucs2.cnv, ucs21386.cnv | 7
Database server CCSIDs/CPGIDs | 7Database client CCSIDs/CPGIDs | 7Conversion table files | 7
---|---|---|
937, 835, 1371 | 7950, 1370 | 709370950.cnv, 0937ucs2.cnv | 7
937, 835, 1371 | 71200, 1208, 13488, 17584 | 70937ucs2.cnv | 7
1114, 5210 | 7850, 858 | 711140850.cnv, 08501114.cnv | 7
Database server CCSIDs/CPGIDs | 7Database client CCSIDs/CPGIDs | 7Conversion table files | 7
---|---|---|
874, 1161 | 71200, 1208, 13488, 17584 | 7IBM00874.ucs | 7
Database server CCSIDs/CPGIDs | 7Database client CCSIDs/CPGIDs | 7Conversion table files | 7
---|---|---|
857, 9049 | 71254, 5350 | 708571254.cnv, 12540857.cnv | 7
1254, 5350 | 7857, 9049 | 712540857.cnv, 08571254.cnv, IBM01254.ucs | 7
1254, 5350 | 71200, 1208, 13488, 17584 | 7IBM01254.ucs | 7
Database server CCSIDs/CPGIDs | 7Database client CCSIDs/CPGIDs | 7Conversion table files | 7
---|---|---|
1124 | 71251, 5347 | 711241251.cnv, 12511124.cnv | 7
1125, 848 | 71251, 5347 | 711251251.cnv, 12511125.cnv | 7
Database server CCSIDs/CPGIDs | 7Database client CCSIDs/CPGIDs | 7Conversion table files | 7
---|---|---|
1200, 1208, 13488, 17584 | 7813, 4909 | 7IBM00813.ucs | 7
1200, 1208, 13488, 17584 | 7862, 867 | 7IBM00862.ucs | 7
1200, 1208, 13488, 17584 | 7864, 17248 | 7IBM00864.ucs | 7
1200, 1208, 13488, 17584 | 7874, 1161 | 7IBM00874.ucs | 7
1200, 1208, 13488, 17584 | 7921, 901 | 7IBM00921.ucs | 7
1200, 1208, 13488, 17584 | 7922, 902 | 7IBM00922.ucs | 7
1200, 1208, 13488, 17584 | 71046, 9238 | 7IBM01046.ucs | 7
1200, 1208, 13488, 17584 | 71250, 5346 | 7IBM01250.ucs | 7
1200, 1208, 13488, 17584 | 71251, 5347 | 7IBM01251.ucs | 7
1200, 1208, 13488, 17584 | 71253, 5349 | 7IBM01253.ucs | 7
1200, 1208, 13488, 17584 | 71254, 5350 | 7IBM01254.ucs | 7
1200, 1208, 13488, 17584 | 71255, 5351 | 7IBM01255.ucs | 7
1200, 1208, 13488, 17584 | 71256, 5352 | 7IBM01256.ucs | 7
1200, 1208, 13488, 17584 | 71386 | 7ucs21386.cnv, 1386ucs2.cnv | 7
Database server CCSIDs/CPGIDs | 7Database client CCSIDs/CPGIDs | 7Conversion table files | 7
---|---|---|
1258, 5354 | 71129, 1163 | 712581129.cnv | 7
In the sqlecrea API, a new field has been added to support Direct I/O.
7A new field, unsigned char fsCaching, has 7been added in the SQLB-TBSPQRY-DATA structure. This new field supports Direct 7I/O. Although the size of the reserved bit is documented as 32-bit, 7the correct size is 31-bit.
The precompile and bind options for SQL procedures can be customized by 7setting the instance-wide DB2 registry variable, DB2_SQLROUTINE_PREPOPTS with 7the command:
7db2set DB2_SQLROUTINE_PREPOPTS=<options>7
In addition to the options documented at Version 8.2, the REOPT option 7is allowed:
7BLOCKING {UNAMBIG | ALL | NO} 7DATETIME {DEF | USA | EUR | ISO | JIS | LOC} 7DEGREE {1 | degree-of-parallelism | ANY} 7DYNAMICRULES {BIND | RUN} 7EXPLAIN {NO | YES | ALL} 7EXPLSNAP {NO | YES | ALL} 7FEDERATED {NO | YES} 7INSERT {DEF | BUF} 7ISOLATION {CS | RR | UR | RS | NC} 7QUERYOPT optimization-level 7REOPT {ALWAYS | NONE | ONCE} 7VALIDATE {RUN | BIND}7 7 7
The compile option "-m64" is required for a 64-bit instance on DB2 UDB 7for Linux on PowerPC(R) for building DB2 C/C++ applications and routines.
7 7 7The compile and link command shown in the DB2 UDB Version 8.2 documentation 7for building stored procedures using Micro Focus COBOL on HP-UX is incorrect. 7 The compile command contained in the actual script sqllib/samples/cobol_mf/bldrtn is correct. The compile and link commands 7are now combined into one single command, using the -y option to 7specify that the desired output is a shared library.
7 7 7The minimum supported version of the Micro Focus COBOL compiler and run 7time on HP-UX is Micro Focus Server Express 2.2 - 7Service Pack 1 plus Fix Pack Fixpack22.02_14 7for HP-UX PA-RISC 11.x (32/64bit). This Fix Pack is available from the 7Micro Focus Support Line Web site at http://supportline.microfocus.com.
7 7 7In order to run Micro Focus COBOL external routines on Windows, it is necessary 7to ensure that the Micro Focus COBOL environment variables are permanently 7set as system variables.
7To set environment variables to system variables:
7Setting the environment variables in the User 7variables list, at a command prompt, or in a script is insufficient.
MapBigintCDefault controls the C type that is used when SQL_C_DEFAULT is 7specified for BIGINT columns and parameter markers. This keyword should be 7used primarily with Microsoft applications, such as Microsoft Access, which 7cannot handle 8-byte integers. Set MapBigintCDefault as follows:
7This keyword affects the behavior of CLI functions where SQL_C_DEFAULT 7might be specified as a C type, such as SQLBindParameter(), SQLBindCol(), 7and SQLGetData().
7 7 7This keyword controls the amount of information the CLI driver requests 7on a prepare or describe request. By default, when the server receives a 7describe request, it returns the information contained in level 2 of Table 16 for the result set columns. An application, however, might 7not need all of this information or might need additional information. Setting 7the DescribeOutputLevel keyword to a level that suits the needs of the client 7application might improve performance because the describe data transferred 7between the client and server is limited to the minimum amount that the application 7requires. If the DescribeOutputLevel setting is set too low, it might impact 7the functionality of the application (depending on the application's requirements). 7 The CLI functions to retrieve the describe information might not fail in 7this case, but the information returned might be incomplete. Supported settings 7for DescribeOutputLevel are:
7The following table lists the fields that form the describe information 7that the server returns when it receives a prepare or describe request. These 7fields are grouped into levels, and the DescribeOutputLevel CLI/ODBC configuration 7keyword controls which levels of describe information the CLI driver requests.
7 7Level 1 | 7Level 2 | 7Level 3 | 7
---|---|---|
7SQL_DESC_COUNT 7SQL_COLUMN_COUNT 7SQL_DESC_TYPE 7SQL_DESC_CONCISE_TYPE 7SQL_COLUMN_LENGTH 7SQL_DESC_OCTET_LENGTH 7SQL_DESC_LENGTH 7SQL_DESC_PRECISION 7SQL_COLUMN_PRECISION 7SQL_DESC_SCALE 7SQL_COLUMN_SCALE 7SQL_DESC_DISPLAY_SIZE 7SQL_DESC_NULLABLE 7SQL_COLUMN_NULLABLE 7SQL_DESC_UNSIGNED 7SQL_DESC_SEARCHABLE 7SQL_DESC_LITERAL_SUFFIX 7SQL_DESC_LITERAL_PREFIX 7SQL_DESC_CASE_SENSITIVE 7SQL_DESC_FIXED_PREC_SCALE |
7
7all fields of level 1 and: 7SQL_DESC_NAME 7SQL_DESC_LABEL 7SQL_COLUMN_NAME 7SQL_DESC_UNNAMED 7SQL_DESC_TYPE_NAME 7SQL_DESC_DISTINCT_TYPE 7SQL_DESC_REFERENCE_TYPE 7SQL_DESC_STRUCTURED_TYPE 7SQL_DESC_USER_TYPE 7SQL_DESC_LOCAL_TYPE_NAME 7SQL_DESC_USER_DEFINED_ 7 TYPE_CODE |
7
7all fields of levels 1 7and 2 and: 7SQL_DESC_BASE_COLUMN_NAME 7SQL_DESC_UPDATABLE 7SQL_DESC_AUTO_UNIQUE_VALUE 7SQL_DESC_SCHEMA_NAME 7SQL_DESC_CATALOG_NAME 7SQL_DESC_TABLE_NAME 7SQL_DESC_BASE_TABLE_NAME |
7
The db2secFreeToken function (Free memory held by token) is no longer part 7of the db2secGssapiServerAuthFunctions_1 user authentication plug-in API.
7 7 7If you are using your own customized security plug-in, you can use 7a user ID of up to 255 characters on a connect statement issued through the 7CLP or a dynamic SQL statement.
7 7 7For the db2secGetGroupsForUser, db2secValidatePassword, and db2secGetAuthIDs 7APIs, the input parameter, dbname, can be null 7and its corresponding length input parameter, dbnamelen, will be set to 0.
7 7 7.so is now accepted as a file name extension 7for user-written security plug-in libraries on all UNIX and Linux platforms.
7On AIX, security plug-in libraries can have an extension of .a or .so. If both versions of the plug-in 7library exist, the .a version is used.
7For HP-UX on PA-RISC, security plug-in libraries can 7have an extension of .sl or .so. If both versions of the plug-in library exist, the .sl version is used.
7On all other UNIX and Linux platforms, .so is 7the only supported file name extension for security plug-in libraries.
7 7 7On AIX, security plug-in libraries can have a file name extension 7of .a or .so. The 7mechanism used to load the plug-in library depends on which extension 7is used:
7For example, to build a 32-bit archive 7style plug-in library:
7 xlc_r -qmkshrobj -o shr.o MyPlugin.c -bE:MyPlugin.exp
7 ar rv MyPlugin.a shr.o
7xlc_r -qmkshrobj -o MyPlugin.so MyPlugin.c -bE:MyPlugin.exp7
On all platforms other than AIX, security plug-in libraries are always 7assumed to be dynamically loadable shared objects.
7 7 7All application terminations (normal and abnormal) implicitly 7roll back outstanding units of work, regardless of operating system.
7 7 7The automatic client reroute feature in DB2 UDB for Linux, UNIX and Windows 7allows client applications to recover from a loss of communication with the 7server so that they can continue to work with minimal interruption.
7Whenever a server locks up, each client that is connected to that server 7receives a communication error, which terminates the connection and results 7in an application error. When availability is important, you should have a 7redundant setup or failover support. Failover is the ability of a server to 7take over operations when another server fails. In either case, the DB2 Universal 7JDBC driver client attempts to reestablish the connection to a new server 7or to the original server, which might be running on a failover node. When 7the connection is reestablished, the application receives an SQL Exception 7that informs it of the transaction failure, but the application can continue 7with the next transaction.
7Specify the alternate server with the UPDATE ALTERNATE SERVER FOR DATABASE 7command.
After the database administrator specifies the alternate server location 7on a particular database at the server instance, the alternate server location 7is returned back to the client at connect time. If communication is lost, 7the DB2 Universal JDBC driver can reestablish the connection using the alternate 7server information that had been returned from the server.
7The activeServerListJNDIName DataSource property provides additional client 7reroute support at the client. The activeServerListJNDIName property has two 7functions:
7The activeServerListJNDIName property identifies a JNDI reference to a 7DB2ActiveServerList instance in a JNDI repository of alternate server information. 7After a successful connection to the primary server, the alternate server 7information that is provided by activeServerListJNDIName is overwritten by 7the information from the server.
7Alternate server information received from the DB2 LUW server is stored 7in transient memory of the driver. If the JNDI store is defined, alternate 7server information is also updated there. The DB2 Universal JDBC driver attempts 7to propagate the updated information to the JNDI store after failover.
7DB2ActiveServerList is a serializable Java bean with two properties: alternateServerName 7and alternatePortNumber. getXXX and setXXX methods are defined for each property. 7The Java bean is as follows:
7package com.ibm.db2.jcc; 7public class DB2ActiveServerList implements java.io.Serializable, 7 javax.naming.Referenceable 7{ 7 public String[] alternateServerName; 7 public synchronized void 7 setAlternateServerName(String[] alternateServer); 7 public String[] getAlternateServerName(); 7 public int[] alternatePortNumber; 7 public synchronized void 7 setAlternatePortNumber(int[] alternatePortNumberList); 7 public int[] getAlternatePortNumber(); 7}7
A newly established failover connection is configured with the original 7DataSource properties, except for the server name and port number. In addition, 7any DB2 UDB special registers that were modified during the original connection 7are reestablished in the failover connection.
7When a communication failure occurs, the DB2 Universal JDBC driver first 7attempts recovery to the original server. Reconnection to the original server 7is called failback. If failback fails, the driver attempts to connect to the 7alternate location (failover). After a failover or failback connection is 7reestablished, the driver throws a java.sql.SQLException to the application 7with SQLCODE -4498, which indicates to the application that a failover or 7failback occurred and the transaction failed. The application can then retry 7its transaction.
7Use JNDI to set up the alternate server, following these steps:
7java.naming.factory.initial=com.sun.jndi.fscontext.RefFSContextFactory
7java.naming.provider.url=file:/tmp
// Create a starting context for naming operations 7InitialContext registry = new InitialContext(); 7// Create a DB2ActiveServerList object 7DB2ActiveServerList address = new DB2ActiveServerList(); 7// Set the port number and server name for the alternate server 7int[] portNumber = {50000}; 7String[] serverName = {"mvs3.sj.ibm.com"}; 7address.setAlternateServerName(serverName); 7address.setAlternatePortNumber(portNumber); 7// Bind the DB2ActiveServerList instance to the JNDI registry 7registry.rebind("jdbc/alternate", address);
The following sample code assigns the 7logical name of the DB2ActiveServerList object to the activeServerListJNDIName 7property of the a DataSource instance named datasource:
7datasource.setActiveServerListJNDIName("jdbc/alternate");
The DB2 Universal JDBC driver configuration properties let you set property 7values that have driver-wide scope. Those settings apply across applications 7and DataSource instances. You can change the settings without having to change 7application source code or DataSource characteristics.
7Each DB2 Universal JDBC Driver configuration property setting is of the 7following form:
7property=value
7If the configuration property begins with db2.jcc.override, the configuration 7property is applicable to all connections and overrides any Connection or 7DataSource property with the same property name. If the configuration property 7begins with db2.jcc or db2.jcc.default, the configuration property value is 7a default. Connection or DataSource property settings override that value.
7To set configuration properties:
7 7For standalone Java applications, you can set 7the configuration properties as Java system properties by specifying -Dproperty=value for each configuration property when you execute the java command.
For standalone 7Java applications, you can set the configuration properties by specifying 7the -Ddb2.jcc.propertiesFile=path option when you execute the java command.
DB2JccConfiguration.properties 7can be a standalone file, or it can be included in a JAR file.
7If DB2JccConfiguration.properties 7is a standalone file, the path for DB2JccConfiguration.properties must be 7in the CLASSPATH concatenation.
7If DB2JccConfiguration.properties is 7in a JAR file, the JAR file must be in the CLASSPATH concatenation.
You can set the following DB2 Universal JDBC Driver configuration properties. 7All properties are optional.
7Specify a fully 7qualified file name for the db2.jcc.override.traceFile property value.
7The db2.jcc.override.traceFile property overrides the traceFile property for 7a Connection or DataSource object.
7For example, specifying the following 7setting for db2.jcc.override.traceFile enables tracing of the DB2 Universal 7JDBC Driver Java code to a file named /SYSTEM/tmp/jdbctrace:
7db2.jcc.override.traceFile=/SYSTEM/tmp/jdbctrace
You should 7set the trace properties under the direction of IBM Software Support.
7As a database administrator or application developer, you might want to 7protect the assemblies associated with your DB2 external routines from unwelcome 7tampering by restricting the actions of routines at run time. DB2 .NET CLR 7routines support the specification of an execution control mode that identifies 7what types of actions a routine is allowed to perform at run time. At run 7time, DB2 UDB can detect if the routine attempts to perform actions beyond 7the scope of its specified execution control mode, which can be helpful when 7determining whether an assembly has been compromised.
7To set the execution control mode of a CLR routine, specify the optional 7EXECUTION CONTROL clause in the CREATE statement for the routine. Valid modes 7are:
7To modify the execution control mode in an existing CLR routine, execute 7the ALTER PROCEDURE or ALTER FUNCTION statement.
7If the EXECUTION CONTROL clause is not specified for a CLR routine, by 7default the CLR routine runs using the most restrictive execution control 7mode, SAFE. Routines that are created with this execution control mode can 7only access resources that are controlled by the database manager. Less restrictive 7execution control modes allow a routine to access files on the local file 7system (FILEREAD or FILEWRITE) or on the network. The execution control mode 7UNSAFE specifies that no restrictions are to be placed on the behavior of 7the routine. Routines defined with UNSAFE execution control mode can execute 7binary code.
7These control modes represent a hierarchy of allowable actions, and a higher-level 7mode includes the actions that are allowed below it in the hierarchy. For 7example, execution control mode NETWORK allows a routine to access files on 7the network, files on the local file system, and resources that are controlled 7by the database manager. Use the most restrictive execution control mode 7possible and avoid using the UNSAFE mode.
7If DB2 UDB detects at run time that a CLR routine is attempting an action 7outside of the scope of its execution control mode, DB2 UDB returns an error 7(SQLSTATE 38501).
7The EXECUTION CONTROL clause can only be specified for LANGUAGE CLR routines. 7The scope of applicability of the EXECUTION CONTROL clause is limited to the 7.NET CLR routine itself, and does not extend to any other routines that it 7might call.
7 7 7The DECIMAL data type in DB2 UDB is represented with a precision of 31 7digits and a scale of 28 digits. The .NET CLR System.Decimal data type is 7limited to a precision of 29 digits and a scale of 28 digits. Therefore, DB2 7UDB external CLR routines must not assign a value greater than (2^96)-1, 7the highest value that can be represented using a 29 digit precision and a 728 digit scale, to a System.Decimal data type variable. DB2 UDB raises a run 7time error (SQLSTATE 22003, SQLCODE -413) if such an assignment 7occurs.
7When a routine CREATE statement is executed, if a DECIMAL data type parameter 7is defined with a scale greater than 28, DB2 UDB raises an error (SQLSTATE 742611, SQLCODE -604).
Do not issue the db2 connect to database command 6prior to issuing the db2inidb database as 6mirror command.
6Attempting to connect to a split mirror database prior to initializing 6it erases the log files needed for roll forward recovery.
6The connect sets your database back to the state it was in when you suspended 6the database. If the database is marked as consistent at the time of the suspend, 6DB2 UDB concludes there is no need for crash recovery and empties the logs 6for future use. If this situation occurs, attempting to rollforward causes 6a SQL4970 error.
7 7 7Starting with version 8.2, when you update a DB2 UDB instance with the db2iupdt command, you must first stop any DB2 processes 7running against that instance.
7 7 7Additional parameters for the db2pd command 7include:
7The db2sqljcustomize command has a new parameter.
7The sqlj command has a new parameter.
7The USER parameter of the ATTACH command specifies the authentication identifier. 7When attaching to a DB2 UDB instance on a Windows operating system, the user 7name can be specified in a format compatible with Microsoft Windows NT Security 7Account Manager (SAM). The qualifier must be a NetBIOS style name, which has 7a maximum length of 15 characters. For example, domainname\username.
7 7 7In the Examples section of the RECOVER DATABASE Command for version 8.2 7documentation, timestamps are incorrectly formatted as yyyy:mm:dd:hh:mm:ss.
7The correct format is yyyy-mm-dd-hh.mm.ss
7 7 7The UPDATE HISTORY FILE command updates the location, device type, comment, 7or status in a history file entry.
77>>-UPDATE HISTORY--+-FOR--object-part-+--WITH-------------------> 7 '-EID--eid---------' 7 7>--+-LOCATION--new-location--DEVICE TYPE--new-device-type-+---->< 7 +-COMMENT--new-comment---------------------------------+ 7 '-STATUS--new-status-----------------------------------' 7
This command updates the system catalogs in a database to support the current 7level in the following ways:
7sysadm
Database. This command automatically establishes a connection to the specified 7database.
77>>-db2updv8---d--database-name--+--------------------------+----> 7 '--u--userid---p--password-' 7 7>--+----+------------------------------------------------------>< 7 '--h-' 7
After installing the current level (a FixPak or a new version), update 7the system catalog in the sample database by issuing the following command: 7
7db2updv8 -d sample
DB2 UDB supports cross-platform backup and restore operations. You can 7restore databases created on a DB2 UDB Version 8 32-bit Windows platform to 7a DB2 UDB Version 8 64-bit Windows platform, or the reverse. You can restore 7databases created on a DB2 UDB Version 8 32-bit Linux x86 platform to a DB2 7UDB Version 8 64-bit Linux x86-64 or IA64 platform, or the reverse. You can 7restore databases created on DB2 UDB Version 8 AIX, HP-UX, Linux PPC, Linux 7zSeries, or the Solaris Operating Environment platforms, in 32-bit or 64-bit, 7to DB2 UDB Version 8 AIX, HP-UX, Linux PPC, Linux zSeries, or Solaris Operating 7Environment platforms (32-bit or 64-bit).
7 7 7The maximum block size limit for 3480 and 3490 tape devices on Linux is 761 440 bytes
7 7 7Device | 7Attachment | 7Block Size Limit | 7DB2 buffer size limit (in 4-KB pages) | 7
---|---|---|---|
3480 | 7s370 | 761 440 | 715 | 7
3490 | 7s370 | 761 440 | 715 | 7
When calling the BACKUP DATABASE or RESTORE DATABASE commands, you can 7specify that you want to use the Tivoli Storage Manager (TSM) product to 7manage database or table space backup or restore operation. The minimum required 7level of TSM client API is Version 4.2.0, except on the following:
7When specifying values for the high availability disaster recovery (HADR) 7local host and local service parameters (HADR_LOCAL_SVC and HADR_REMOTE_SVC) 7while preparing an update database configuration command 7, the values must be ports that are not in use for any other service. If the 7parameters are being configured using the UNIX or Linux command line, the 7values should be also set in the /etc/services file.
7 7 7If you create a table space on the primary database and log replay fails 7on the standby database because the containers are not available, the primary 7database does not receive an error message stating that the log replay failed.
7To check for log replay errors, you must monitor the db2diag.log and the 7administration log on the standby database when you are creating new table 7spaces.
7If a takeover operation occurs, the new table space that you created is 7not available on the new primary database. To recover from this situation, 7restore the table space on the new primary database from a backup image.
7In the following example, table space MY_TABLESPACE is restored on database 7MY_DATABASE before it is used as the new primary database:
7Version 8.2 documentation states:
7BLOBs and CLOBs are not replicated; however, the space for them will be 7allocated on the standby database.
7The statement should read as follows:
7Non-logged BLOBs and CLOBs are not replicated; however, the space for them 7will be allocated on the standby database.
7 7 7High availability disaster recovery (HADR) does not support the use of 7raw I/O (direct disk access) for database log files. If HADR is started with 7the START HADR command, or if the database is restarted with HADR configured, 7and raw logs are detected, the associated command will fail with SQL1768N 7reason code "9".
In Version 8, the control database, TBC_MD that is used in the tutorial, 6does not need to be a system ODBC data source. However, the target database 6or database source DWCTBC must be a system ODBC data source.
The procedure for opening the Define Warehouse Source notebook for the 6Tutorial Relational Source has changed.
6To open the Define Warehouse Source notebook for the Tutorial Relational 6Source:
6The Define Warehouse Source notebook opens.
The procedure for opening the Define Warehouse Target notebook has changed.
6To open the Define Warehouse Target notebook:
6The Define Warehouse Target notebook opens.
The log file holds records until a designated count limit is reached. The 6default count limit is 1000 records. Typically, each job that you run creates 612 to 15 log records. Set the purge limit to a number that meets your needs 6by updating the Purge log when total records equal field on the Server tab of the Warehouse Properties page.
4 4 4The DB2 UDB Load step now allows a view or a table to be used as the source 4to the step, resulting in a LOAD FROM CURSOR.
4In order to map columns in the wizard for CURSOR load, the Map columns based on column positions found in the input file radio button 4must be selected.
7 7 7Starting with version 8.2 of the Data Warehouse Center, the warehouse control 7database must be a Unicode database. If you have a Unicode warehouse control 7database from a version of the Data Warehouse Center that is before Version 78.2, you still must create a new Unicode control database by using the Warehouse 7Control Database Management tool.
7When you migrate a warehouse control database from a version of the Data 7Warehouse Center that is before Version 8.2, the Data Warehouse Center Control 7Database Management tool runs the db2move command 7to move the data to a new Unicode control database. During this process, 7windows appear that show the progress of the db2move command. This migration path only occurs once.
7The Data Warehouse Center does not support Unicode on Sybase servers.
7 7 7In the details view of the main Data Warehouse Center window, the format 7of the date in the Modified column has been 7updated. The date in the Modified column is 7displayed in the format MM/DD/YYYY and includes the time. For example, 06/17/2003 2:47:15 PM. This change in the date format ensures that sorting 7objects on the Modified column functions properly. 7This update applies to most lists of Data Warehouse Center objects that are 7shown in the Navigator and Details views, such as:
7To perform a statistical transformation of your data, define the statistical 7transformer that you want to use.
7To define statistical transformers:
7Each transformer has specific rules for how it must be linked to a warehouse 7source and warehouse target. See the documentation for each transformer for 7more information.
To use an iSeries warehouse agent for DB2 Warehouse Manager on V5R2 and 7V5R3 systems, the following PTF is required:
7PTF SI13558
This database 7PTF enables the CLI on iSeries to handle Unicode data.
There is an additional keyword for the DB2Connection.ConnectionString property:
7A new security scenario has been added for APPC connections:
7The following DB2 Connect Enterprise Edition topics have diagrams that 7are incorrect:
7The following table outlines corrections for diagrams in the "Accessing 7host or iSeries DB2 data using DB2 Connect Enterprise Edition" topic.
7 7Location within the topic | 7Correction | 7
---|---|
Legend for all four diagrams | 7
7
|
7
First diagram (Figure 1: DB2 Connect Enterprise Edition) | 7All references to "APPC" and "SNA Communications Support" 7are incorrect. SNA/APPC is not supported as an inbound protocol for the DB2 7Runtime Client by DB2 Linux, Unix, and Windows servers, including DB2 Connect 7Enterprise Edition. | 7
The following table outlines corrections for diagrams in the "Accessing 7DB2 data from the Web using Java" topic.
7 7Location within the topic | 7Correction | 7
---|---|
Legend | 7
7
|
7
In Version 8.2, support was added to allow users to connect to a DB2 UDB 7database from within the Development Center using the DB2 Universal Type 72 and Type 4 drivers. However, if you attempt to use one of these drivers 7to connect to an iSeries server, or to a DB2 UDB server that is Version 8.1 7or earlier, you will see the following error message:
7Connection to <database> failed. 7IBM DB2 Universal driver (JCC) not found.
Refer to the topic titled 7"JDBC drivers" in the DB2 Information Center for additional information on 7which drivers to use in order to avoid this error.
You can use the Control Center's details pane to view information about 7your databases. Selecting a database in the object tree or contents pane displays 7a summary of its state. In certain situations database information might be 7unavailable. Some reasons for this unavailability are described in the following 7table.
7 7Database status element | 7Possible reasons for unavailable status | 7
---|---|
Last backup | 7
7
|
7
Size | 7
7
|
7
Capacity | 7
7
|
7
Health | 7
7
|
7
Maintenance | 7
7
|
7
A Generate button has been added to the 7Output options dialog, which is launched from the Create Event Monitor window. 7Clicking the Generate button generates the default write to table output option. This output is equivalent to the syntax 7generated by the db2evtbl command.
7The generated option shows the user which tables and data elements will 7be included when the event monitor is created. Users can modify the command 7to suit their needs.
7The generated syntax is based on the event monitor name and event types 7specified in the Create Event Monitor window. Specify the event monitor name 7and event types before generating the output option syntax.
7If the event monitor name or event types change after the generation of 7the output option, a message displays to remind the user to regenerate the 7output option before creating the event monitor. If the output option is not 7regenerated, event tables will be generated based on the event monitor name 7that was previously specified.
The ICCConfig.jacl and ICCConfig.properties sample scripts are provided with the Information 7Catalog Center for the Web with the DB2 Embedded Application Server. You can 7use these sample scripts to configure the Information Catalog Center for the 7Web with WebSphere Application Server 5. These scripts are located in the sqllib\samples\icweb directory.
7 7 7When configuring the Information Catalog Center for the Web with the DB2 7Embedded Application Server, if your metadata contains URLs that access files 7on the server, you must map the URLs to the correct location by using aliases 7in the Web server configuration. You must also map the help and copyright 7links. If you use the DB2 Embedded Application Server, a Web server must be 7configured correctly and running for these links to work even though you don't 7need to plug in to a Web server.
The application server for DB2 no longer supports remote administration 7or stored procedures.
7The updated topics are as follows:
7 7Enabling the database does the following:
7To enable the application server for DB2 , perform the following:
7 . /db2instance_path/sqllib/db2profile
where db2instance_path is where the DB2 instance was created.AppServer_install_path/bin/enable.sh 7 -db db_alias 7 -user db_user 7 -password db_password 7 -db2path path_to_sqllib 7 -instance instance_name 7 -easpath path_to_eas 7 -fencedid fenced_userid
AppServer_install_path\bin\enable 7 -db db_alias 7 -user db_user 7 -password db_password 7 -db2path path_to_sqllib 7 -instance instance_name 7 -easpath path_to_eas
Once the application server for DB2 is enabled, the application server 7is started automatically.
The application server should be started using the fenced user ID for systems 7creating web services in a .NET environment or running XML Metadata Registry 7(XMR) only.
7 7This section is removed. The application server for DB2 no longer supports 7remote administration.
7 7The application server should be stopped using the fenced user ID for systems 7creating web services in a .NET environment or running XML Metadata Registry 7(XMR) only.
7 7This section is removed. The application server for DB2 no longer supports 7remote administration.
7 7This section is removed. The application server for DB2 no longer supports 7remote administration.
7 7 7The enabled database of a DB2 Embedded Application Server must be located 7in a 32-bit instance Any databases accessed from the DB2 Embedded Application 7Server can be located in 32-bit or 64-bit instances.
7 7 7Application servers using JDK 1.4 no longer require customization of the 7CLASSPATH variable during DB2 Web Tools deployment. All dependencies, including 7those for XML parser and transformer, are now deployed with the web module 7and are expected to be loaded from the WEB-INF\lib directory according to the J2EE specification. This change affects two 7information topics:
7The updated topics are as follows:
7 7This task describes how to deploy and configure DB2 Web Tools (including 7the Web Command Center and the Web Health Center) on BEA WebLogic 7.0. These 7tools run as Web applications on a Web server to provide access to DB2 servers 7through Web browsers.
7Before you install DB2 Web Tools on WebSphere, ensure that you have:
7The following restrictions apply to the DB2 Web Tools deployment:
7To install DB2 Web Tools on WebLogic application servers:
7http://server_name:app_server_port_number/db2waFor example, http://server_name:7001/db2wa.
This task describes how to deploy and configure DB2 Web Tools (including 7the Web Command Center and the Web Health Center) on other application servers 7such as Tomcat 4.0 and Macromedia JRun 4.0. These tools run as Web applications 7on a Web server to provide access to DB2 servers through Web browsers.
7Before you install DB2 Web Tools, ensure that you have:
7The following restrictions apply to the DB2 Web Tools deployment:
7The following are the procedures for installing DB2 Web Tools using application 7servers such as Tomcat 4.0 or Macromedia JRun 4.0:
7Creating a new application server is recommended, but not mandatory. For 7testing purposes, the default server can be used, and only the configuration 7of the JVM classpath and the deployment is required.
Direct I/O is now supported on both file systems and block devices for 7distributions of Linux with a 2.6 kernel. Direct I/O on block devices is an 7alternative way to specify device containers for direct disk access or for 7raw I/O. The performance of Direct I/O is equivalent to the raw character 7device method. DB2 UDB enables Direct I/O while opening the table space when 7the CREATE TABLESPACE statement specifies a block device name for the container 7path. Previously, the same performance was achieved using the raw I/O method, 7which required binding the block device to a character device using the raw utility.
7 7 7Direct I/O (new method) | 7Raw I/O (old method) | 7
---|---|
7CREATE TABLESPACE dms1 7MANAGED BY DATABASE 7USING (DEVICE '/dev/sda5' 11170736) |
7
7CREATE TABLESPACE dms1 7MANAGED BY DATABASE 7USING (DEVICE '/dev/raw/raw1' 11170736) |
7
Although the raw I/O method is still supported by DB2 UDB, it has been 7deprecated and support for it might be removed from future kernels.
7If you want to exploit direct disk access, create your DMS device containers 7using Direct I/O to avoid future migration issues.
7 7 7The DB2 Information Center daemon is responsible for the control of the 7DB2 documentation server. The daemon, which is part of the DB2 Information 7Center installation, is composed of two files:
7These files are installed in the following locations:
7/var/db2/v81/db2ic.conf
7/var/opt/db2/v81/db2ic.conf
7/var/db2/v81/db2ic.conf
7/var/db2/v81/db2ic.conf
7The only time you should need to start or stop the daemon manually is when 7you want to change the configuration variables for the daemon. Normally, the 7daemon is started at system startup, according to the run levels created during 7the installation of the DB2 Information Center.
7To stop and start the Information Center daemon:
7INIT_DIR/db2icd stop
where INIT_DIR is the installation directory of the db2icd file
7listed previously.INIT_DIR/db2icd start
where INIT_DIR is
7the installation directory of the db2icd file listed previously.When the daemon starts, it uses the new environment variables.
7There is also an option to shut down and restart the daemon immediately. 7At a command line, enter:
7INIT_DIR/db2icd restart
where INIT_DIR is the installation directory 7of the db2icd file listed previously.
7You can check the status of the daemon at any time. At a command line, 7enter:
7INIT_DIR/db2icd status
where INIT_DIR is the installation directory of the db2icd 7file listed previously. The daemon returns the current status, and displays 7the ID of the daemon process or processes if it is active.
The following error code is for Windows only and is not applicable to UNIX 7and Linux operating systems.
7Asynchronous I/O (AIO) support is now available on Linux (2.6 and some 72.4 kernels) for raw devices and O_DIRECT file systems. AIO improves page 7cleaner performance. You can enable or disable AIO on Linux by issuing the db2set command.
7To use AIO, users must install libaio-0.3.98 or later and have a kernel 7that supports AIO. Users must also run the db2set DB2LINUXAIO=true command and restart DB2 UDB.
The description for message ADM12504E incorrectly implies that the instance 7name on the primary database should match the instance name on the standby 7database.
7It is not a HADR requirement for the instance name on the primary to match 7the instance name on the standby.
The Command Line Processor backend process request queue or input queue 7was not created within the timeout period.
7On UNIX platforms, ensure that the file system has enough file blocks 7and inodes.
7Invalid package name <"pkg-name">
5 5The target name "<name>" is specified more than once for assignment 7in the same SQL statement.
7Note that this error may occur when updating or inserting into 7a view where more than one column of the view is based on the same column 7of a base table.
7The statement cannot be processed.
7sqlcode : -121
7Function not supported (Reason code = "<reason-code>")
7 7Or change the system to one that is on a single database partition, 7where SMP is not enabled, and that is not federated.
7The number of result sets is greater than the number of locators.
7 7The SQL 7statement is successful.
7sqlcode : +494
7sqlstate : 01614
7 7 7Unable to start HADR. Reason code = "<reason-code>"
7 7A default table space could not be found with a page size of at least 7"<page size>".
7 7sqlcode: +1790
7sqlstate: 01670
7 7 7The specified server definition, schema, or nickname object-name does not 7exist.
7 7sqlcode: -1791
7sqlstate: 42704
7 7 7The Runstats command string for the statistics profile has exceeded the 7maximum size. The Runstats command string will be truncated to the maximum 7size and stored in the catalog table SYSIBM.SYSTABLE.
7 7The utility continues processing.
7The buffer size parameter specified is not valid. The buffer size must 7be specified as 0 or be between 8 and 250000 inclusive. For multiple buffers, 7the total buffer size must not exceed 250000.
7 7 7The SQL statement references routine "<routine-name>" (specific name 7"<specific-name>") which cannot be run on partition "<partition-number>".
7 7sqlcode: -20290
7sqlstate: 560CA
7 7 7An invalid input argument was specified for the reorgchk stored procedure.
7 7The length of a special register default column is smaller than the target 7column length. Load may truncate the values corresponding to this column 7(<column-num>).
7 7When running the historical data generator for Query Patroller, if the 5Explain tables do not already exist, the generator will create them for you. 5However, it is strongly recommended that you create the Explain tables before 5running the historical data generator. When you create the Explain tables 5be sure you create them on the same partition. Actively creating the Explain 5tables on the same partition improves the performance of the Explain facility. 5This improvement increases the performance of the historical data generator.
5 5 5If the Explain Run column of the Query Activity 5over Time (Historical Analysis) report shows a status of Ran unsuccessfully for a query, historical data has not been generated 5for that query. Therefore, the query will not appear in any historical analysis 5reports or graphs. As documented in version 8, to determine why the query 5was unsuccessful, you can examine the qpuser.log file.
5In addition to examining the qpuser.log file, you should examine the qpdiag.log 5file.
6 6 6If you run the historical data generator and shut it down in an abnormal 6way, you will receive an error the next time you attempt to run the historical 6data generator. Examples of abnormal shutdown include:
6When the historical data generator shuts down abnormally, you must issue 6the following command before attempting to rerun the historical data generator:
6 qp -d database generate historical_data stop
where database identifies the database that the command 6is being run against.
6 6 6Certain query class operations no longer require Query Patroller to be 6stopped and restarted to take effect.
6In the table that follows, an active query is a query whose status is Running 6or Queued.
6 66 6 6Nested queries cannot be queued. Instead, a nested query will run immediately 6if it exceeds a threshold that would normally cause it to be queued.
6 6 6Contrary to previous documentation, the queries with the following statements 6can be queued:
6When using the Terminal Services Client at resolution 640x480 to connect 7to a remote desktop that is running the Query Patroller Center, the Submission 7Preferences window might appear blank. For the Submission Preferences window 7to display properly, you must use a resolution higher than 640x480.
7 7 7Starting in version 8.2, DB2 UDB supports user groups beyond operating 7system groups. Therefore, there is a slight change in the Submitter Profile to Use drop-down list in the Query Submission Preferences 7window of the Query Patroller Center.
7If you are logged in, but do not have either DBADM authority or Edit privilege 7for Query Patroller user administration, you can only add or update a submission 7preference for yourself. In this case, the Submitter 7Profile to Use drop-down list contains existing submitter profiles of 7the DB2 UDB groups that you belong to, instead of just the operating system 7groups that you belong to.
7If you are logged in, and have either DBADM authority or Edit privilege 7for Query Patroller user administration, you can add or update submission 7preferences for other users. In this case, the Submitter Profile to Use drop-down list contains all existing group submitter 7profiles.
7 7 7When working with schedules in the Query Patroller Center, you can use 7the Schedule window to save schedules to a file and import them later. If 7you have a schedule that you saved using FixPak 6 or earlier, you cannot import 7the schedule using version 8.2 or later. This limitation is due to the change 7in serialization between JDK levels introduced with DB2 UDB version 8.2.
7 7 7To run the RUN IN BACKGROUND QUERY command, you must be the submitter who 7submitted the query originally.
7 7 7As of Query Patroller Version 8.1 FixPak 5, Query Patroller stopped creating 7result tables in the schema that matched the authorization ID of the submitter 7of the query. Instead, Query Patroller started creating result tables in a 7common DB2QPRT schema. To allow result tables to be referenced using the schema 7of the submitter, Query Patroller Version 8.2 introduces an option to automatically 7create an alias for each new result table that Query Patroller creates. The 7result table is created in the DB2QPRT schema and the alias is created in 7a schema that matches the submitter's authorization ID.
7To turn this option on or off, issue the UPDATE QP_SYSTEM command with 7the CREATE_RESULT_TABLE_ALIASES option:
7 77 7 77>>-UPDATE QP_SYSTEM USING---------------------------------------> 7 7>--+-DEFAULT------------------------------+-------------------->< 7 '-CREATE_RESULT_TABLE_ALIASES--+-'Y'-+-' 7 '-'N'-' 7
Aliases created with CREATE_RESULT_TABLE_ALIASES option are automatically 7dropped when a result table is dropped. However, there are two situations 7in which a result table may be dropped without the corresponding alias being 7dropped.
7To clean up aliases that have no corresponding result tables, a new command, 7REMOVE RESULT_TABLE_ALIASES, has been created. This command is automatically 7executed whenever result tables are purged as part of the Query Patroller 7scheduled result table purging process. The REMOVE RESULT_TABLE_ALIASES command 7obtains the list of aliases to purge using the following query:
77with a as (select tabschema, tabname from syscat.tables 7 where type = 'A' and tabname like 'QUERY%_RESULTS'), 7 t as (select tabname from syscat.tables 7 where type = 'T' and tabname like 'QUERY%_RESULTS') 7 select all tabschema, tabname from a 7 where not exists (select * from t where t.tabname=a.tabname)7
You must have DBADM authority.
This command removes all aliases that exist after having their corresponding 7result tables dropped. The aliases were originally created by Query Patroller 7for result tables.
77>>-REMOVE RESULT_TABLE_ALIASES--------------------------------->< 7
7
7 7The following prerequisites section is documented in the 8.2 version of 7the topic that explains how to verify that your databases are ready for migration:
7This prerequisite is in fact a post-migration step performed at the end 7of the procedure.
7 7 7The authoritative information for DB2 UDB configurations that have been 7certified for Common Criteria can be found at http://niap.nist.gov/cc-scheme
The runGseDemo sample program can be used to become familiar with application 7programming for DB2 Spatial Extender. For a description of the steps that 7the sample program takes to create a spatially-enabled database and perform 7spatial analysis on data in that database, refer to the topic titled "The 7DB2 Spatial Extender sample program". This topic is in the Information Center 7and the Spatial Extender and Geodetic Extender User's 7Guide and Reference.
7DB2 Spatial Extender provides another sample program, seBankDemoRunBankDemo, 7that demonstrates how to add spatial capabilities to an existing information 7system.
7For more information about both sample programs, see the README files in 7the following directories:
7 7~\sqllib\samples\spatial
7~\sqllib\samples\spatial\bank
7~/sqllib/spatial
7~/sqllib/spatial/bank
7The size of some VARCHAR and CLOB columns in snapshot UDFs have changed 7to match the maximum database object name standards.
7 7 7UDF | 7||
---|---|---|
Column name | 7Existing column definition | 7Updated column definition | 7
SYSFUN.SQLCACHE_SNAPSHOT | 7||
DB_NAME | 7VARCHAR(8) | 7VARCHAR(128) | 7
STMT_TEXT | 7CLOB(64K) | 7CLOB(16M) | 7
SNAPSHOT_APPL_INFO | 7||
APPL_NAME | 7VARCHAR(255) | 7VARCHAR(256) | 7
APPL_ID | 7VARCHAR(32) | 7VARCHAR(128) | 7
AUTH_ID | 7VARCHAR(30) | 7VARCHAR(128) | 7
CLIENT_NNAME | 7VARCHAR(20) | 7VARCHAR(128) | 7
CLIENT_PRDID | 7VARCHAR(20) | 7VARCHAR(128) | 7
INPUT_DB_ALIAS | 7VARCHAR(20) | 7VARCHAR(128) | 7
CLIENT_DB_ALIAS | 7VARCHAR(20) | 7VARCHAR(128) | 7
DB_NAME | 7VARCHAR(8) | 7VARCHAR(128) | 7
DB_PATH | 7VARCHAR(256) | 7VARCHAR(1024) | 7
EXECUTION_ID | 7VARCHAR(20) | 7VARCHAR(128) | 7
CORR_TOKEN | 7VARCHAR(32) | 7VARCHAR(128) | 7
TPMON_CLIENT_USERID | 7VARCHAR(20) | 7VARCHAR(256) | 7
TPMON_CLIENT_WKSTN | 7VARCHAR(20) | 7VARCHAR(256) | 7
TPMON_CLIENT_APP | 7VARCHAR(20) | 7VARCHAR(256) | 7
TPMON_ACC_STR | 7VARCHAR(100) | 7VARCHAR(200) | 7
SNAPSHOT_STATEMENT | 7||
CURSOR_NAME | 7VARCHAR(31) | 7VARCHAR(128) | 7
CREATOR | 7VARCHAR(32) | 7VARCHAR(128) | 7
PACKAGE_NAME | 7VARCHAR(20) | 7VARCHAR(128) | 7
STMT_TEXT | 7CLOB(64K) | 7CLOB(16M) | 7
SNAPSHOT_LOCKWAIT | 7||
TABLE_NAME | 7VARCHAR(35) | 7VARCHAR(128) | 7
TABLE_SCHEMA | 7VARCHAR(32) | 7VARCHAR(128) | 7
APPL_ID_HOLDING_LK | 7VARCHAR(32) | 7VARCHAR(128) | 7
SNAPSHOT_DATABASE | 7||
INPUT_DB_ALIAS | 7VARCHAR(8) | 7VARCHAR(128) | 7
DB_NAME | 7VARCHAR(8) | 7VARCHAR(128) | 7
DB_PATH | 7VARCHAR(256) | 7VARCHAR(1024) | 7
SNAPSHOT_BP | 7||
BP_NAME | 7VARCHAR(20) | 7VARCHAR(128) | 7
DB_NAME | 7VARCHAR(8) | 7VARCHAR(128) | 7
INPUT_DB_ALIAS | 7VARCHAR(8) | 7VARCHAR(128) | 7
DB_PATH | 7VARCHAR(256) | 7VARCHAR(1024) | 7
SNAPSHOT_LOCK | 7||
TABLE_NAME | 7VARCHAR(35) | 7VARCHAR(128) | 7
TABLE_SCHEMA | 7VARCHAR(32) | 7VARCHAR(128) | 7
SNAPSHOT_TABLE | 7||
TABLE_NAME | 7VARCHAR(35) | 7VARCHAR(128) | 7
TABLE_SCHEMA | 7VARCHAR(32) | 7VARCHAR(128) | 7
SNAPSHOT_TBREORG | 7||
TABLE_NAME | 7VARCHAR(35) | 7VARCHAR(128) | 7
TABLE_SCHEMA | 7VARCHAR(32) | 7VARCHAR(128) | 7
SNAPSHOT_SUBSECT | 7||
STMT_TEXT | 7CLOB(64K) | 7CLOB(16M) | 7
SNAPSHOT_DYN_SQL | 7||
STMT_TEXT | 7CLOB(64K) | 7CLOB(16M) | 7
HEALTH_DBM_INFO | 7||
SERVER_INSTANCE_NAME | 7VARCHAR(8) | 7VARCHAR(128) | 7
HEALTH_DBM_HI | 7||
SERVER_INSTANCE_NAME | 7VARCHAR(8) | 7VARCHAR(128) | 7
HEALTH_DBM_HI_HIS | 7||
SERVER_INSTANCE_NAME | 7VARCHAR(8) | 7VARCHAR(128) | 7
HEALTH_DB_INFO | 7||
DB_NAME | 7VARCHAR(8) | 7VARCHAR(128) | 7
INPUT_DB_ALIAS | 7VARCHAR(8) | 7VARCHAR(128) | 7
DB_PATH | 7VARCHAR(256) | 7VARCHAR(1024) | 7
HEALTH_DB_HI | 7||
DB_NAME | 7VARCHAR(8) | 7VARCHAR(128) | 7
HEALTH_DB_HI_HIS | 7||
DB_NAME | 7VARCHAR(8) | 7VARCHAR(128) | 7
HEALTH_DB_HIC | 7||
DB_NAME | 7VARCHAR(8) | 7VARCHAR(128) | 7
HEALTH_DB_HIC_HIS | 7||
DB_NAME | 7VARCHAR(8) | 7VARCHAR(128) | 7
When connecting to Windows Server explicitly, the TO authorization-name or the USER host-variable can be specified using the Microsoft Windows NT Security Account Manager 7(SAM)-compatible name. The qualifier must be a NetBIOS style name, which has 7a maximum length of 15 characters. For example, 'Domain\User'.
7 7 7The Explain facility uses the following IDs as the schema to use in qualifying 7the explain tables to populate:
7The schema can be associated with a set of explain tables, or aliases 7that point to a set of explain tables under a different schema.
7If no explain tables are found under the schema, the Explain facility checks 7for explain tables under the SYSTOOLS schema and attempts to use them.
A string representation of a time is a string that starts with a digit and has a length of at least 4 characters. Trailing blanks may be included; a leading zero may be omitted from the hour part of the time, and seconds may be omitted entirely. If seconds are omitted, an implicit specification of 0 seconds is assumed. Thus, 13:30 is equivalent to 13:30:00.
Valid string formats for times are listed in the following table. Each format is identified by name and associated abbreviation.
Format Name | Abbreviation | Time Format | Example |
---|---|---|---|
International Standards Organization2 | ISO | hh.mm.ss | 13.30.05 |
IBM USA standard | USA | hh:mm AM or PM | 1:30 PM |
IBM European standard | EUR | hh.mm.ss | 13.30.05 |
Japanese Industrial Standard Christian Era | JIS | hh:mm:ss | 13:30:05 |
Site-defined | LOC | Depends on the territory code of the application | - |
7Starting with Version 8.2, "AM" and "PM" can 7be represented in lowercase or uppercase.
It is possible to see decoupled applications when issuing the list applications command even without connection concentrator enabled.
7 7 7Progress monitoring of run time rollback provides progress information 7of rollback events using application snapshots. Rollback events are of two 7types:
7The information provided is the start time of the rollback event, the total 7work to be done, and completed work. The work metric is bytes.
7Total Work units is the range in the log stream that needs to be rolled 7back for the transaction or savepoint.
7Completed Work units shows the relative position in the log stream that 7has been rolled back.
7Updates to Completed Work are made after every log record is processed. 7 Updates are not performed evenly because log records vary in size.
7Application Snapshot 7 7Application handle = 6 7Application status = Rollback Active 7 Start Time = 02/20/2004 12:49:27.713720 7 Completed Work = 1024000 bytes 7 Total Work = 4084000 bytes 7 7 Application Snapshot 7 7Application handle = 10 7Application status = Rollback to Savepoint 7 Start Time = 02/20/2004 12:49:32.832410 7 Completed Work = 102400 bytes 7 Total Work = 2048000 bytes7 7
You must configure and enable MQ XML user-defined functions (UDFs) 7before you can use them.
7Install the UDFs by following the procedure in the "Installing DB2 WebSphere 7MQ functions" topic, which is found either in the Information Center or the IBM DB2 Information Integrator Application Developer's 7Guide.
To configure and enable MQ XML UDFs with XML Extender:
7db2 connect to <database>
db2 bind @dbxxbind.lst
db2 bind mqxml.bnd
db2 bind @db2cli.lst
DB2 XML Extender can place large documents in temporary files to avoid 7using a great amount of memory during processing. On systems with large amounts 7of physical memory, you can avoid moving documents to temporary files, reducing 7the amount of Input/Output activity. The environment variable DB2DXX_MIN_TMPFILE_SIZE 7instructs XML Extender to use memory buffers, instead of temporary files, 7 for processing documents smaller than the specified value. The variable 7is applicable only on the server. If multiple physical nodes participate 7in a partitioned environment, the variable can be set differently on each 7node, accurately reflecting the amount of memory installed on each computer. 7If the environment variable is not set, documents larger than 128 KB will 7automatically be placed into temporary files during processing. Documents 7smaller than 128 KB will be processed in memory.
7 7 7You can redefine the user-defined type (UDT) DB2XML.XMLVarchar up to 32 7KB. To change the size of an XMLVarchar UDT, create the UDT before you enable 7the database for XML Extender.
7For more information, see DB2 XML Extender Administration 7and Programming.
[ Top of Page |Previous Page | Next Page | Contents ]