A DB2 for z/OS subsystem needs hundreds of operating rules before it can start. Those rules describe matters such as logging, storage, security, SQL behavior, tracing, and data sharing. Most are called subsystem parameters, or informally ZPARMs. This tutorial explains where the rules come from, how installation panels turn them into load modules, and which changes can be activated while Db2 remains available.
IBM supplies an installation CLIST that presents a sequence of ISPF panels. During a first installation, migration, or later update, a systems programmer enters values on those panels. The CLIST validates many entries and uses them to tailor installation jobs. The panels are therefore a friendly front end; they are not themselves the configuration that Db2 loads at startup.
In update mode, DSNTIPB is important because it lets the administrator select the parameter areas to revisit. You do not need to pretend that every installation decision is new when only logging or tracing must change. Near the output stage,DSNTIPO3 contains the PARAMETER MODULE choice. That name tells the generated job which subsystem parameter load module to build. Teams often use a controlled name such as DSNZPPRD or DSNZPTST instead of repeatedly replacing one module without an obvious environment identity.
| Panel | Role | What it influences |
|---|---|---|
| DSNTIPB | Choose installation or update work | Selects which parameter groups and jobs the installation CLIST will process |
| DSNTIPN | Tracing parameters | Supplies defaults for accounting, statistics, audit, monitor, and performance traces |
| DSNTIPA | Archive log data sets | Supplies archive prefix, device/unit, retention, and copy options |
| DSNTIPO3 | Output and parameter module choices | PARAMETER MODULE identifies the load-module name that generated jobs will build |
DSNZPARM is the conventional default module name. Technically, Db2 can use a differently named module, provided the startup procedure and commands refer to it. The common phrase DSNZPxxx describes site-defined names beginning with DSNZP and ending with characters that identify a member, environment, or version. The module name is limited by normal load-module naming rules, so establish a short naming standard and document what every suffix means.
The installation job DSNTIJUZ assembles parameter macros and link-edits their output into the load module. Do not hand-edit a binary module. Change the installation input, generate or maintain the macro statements, run the reviewed job, keep the output, and promote the resulting module through controlled libraries. That process makes the configuration reproducible and leaves evidence of the exact values that were intended.
| Macro | Parameter area | High-level purpose |
|---|---|---|
| DSN6ARVP | Archive log | Archive log allocation, cataloging, retention, and copy-related defaults |
| DSN6FAC | Tracing and instrumentation | Accounting, statistics, audit, monitor, and performance trace defaults |
| DSN6GRP | Data sharing | Group and member-related subsystem settings |
| DSN6LOGP | Logging | Active logging, archive processing, checkpoints, and recovery behavior |
| DSN6SPRM | SQL and application behavior | SQL processing, compatibility, optimization, and application-related defaults |
| DSN6SYSP | Subsystem operation | Broad system, storage, security, and operational defaults |
These categories help you navigate generated source, but individual options and macro ownership can evolve by Db2 release. Always use the installation and command documentation for your exact function level rather than copying an old subsystem's assembly input blindly.
A generated module can contain both online-updatable andrecycle-required settings. The command does not magically make every field dynamic. When you issue -SET SYSPARM LOAD(name), Db2 validates the module and applies settings documented as online changeable. A setting that requires a recycle remains at its current value until the member stops and starts using the new module.
| Command or interface | Action | Effect |
|---|---|---|
| -SET SYSPARM LOAD(module) | Loads a named DSNTIJUZ-built module | Online-capable values last until another change or restart |
| -SET SYSPARM RELOAD | Reloads the last named module | Useful after rebuilding the same module name |
| -SET SYSPARM STARTUP | Restores values that this member used at startup | Discards later LOAD or RELOAD overrides |
| ADMIN_INFO_SYSPARM | Queries subsystem parameter information through a supplied procedure | Read-only inspection; it does not change ZPARMs |
123-SET SYSPARM LOAD(DSNZPPRD) -SET SYSPARM RELOAD -SET SYSPARM STARTUP
LOAD selects a named module. RELOAD reloads the module name used by the previous LOAD, which is convenient after replacing that module in the authorized load library. STARTUP returns this member to the values it had when it started. None of these commands rewrites the startup procedure. If an online LOAD should survive the next recycle, ensure that startup will select the promoted module.
The supplied ADMIN_INFO_SYSPARM procedure provides a queryable view of subsystem parameter information. It is valuable for evidence gathering, automation, and checking whether the running member agrees with a build record. It is an information interface, not a replacement for DSNTIJUZ and not a command that updates parameters. Exact result columns and supported parameters can vary by Db2 level.
Ordinary authority to issue SET SYSPARM does not mean every security control may be changed. Parameters involving installation SYSADM, SYSOPR, SECADM, separate security, and related authorization behavior receive stricter checking. Changes to designated security parameters require an appropriately authorized SECADM or the documented installation authority. If the issuer lacks that authority, Db2 can reject those changes while retaining old values. Review messages after every load; a command response alone is not proof that every requested field changed.
In a data sharing group, each member starts separately and can use its own DSNZPxxx module. SET SYSPARM also has member scope: send the command to the member whose settings should change. This allows legitimate differences, such as member-specific identifiers or workload-related values, but it also creates drift risk. Keep a matrix of shared settings versus approved member exceptions, query every member after a change, and recycle only the members that require recycle-only values.
Never assume that loading a module on member DBP1 changed DBP2. Conversely, do not give every member one module merely for convenience if the module includes values that must differ. A dependable naming convention, member-by-member verification, and retained DSNTIJUZ output are the foundations of safe data sharing configuration.
DSNHDECP is a separate application programming defaults module. It does not replace DSNZPARM. It supplies defaults used by Db2 language-processing tools, especially the precompiler and coprocessor paths that prepare embedded SQL applications. The installation job DSNTIJUA assembles and links DSNHDECP.
SQLLEVEL and APPLCOMPAT are related but not identical. SQLLEVEL in the application defaults context controls the SQL language level accepted by the precompiler or coprocessor. APPLCOMPAT is a package-level compatibility control that governs SQL behavior and features when the package executes. Allowing syntax during source processing does not by itself grant a package a higher runtime APPLCOMPAT. The bind or rebind settings and the subsystem's supported function level still matter.
This distinction prevents a common mistake: rebuilding DSNHDECP is not the same as rebinding all packages. Existing packages preserve their cataloged bind attributes until a relevant bind or rebind changes them. Treat DSNHDECP changes as compiler-toolchain changes, test representative source builds, and coordinate them with package compatibility policy.
DSNTIPN captures high-level installation choices for the Db2 instrumentation facility. It covers defaults associated with accounting,statistics, audit, monitor, andperformance traces. These choices influence which routine measurements start automatically, their classes or destinations, and the baseline overhead and observability posture of the subsystem.
The panel is not a live trace console. The operator command -START TRACE starts a runtime trace and can specify trace type, class, destination, IFCIDs, and filters. Think of DSNTIPN as setting the installed default policy and START TRACE as making an operational request now. Broad performance or audit tracing can produce substantial CPU and output, so choose standing defaults conservatively and use focused runtime traces for investigations.
1234-START TRACE(ACCTG) CLASS(1,2,3) DEST(SMF) -START TRACE(STAT) CLASS(1) DEST(SMF) -START TRACE(PERFM) CLASS(30) IFCID(316,318) DEST(GTF) -DISPLAY TRACE(*)
Accounting records explain work by thread or transaction. Statistics records describe subsystem activity over intervals. Audit traces record selected security events. Monitor traces feed online monitoring products, while performance traces expose detailed events for diagnosis. The exact classes and destinations should follow your site's monitoring design and current IBM documentation.
DSNTIPA is the installation panel for archive log data set parameters. Its choices include the archive data set prefix, allocationunit or device, retention information, andcopy options. These values determine how Db2 names and allocates archive log data sets when active logs are offloaded.
DSNTIPA is closely related to logging ZPARMs assembled in the subsystem parameter module, especially the archive and log macro areas. The panel supplies human-friendly input; the generated DSNTIJUZ work turns that input into values the subsystem can use. It does not allocate the active logs or replace BSDS definitions. Active log inventory, archive offload behavior, and archive cataloging are connected parts of logging, but they are not one object.
Imagine Db2 is a large school. DSNZPARM is the head teacher's rulebook: when doors open, where records go, who may enter special rooms, and how emergencies work. DSNHDECP is a smaller guide for students writing assignments, explaining language and number rules. DSNTIPN chooses how many school activities are recorded, while DSNTIPA tells the archivist how to label and store old diaries. SET SYSPARM can replace pages designed for safe replacement while school stays open; other pages require closing and reopening the school.
DSNZPARM is the conventional default name of the Db2 subsystem parameter load module. It contains assembled values that control logging, storage, security, SQL behavior, tracing, data sharing, and many other subsystem functions. A site can use another eight-character name, commonly a DSNZPxxx name.
Some subsystem parameters are online-updatable. Build a new module with DSNTIJUZ and use -SET SYSPARM LOAD(module) or RELOAD. Parameters that are not online-updatable are recognized only after the affected Db2 member is recycled with the new module.
DSNZPARM controls the running Db2 subsystem. DSNHDECP supplies application programming defaults used by the precompiler, coprocessor, and related language-processing tasks. DSNTIJUZ builds DSNZPARM; DSNTIJUA builds DSNHDECP.
DSNTIPN is the installation panel for high-level tracing defaults, including accounting, statistics, audit, monitor, and performance traces. DSNTIPA supplies archive log data set defaults such as archive prefix, unit, retention, and copy choices.
Use the IBM-supplied ADMIN_INFO_SYSPARM stored procedure to retrieve subsystem parameter information and compare it with the intended installation settings. Access depends on the procedure being installed and the caller having the required privileges.
1. Which installation job normally assembles and links the DSNZPARM module?
2. What does -SET SYSPARM STARTUP do?
3. Why can two members in one data sharing group use different DSNZPARM values?
4. What is the main purpose of DSNHDECP?
5. How does DSNTIPN relate to -START TRACE?