If distributed IBM MQ administrators live in runmqsc and REST, z/OS operators live in CSQ. The CSQ command prefix drives IBM MQ on the mainframe from SDSF, automation consoles, and batch utilities—starting listeners, displaying shared queue depth during incidents, altering channel definitions under change control, and confirming queue sharing group members are active after IPL weekend. Beginners who only practiced MQ in Docker may never have seen operator syntax; veterans memorize a handful of DISPLAY variants that answer is the queue manager up and why are puts failing. This tutorial introduces CSQ versus CSQUTIL versus runmqsc, command categories (DISPLAY, ALTER, START, STOP), queue sharing group displays, safety habits for production, mapping to MQSC concepts you already know, and how CSQ fits nightly automation on the mainframe.
| Method | Typical use | Audience |
|---|---|---|
| CSQ from SDSF / console | Live display and controlled ALTER | Operations shift |
| CSQUTIL batch | Scripted DEFINE/ALTER packages | Change management |
| runmqsc (USS/batch) | Familiar MQSC if site allows | Hybrid admins |
| REST (if enabled) | Automation from distributed tooling | Modern ops |
| MQ Explorer | GUI against z/OS QM | Developers, support |
Sites standardize one primary path for production changes to keep audit trails consistent. Mixing ad hoc console ALTER with unreviewed scripts causes drift. Beginners should copy the site runbook before improvising.
DISPLAY commands answer incident questions without changing state. Examples mirror distributed MQSC: queue depth and open handles, channel status, listener status, authinfo, and queue manager parameters. On QSG estates, displays include member status and shared queue disposition. During Sev-1, operators chain DISPLAY QLOCAL, DISPLAY CHSTATUS, and structure utilization views before any ALTER.
123456/* Illustrative forms — verify against IBM MQ for your release */ DISPLAY QMGR ALL DISPLAY QLOCAL('PAYMENTS.IN') CURDEPTH QSGDISP CFSTRUCT DISPLAY CHSTATUS('TO.PARTNER') ALL DISPLAY LSSTATUS('LISTENER.TCP') ALL
Command exact spelling and parentheses rules follow z/OS operator conventions documented by IBM. Automation tools wrap the same strings operators type manually.
ALTER modifies objects—queue MAXDEPTH, channel CONNAME, authentication settings. Production ALTER requires change tickets, backout scripts, and often a maintenance window for channels in flight. ALTER QMGR attributes affects the entire member; in a QSG understand whether attributes are group-wide or member-specific per IBM tables. Test ALTER packages in qualification sysplexes with matching CF structure sizes where possible.
CSQUTIL reads input cards or data sets with MQSC-like statements executed against the queue manager. Change teams package DEFINE and ALTER with SMP/E promotions. Return codes in job output must be zero before closing tickets. CSQUTIL is how mainframe shops achieve the same repeatability distributed teams get from Git-stored .mqsc files—only the transport is JCL.
1234567//MQDEF JOB ... //STEP1 EXEC PGM=CSQUTIL //SYSPRINT DD SYSOUT=* //INPUT DD * DEFINE QLOCAL('TEST.IN') QSGDISP(SHARED) CFSTRUCT(MQSG001) ALTER QLOCAL('TEST.IN') MAXDEPTH(10000) /* end input */
Operators verify all QSG members are active after sysplex events, display which member owns private queue depth spikes, and confirm shared queues show consistent depth from any member. Commands tie to coupling facility structure monitoring—CSQ alone does not replace CF utilization dashboards. Link displays in runbooks so overnight staff know the sequence.
DISPLAY is lower risk than ALTER but may still expose sensitive queue names in logs. ALTER mistakes can stop channels or set MAXDEPTH zero. RACF profiles and command protection limit who may issue destructive verbs. Use qualification sysplex commands before production. Never paste production ALTER scripts from the internet without site review.
If you know DISPLAY QLOCAL CURDEPTH on Linux, search IBM documentation for the z/OS equivalent CSQ form—the concepts align, punctuation may differ. Object types (queues, channels, namelists, topics) exist on both platforms. Platform-specific attributes (QSGDISP, CFSTRUCT) appear only on z/OS definitions. Keeping a cross-reference cheat sheet in the team wiki accelerates onboarding.
CSQ commands are the cockpit instruments for IBM MQ on z/OS. DISPLAY tells speed and fuel; ALTER adjusts flaps; START and STOP are ignition. CSQUTIL is the pre-flight checklist printed on paper the airline requires.
CSQ commands are how grown-up operators ask IBM MQ questions and tell it what to change on the mainframe computer.
Write an incident checklist: three DISPLAY commands you would run for channel failure, in order.
Compare how your site stores MQ changes—CSQUTIL JCL, Git MQSC, or both.
Find IBM documentation for one DISPLAY command you have never used and summarize what it shows.
1. CSQ commands are primarily for:
2. CSQUTIL is suited for:
3. DISPLAY commands help operators:
4. runmqsc on distributed is closest to: