Progress OpenEdge database administration guide and reference

5,830 views

Published on

Progress OpenEdge database administration guide and reference

Contact us anytime: Think Next - QAD Partner in Vietnam

- Website: http://www.thinknext.vn
- Email: contact [at] thinknext.vn

Published in: Technology
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
5,830
On SlideShare
0
From Embeds
0
Number of Embeds
26
Actions
Shares
0
Downloads
139
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Progress OpenEdge database administration guide and reference

  1. 1. ProgressDatabase AdministrationGuide and Reference
  2. 2. ©2002 Progress Software Corporation. All rights reserved.Progress®software products are copyrighted and all rights are reserved by Progress Software Corporation. This manual is alsocopyrighted and all rights are reserved. This manual may not, in whole or in part, be copied, photocopied, translated, or reducedto any electronic medium or machine-readable form without prior consent, in writing, from Progress Software Corporation.The information in this manual is subject to change without notice, and Progress Software Corporation assumes no responsibilityfor any errors that may appear in this document.The references in this manual to specific platforms supported are subject to change.Progress, Powered by Progress, Progress Fast Track, Progress Profiles, Partners in Progress, Partners en Progress, Progress enPartners, Progress in Progress, P.I.P., Progress Results, ProVision, ProCare, ProtoSpeed, SmartBeans, SpeedScript, andWebSpeed are registered trademarks of Progress Software Corporation in the U.S. and other countries. A Data Center of YourVery Own, Allegrix, Apptivity, AppsAlive, AppServer, ASPen, ASP-in-a-Box, Empowerment Center, Fathom, Future Proof,IntelliStream, OpenEdge, PeerDirect, POSSE, POSSENET, Progress Dynamics, Progress Software Developers Network,SectorAlliance, SmartObjects and WebClient are trademarks or service marks of Progress Software Corporation in the U.S. andother countries.SonicMQ is a registered trademark of Sonic Software Corporation in the U.S. and other countries.Vermont Views is a registered trademark of Vermont Creative Software in the U.S. and other countries.Java and all Java-based marks are trademarks or registered trademarks of Sun Microsystems, Inc. in the U.S. and other countries.Any other trademarks and/or service marks contained herein are the property of their respective owners.Progress Software Corporation acknowledges the use of Raster Imaging Technology copyrighted by Snowbound Software 1993-1997, the IBM XML Parser for Java Edition, and software developed by the Apache Software Foundation (http://www.apache.org/).© IBM Corporation 1998-1999. All rights reserved. U.S. Government Users Restricted Rights — Use, duplication or disclosurerestricted by GSA ADP Schedule Contract with IBM Corp.Progress is a registered trademark of Progress Software Corporation and is used by IBM Corporation in the mark Progress/400under license. Progress/400 AND 400®are trademarks of IBM Corporation and are used by Progress Software Corporationunder license.The implementation of the MD5 Message-Digest Algorithm used by Progress Software Corporation in certain of its products isderived from the RSA Data Security, Inc. MD5 Message-Digest Algorithm.Product Code: 4590Item Number: 89434;V9.1DMay 2002
  3. 3. ContentsPreface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xxiiiPurpose . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xxiiiAudience . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xxiiiOrganization of This Manual . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xxiiiPart I Planning . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xxiiiPart II Administration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xxivPart III Reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xxvHow To Use This Manual . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xxviTypographical Conventions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xxviSyntax Notation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xxviiExample Procedures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xxxiProgress Messages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xxxivOther Useful Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xxxviGetting Started . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xxxviDevelopment Tools . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xxxviiReporting Tools . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xxxviii4GL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xxxixDatabase . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xlDataServers. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xlSQL-89/Open Access . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xliSQL-92 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xliDeployment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xliiWebSpeed. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xliiReference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xliii1. The Progress Database . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1–11.1 Progress Database Architecture . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1–21.1.1 Other Database-related Files . . . . . . . . . . . . . . . . . . . . . . . . . . 1–41.2 Storage Design Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1–5
  4. 4. Contentsiv1.2.1 Storage Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1–71.2.2 Extents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1–71.2.3 Storage Areas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1–71.3 Determining Configuration Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1–91.3.1 System Platform . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1–91.3.2 Connection Modes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1–91.3.3 Database Location . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1–101.3.4 Database Configurations. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1–101.4 Operating System Resources . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1–121.5 Multi-threaded Architecture . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1–131.6 Multi-tier and Cluster Configurations . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1–141.7 Self-service and Network Clients . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1–151.8 Relative- and Absolute-path Databases . . . . . . . . . . . . . . . . . . . . . . . . . 1–152. Administrative Planning . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2–12.1 Block Size Considerations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2–22.1.1 Guidelines For Choosing Storage Area Locations . . . . . . . . . . 2–32.2 Calculating Database Disk Requirements . . . . . . . . . . . . . . . . . . . . . . . . 2–32.3 Storing Database Extents On Raw Partitions . . . . . . . . . . . . . . . . . . . . . 2–73. Progress Database Limits . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3–13.1 Database Block Sizes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3–23.2 Number and Size Of Storage Areas . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3–23.3 Maximum Number Of Records Per Block . . . . . . . . . . . . . . . . . . . . . . . . 3–53.4 Table and Index Limits . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3–53.5 Number Of Sequences . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3–53.6 Maximum Size Of the Primary Recovery (BI) Area . . . . . . . . . . . . . . . . . 3–63.7 Maximum Database Size . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3–63.8 Number Of Connections Per Database . . . . . . . . . . . . . . . . . . . . . . . . . . 3–73.9 Number Of Simultaneous Transactions Per Database . . . . . . . . . . . . . . 3–73.10 Size Of Database Buffer Pool . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3–73.11 Progress Database Name Limits . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3–83.12 Applicable Operating System Limits . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3–83.13 Data Types and Values . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3–104. Creating and Deleting Databases . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4–14.1 Ways To Create a Progress Database . . . . . . . . . . . . . . . . . . . . . . . . . . 4–24.2 Creating a Database With PROSTRCT CREATE . . . . . . . . . . . . . . . . . . 4–24.2.1 Creating a Structure Description File . . . . . . . . . . . . . . . . . . . 4–34.2.2 Create a Database Structure Extent . . . . . . . . . . . . . . . . . . . . 4–104.2.3 Adding Schema To a Void Database . . . . . . . . . . . . . . . . . . . . 4–114.3 Creating a Database With the PRODB Utility . . . . . . . . . . . . . . . . . . . . . 4–124.4 Creating a Database With the Data Administration Tool . . . . . . . . . . . . . 4–144.5 Migrating Version 8 Databases To Version 9 Databases . . . . . . . . . . . . 4–15
  5. 5. Contentsv4.5.1 Converting a Single-volume Version 8 Database WithPROCOPY . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4–164.5.2 Converting a Single-volume Version 8 Database WithPROREST . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4–174.5.3 Converting a Single-volume Version 8 Database WithPROSTRCT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4–184.5.4 Converting a Version 8 Database To Version 9. . . . . . . . . . . . 4–184.6 Using the Schema Mover After Conversion . . . . . . . . . . . . . . . . . . . . . . 4–194.7 Copying a Database . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4–224.8 AutoConvert Utility . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4–244.9 Deleting a Database . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4–245. Starting Up and Shutting Down . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5–15.1 The Progress Explorer Framework . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5–25.1.1 AdminServer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5–25.1.2 Progress Explorer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5–25.1.3 Command-line Configuration Utilities . . . . . . . . . . . . . . . . . . . 5–35.1.4 Using the DBMAN Command-Line Utility . . . . . . . . . . . . . . . . 5–45.2 Starting a Server Or Broker . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5–55.2.1 Using the PROSERVE Command . . . . . . . . . . . . . . . . . . . . . . 5–55.2.2 Specifying International Character Sets . . . . . . . . . . . . . . . . . 5–65.2.3 Network Addressing With Progress (- S and -H) . . . . . . . . . . 5–75.2.4 Starting Network Brokers and Servers. . . . . . . . . . . . . . . . . . . 5–75.2.5 Starting Multiple Brokers Using the Same Protocol . . . . . . . . 5–85.2.6 Accessing a Server Behind a Firewall . . . . . . . . . . . . . . . . . . . 5–95.3 Starting and Stopping Background Writers . . . . . . . . . . . . . . . . . . . . . . 5–105.3.1 Starting and Stopping an APW . . . . . . . . . . . . . . . . . . . . . . . . 5–105.3.2 Starting and Stopping a BIW . . . . . . . . . . . . . . . . . . . . . . . . . . 5–115.3.3 Starting and Stopping an AIW . . . . . . . . . . . . . . . . . . . . . . . . . 5–115.4 Stopping a Server Or Broker . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5–125.4.1 PROSHUT Command . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5–125.4.2 PROMON Shut Down Database Option . . . . . . . . . . . . . . . . . 5–156. Backup and Recovery Strategies . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6–16.1 Identifying Files For Back Up . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6–26.2 Determining the Type Of Backup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6–36.2.1 Incremental Backups . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6–46.2.2 Online Backups . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6–56.2.3 Offline Backups . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6–66.3 Choosing Backup Media . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6–66.4 Creating a Backup Schedule . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6–76.4.1 Database Integrity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6–76.4.2 Database Size . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6–86.4.3 Time . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6–8
  6. 6. Contentsvi6.4.4 Unscheduled Backups . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6–96.5 Developing a Recovery Plan . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6–96.5.1 Lost Transactions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6–106.5.2 Duration Of Offline Applications . . . . . . . . . . . . . . . . . . . . . . . . 6–106.5.3 Time Needed For Recovery . . . . . . . . . . . . . . . . . . . . . . . . . . . 6–116.5.4 Distributed Transactions Occurring Inconsistently . . . . . . . . . . 6–126.6 Recovery Guidelines . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6–137. Backing Up a Database. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7–17.1 Performing a Progress Backup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7–27.1.1 Performing an Online Full Backup With PROBKUP . . . . . . . . . 7–37.1.2 Progress Backup Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7–57.1.3 Testing Backups . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7–67.1.4 Archiving Backups . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7–87.2 Performing an Offline Progress Backup . . . . . . . . . . . . . . . . . . . . . . . . . 7–97.3 Performing an Online Progress Backup . . . . . . . . . . . . . . . . . . . . . . . . . 7–107.4 Using Database Quiet Points . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7–117.5 Performing a Non-Progress Backup . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7–137.6 Database Backup Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7–147.6.1 UNIX Incremental Backup Example . . . . . . . . . . . . . . . . . . . . . 7–147.6.2 Windows Full Backup Example. . . . . . . . . . . . . . . . . . . . . . . . . 7–177.6.3 Incremental Backup Example . . . . . . . . . . . . . . . . . . . . . . . . . . 7–207.7 Verifying a Backup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7–237.8 CRC Codes and Redundancy In Backup Recovery . . . . . . . . . . . . . . . . 7–247.8.1 CRC Codes. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7–247.8.2 Error-correction Blocks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7–257.9 Restoring a Database . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7–257.9.1 Using the PROREST Utility To Restore a Database . . . . . . . . 7–267.9.2 Important Rules For Restoring Backups . . . . . . . . . . . . . . . . . . 7–277.9.3 Obtaining Storage Area Descriptions Using PROREST . . . . . 7–287.9.4 Database Restore Examples . . . . . . . . . . . . . . . . . . . . . . . . . . 7–298. Recovering a Database. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8–18.1 Introduction To Recovery Mechanisms . . . . . . . . . . . . . . . . . . . . . . . . . . 8–28.1.1 Crash Recovery . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8–38.1.2 Roll-forward Recovery. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8–48.1.3 Two-phase Commit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8–68.2 File Locations That Ensure Safe Recovery . . . . . . . . . . . . . . . . . . . . . . . 8–68.3 Sample Recovery Plans . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8–78.3.1 Example 1: Low Availability Requirements . . . . . . . . . . . . . . . . 8–78.3.2 Example 2: Moderate Availability Requirements . . . . . . . . . . . 8–88.3.3 Example 3: Moderate-to-High Availability Requirements . . . . . 8–98.3.4 Example 4: High Availability Requirements . . . . . . . . . . . . . . . 8–108.3.5 Sample Recovery Scenarios. . . . . . . . . . . . . . . . . . . . . . . . . . . 8–11
  7. 7. Contentsvii8.4 After-imaging and Roll-forward Recovery Commands . . . . . . . . . . . . . . 8–168.5 Recovering From System Failures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8–178.5.1 System Crash While Running RFUTIL ROLL FORWARD. . . . 8–178.5.2 System Crash While Running Other Utilities . . . . . . . . . . . . . . 8–178.5.3 System Crash While Backing Up the Database. . . . . . . . . . . . 8–188.5.4 System Crash While Database Is Up. . . . . . . . . . . . . . . . . . . . 8–188.6 Recovering From Media Failures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8–188.6.1 Loss Of the DB Files, BI Files, Or Both . . . . . . . . . . . . . . . . . . 8–198.6.2 Loss Of the AI File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8–198.6.3 Loss Of Database Backup . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8–208.6.4 Loss Of Transaction Log File . . . . . . . . . . . . . . . . . . . . . . . . . 8–218.7 Recovering From a Full Disk . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8–218.7.1 After-image Area Disk . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8–228.7.2 Control Or Primary Recovery Area Disk . . . . . . . . . . . . . . . . . 8–228.7.3 Transaction Log File Disk . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8–238.8 Truncating the BI File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8–248.9 Recovering From a Crash . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8–248.10 Recovering From a Lost Or Damaged Control Area . . . . . . . . . . . . . . . 8–258.11 Unlocking Damaged Databases . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8–268.12 Dumping Tables From a Damaged Database . . . . . . . . . . . . . . . . . . . . 8–278.13 Forcing Access To a Damaged Database With the -F Parameter . . . . . 8–289. Maintaining Database Structure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9–19.1 The Progress Structure Utility . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9–29.2 Progress Structure Statistics Utility . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9–29.3 Progress Structure List Utility . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9–39.4 Progress Structure Add Utility . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9–59.4.1 PROSTRCT ADD and Pathnames . . . . . . . . . . . . . . . . . . . . . 9–69.4.2 Adding Extents to Existing Storage Areas . . . . . . . . . . . . . . 9–79.5 Progress Structure Remove Utility . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9–89.6 Maintaining Indexes and Tables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9–99.6.1 Moving Tables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9–99.6.2 Moving Indexes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9–119.6.3 Compacting Indexes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9–119.7 Using Virtual System Tables To Obtain Status Of Administration Utilities 9–1210. Maintaining Security . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10–110.1 Establishing a Progress User ID and Password . . . . . . . . . . . . . . . . . . 10–210.1.1 Progress User ID . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10–210.1.2 Progress Password . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10–210.1.3 Validating a Progress User ID and Password . . . . . . . . . . . . . 10–310.2 Establishing Authentication For Your Progress Database . . . . . . . . . . . 10–310.2.1 4GL Tables Only . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10–310.2.2 SQL-92 Tables Only . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10–3
  8. 8. Contentsviii10.2.3 Both 4GL and SQL-92 Tables. . . . . . . . . . . . . . . . . . . . . . . . . . 10–410.3 Connection Security . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10–510.3.1 Designating a Security Administrator . . . . . . . . . . . . . . . . . . . . 10–510.3.2 Adding a User . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10–710.3.3 Deleting a User . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10–910.3.4 Changing a Password. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10–910.4 Running a User Report . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10–1010.5 Schema Security . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10–1110.5.1 Freezing and Unfreezing a Table . . . . . . . . . . . . . . . . . . . . . . . 10–1210.6 Operating Systems and Database Security . . . . . . . . . . . . . . . . . . . . . . 10–1211. After-Imaging . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11–111.1 After-image Areas and Extents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11–211.2 Estimating After-imaging Disk Space Requirements . . . . . . . . . . . . . . . . 11–311.3 Creating After-image Areas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11–411.4 Enabling After-imaging . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11–511.5 Managing After-imaging Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11–611.5.1 Monitoring AI File Status. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11–611.5.2 Switching To a New AI File . . . . . . . . . . . . . . . . . . . . . . . . . . . 11–711.5.3 Archiving an AI File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11–811.6 Performing Roll-forward Recovery . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11–1211.7 Disabling After-imaging . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11–1312. Using Two-phase Commit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12–112.1 Distributed Transactions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12–212.2 How The Database Engine Implements Two-phase Commit . . . . . . . . . 12–312.2.1 Two-phase Commit and Roll-forward Recovery . . . . . . . . . . . . 12–612.3 Enabling Two-phase Commit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12–712.3.1 Modifying the Database Nickname and Priority . . . . . . . . . . . . 12–812.3.2 Transaction Log Area . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12–912.4 Detecting Limbo Transactions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12–1012.5 Resolving Limbo Transactions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12–1112.5.1 Resolving Limbo Transactions With the Database In Use . . . . 12–1112.5.2 Resolving Limbo Transactions With the Database Shut Down. 12–1512.5.3 Resolving Limbo Transaction Scenarios. . . . . . . . . . . . . . . . . . 12–1712.6 Deactivating Two-phase Commit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12–1912.7 Case Study . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12–1913. Dumping and Loading . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13–113.1 Overview Of Dumping and Loading . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13–213.1.1 Dump and Load Limitations . . . . . . . . . . . . . . . . . . . . . . . . . . . 13–313.2 Dumping 4GL Database Definitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13–313.2.1 Definition File Format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13–413.2.2 Dumping 4GL Definitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13–6
  9. 9. Contentsix13.2.3 Creating an Incremental 4GL Data Definitions File . . . . . . . . . 13–713.2.4 Dumping Sequence Definitions . . . . . . . . . . . . . . . . . . . . . . . . 13–813.2.5 Dumping Auto-connect Records . . . . . . . . . . . . . . . . . . . . . . . 13–913.3 Dumping Database Contents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13–913.3.1 Dumping Table Contents With PROUTIL. . . . . . . . . . . . . . . . . 13–1013.3.2 Dumping Field Contents With PROUTIL . . . . . . . . . . . . . . . . . 13–1213.3.3 Dumping Table Contents With a Data Tool . . . . . . . . . . . . . . . 13–1413.3.4 Contents File Format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13–1513.3.5 Dumping Sequence Values . . . . . . . . . . . . . . . . . . . . . . . . . . . 13–1713.3.6 Dumping User Table Contents. . . . . . . . . . . . . . . . . . . . . . . . . 13–1713.3.7 Dumping an SQL View File’s Contents . . . . . . . . . . . . . . . . . . 13–1813.4 Loading Database Definitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13–1813.4.1 Loading Table Definitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13–1813.4.2 Loading Updated 4GL Data Definitions . . . . . . . . . . . . . . . . . . 13–1913.5 Loading Database Contents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13–2013.5.1 Loading Table Contents With the PROUTIL Command. . . . . . 13–2113.5.2 Loading Table Contents With a Data Tool . . . . . . . . . . . . . . . . 13–2213.5.3 Loading User Table Contents . . . . . . . . . . . . . . . . . . . . . . . . . 13–2313.5.4 Loading an SQL View File Contents . . . . . . . . . . . . . . . . . . . . 13–2413.5.5 Loading Sequence Values . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13–2413.6 Bulk Loading . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13–2513.6.1 Creating a Bulk Loader Description File. . . . . . . . . . . . . . . . . . 13–2513.6.2 Modifying a Bulk Loader Description File . . . . . . . . . . . . . . . . 13–2613.6.3 Loading Table Contents With the Bulk Loader Qualifier . . . . . 13–2713.7 Reconstructing Bad Load Records . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13–3013.8 Specialized Dump and Load Techniques . . . . . . . . . . . . . . . . . . . . . . . . 13–3013.8.1 Creating a Starting Version Of a Database . . . . . . . . . . . . . . . 13–3013.8.2 Using a Constant Table In Multiple Databases . . . . . . . . . . . . 13–3213.8.3 Economizing Disk Space . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13–3213.8.4 Optimizing Data For Sequential Access. . . . . . . . . . . . . . . . . . 13–3313.8.5 Optimizing Data For Random Access . . . . . . . . . . . . . . . . . . . 13–3413.8.6 Using No-integrity Mode Bulk Data Loading . . . . . . . . . . . . . . 13–3613.8.7 Using 4GL Tools To Save Space By Deactivating Indexes . . . 13–3614. Managing Performance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14–114.1 Introduction To Performance Managing . . . . . . . . . . . . . . . . . . . . . . . . . 14–214.2 Tools For Monitoring Performance . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14–314.2.1 PROMON Utility . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14–314.2.2 Virtual System Tables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14–314.2.3 NT Performance Monitor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14–314.3 Server Performance Factors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14–414.4 CPU Utilization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14–514.4.1 Idle CPU. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14–514.4.2 Unproductive CPU Processing. . . . . . . . . . . . . . . . . . . . . . . . . 14–5
  10. 10. Contentsx14.5 Disk I/O . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14–614.5.1 Database I/O. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14–614.5.2 Before-image I/O . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14–1814.5.3 After-image I/O . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14–2714.5.4 Direct I/O. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14–3014.6 Memory Utilization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14–3114.6.1 Monitoring Memory Utilization. . . . . . . . . . . . . . . . . . . . . . . . . . 14–3114.6.2 Controlling Memory Use . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14–3214.7 Operating System Resources . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14–3314.7.1 Processes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14–3314.7.2 Semaphores . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14–3414.7.3 Spin Locks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14–3714.7.4 File Descriptors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14–3714.8 Database Fragmentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14–3714.8.1 Analyzing Database Fragmentation . . . . . . . . . . . . . . . . . . . . . 14–3714.8.2 Eliminating Database Fragmentation . . . . . . . . . . . . . . . . . . . . 14–3914.9 Index Use . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14–3914.9.1 Analyzing Index Use . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14–4014.9.2 Compacting Indexes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14–4114.9.3 Rebuilding Indexes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14–4214.10 Virtual System Tables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14–4715. Replicating Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15–115.1 Replication Schemes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15–215.1.1 Trigger-based Replication. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15–215.1.2 Log-based Site Replication . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15–215.2 Replication Models . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15–215.2.1 Synchronous Model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15–215.2.2 Asynchronous Model. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15–315.2.3 Database Ownership Models . . . . . . . . . . . . . . . . . . . . . . . . . . 15–315.3 Implementing Log-based Site Replication . . . . . . . . . . . . . . . . . . . . . . . . 15–715.3.1 Log-based Replication Procedure. . . . . . . . . . . . . . . . . . . . . . . 15–716. Using the Event Log . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16–116.1 Progress Version 9 Event Log File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16–216.2 Managing the Event Log File Size . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16–216.3 Event Logging On Windows . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16–216.3.1 Managing Progress Events On Windows . . . . . . . . . . . . . . . . . 16–316.3.2 Understanding the Event Log Components . . . . . . . . . . . . . . . 16–416.3.3 The Event Log and the Registry . . . . . . . . . . . . . . . . . . . . . . . . 16–717. Startup and Shutdown Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17–117.1 Startup Command Syntax . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17–217.2 Database Startup and Shutdown Commands . . . . . . . . . . . . . . . . . . . . . 17–3
  11. 11. ContentsxiPROAIW Command . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17–4PROAPW Command . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17–5PROBIW Command . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17–6PROQUIET Command . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17–7PROSERVE Command . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17–9PROSHUT Command . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17–11PROWDOG Command . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17–1518. Database Startup Parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18–118.1 Issuing Startup Parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18–218.2 Database Server Performance Parameters . . . . . . . . . . . . . . . . . . . . . . 18–218.3 Database Server-type Parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18–418.4 Database Server Internationalization Parameters . . . . . . . . . . . . . . . . . 18–418.5 Database Server Statistics Parameters . . . . . . . . . . . . . . . . . . . . . . . . . 18–518.6 Database Server Network Parameters . . . . . . . . . . . . . . . . . . . . . . . . . 18–618.7 Startup Parameter Usage Categories . . . . . . . . . . . . . . . . . . . . . . . . . . 18–818.8 Alphabetical Listing Of Database Startup Parameters . . . . . . . . . . . . . . 18–818.8.1 AdminServer Port (-adminport) . . . . . . . . . . . . . . . . . . . . . . . . 18–818.8.2 After-image Buffers (-aibufs) . . . . . . . . . . . . . . . . . . . . . . . . . . 18–918.8.3 After-image Stall (-aistall) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18–1018.8.4 Blocks In Database Buffers (-B). . . . . . . . . . . . . . . . . . . . . . . . 18–1018.8.5 Base Index (-baseindex) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18–1118.8.6 Base Table (-basetable). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18–1218.8.7 Before-image Buffers (-bibufs) . . . . . . . . . . . . . . . . . . . . . . . . 18–1318.8.8 Threshold Stall (-bistall) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18–1318.8.9 Recovery Log Threshold (-bithold). . . . . . . . . . . . . . . . . . . . . . 18–1418.8.10 SQL-92 Server Java Classpath (-classpath) . . . . . . . . . . . . . . 18–1418.8.11 Conversion Map (-convmap) . . . . . . . . . . . . . . . . . . . . . . . . . . 18–1518.8.12 Case Table (-cpcase). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18–1518.8.13 Collation Table (-cpcoll) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18–1618.8.14 Internal Code Page (-cpinternal) . . . . . . . . . . . . . . . . . . . . . . . 18–1718.8.15 Log File Code Page (-cplog) . . . . . . . . . . . . . . . . . . . . . . . . . . 18–1818.8.16 Print Code Page (-cpprint) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18–1818.8.17 R-code In Code Page (-cprcodein) . . . . . . . . . . . . . . . . . . . . . 18–1918.8.18 Stream Code Page (-cpstream) . . . . . . . . . . . . . . . . . . . . . . . 18–2018.8.19 Terminal Code Page (-cpterm). . . . . . . . . . . . . . . . . . . . . . . . . 18–2118.8.20 Direct I/O (-directio) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18–2118.8.21 Event Level (-evtlevel) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18–2218.8.22 Before-image Cluster Age (-G) . . . . . . . . . . . . . . . . . . . . . . . . 18–2318.8.23 Group Delay (-groupdelay) . . . . . . . . . . . . . . . . . . . . . . . . . . . 18–2318.8.24 Host Name (-H) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18–2418.8.25 Hash Table Entries (-hash) . . . . . . . . . . . . . . . . . . . . . . . . . . . 18–2418.8.26 No Crash Protection (-i) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18–2518.8.27 Index Range Size (-indexrangesize) . . . . . . . . . . . . . . . . . . . . 18–26
  12. 12. Contentsxii18.8.28 Lock Table Entries (-L) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18–2618.8.29 Auto Server (-m1) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18–2718.8.30 Manual Server (-m2) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18–2818.8.31 Secondary Login Broker (-m3) . . . . . . . . . . . . . . . . . . . . . . . . . 18–2818.8.32 Maximum Clients Per Server (-Ma) . . . . . . . . . . . . . . . . . . . . . 18–2918.8.33 Maximum Dynamic Server (-maxport) . . . . . . . . . . . . . . . . . . . 18–2918.8.34 Delayed BI File Write (-Mf) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18–3018.8.35 Minimum Clients Per Server (-Mi). . . . . . . . . . . . . . . . . . . . . . . 18–3118.8.36 Minimum Dynamic Server (-minport) . . . . . . . . . . . . . . . . . . . . 18–3218.8.37 Maximum Servers (-Mn) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18–3218.8.38 Servers Per Protocol (-Mp) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18–3318.8.39 Maximum Servers Per Broker (-Mpb) . . . . . . . . . . . . . . . . . . . . 18–3318.8.40 VLM Page Table Entry Optimization (-Mpte) . . . . . . . . . . . . . . 18–3418.8.41 Shared-memory Overflow Size (-Mxs) . . . . . . . . . . . . . . . . . . . 18–3418.8.42 Network Type (-N). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18–3518.8.43 Number Of Users (-n) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18–3518.8.44 Parameter File (-pf). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18–3618.8.45 Pin Shared Memory (-pinshm) . . . . . . . . . . . . . . . . . . . . . . . . . 18–3618.8.46 Configuration Properties File (-properties) . . . . . . . . . . . . . . . . 18–3718.8.47 Buffered I/O (-r). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18–3718.8.48 Service Name (-S) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18–3818.8.49 Semaphore Sets (-semsets) . . . . . . . . . . . . . . . . . . . . . . . . . . . 18–3918.8.50 Server Group (-servergroup). . . . . . . . . . . . . . . . . . . . . . . . . . . 18–4018.8.51 Spin Lock Retries (-spin). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18–4018.8.52 Table Range Size (-tablerangesize) . . . . . . . . . . . . . . . . . . . . . 18–4119. Database Administration Utilities . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19–1DBMAN Utility . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19–3_DBUTIL CMPDB Qualifier . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19–7PROADSV Utility . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19–8PROBKUP Utility . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19–10ProControl Utility . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19–14PROCOPY Utility . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19–17PRODB Utility . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19–19PRODEL Utility . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19–22Progress Explorer Utility . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19–23PROLOG Utility . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19–24PROMON Utility . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19–25PROMON User Control Option . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19–27PROMON Locking and Waiting Statistics Option . . . . . . . . . . . . . . . . . . . . . . . . . . 19–30PROMON Block Access Option . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19–32PROMON Record Locking Table Option . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19–35PROMON Activity Option . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19–37PROMON Shared Resources Option . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19–41
  13. 13. ContentsxiiiPROMON Database Status Option . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19–43PROMON Shut Down Database Option . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19–45PROMON Transactions Control Option . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19–46PROMON Resolve Limbo Transactions Option . . . . . . . . . . . . . . . . . . . . . . . . . . 19–48PROMON Coordinator Information Option . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19–49PROMON Modify Defaults Option . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19–50PROREST Utility . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19–52PROSTRCT Utility . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19–54PROSTRCT ADD Qualifier . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19–56PROSTRCT BUILDDB Qualifier . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19–57PROSTRCT CREATE Qualifier . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19–58PROSTRCT LIST Qualifier . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19–60PROSTRCT REMOVE Qualifier . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19–61PROSTRCT REPAIR Qualifier . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19–63PROSTRCT STATISTICS Qualifier . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19–64PROSTRCT UNLOCK Qualifier . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19–66PROUTIL Utility . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19–67PROUTIL 2PHASE BEGIN Qualifier . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19–71PROUTIL 2PHASE COMMIT Qualifier . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19–73PROUTIL 2PHASE END Qualifier . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19–74PROUTIL 2PHASE MODIFY Qualifier . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19–75PROUTIL 2PHASE RECOVER Qualifier . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19–76PROUTIL BIGROW Qualifier . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19–77PROUTIL BULKLOAD Qualifier . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19–78PROUTIL BUSY Qualifier . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19–79PROUTIL CHANALYS Qualifier . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19–81PROUTIL CODEPAGE-COMPILER Qualifier . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19–82PROUTIL CONV89 Qualifier . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19–83PROUTIL CONVCHAR Qualifier . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19–84PROUTIL CONVFILE Qualifier . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19–87PROUTIL DBANALYS Qualifier . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19–89PROUTIL DBAUTHKEY Qualifier . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19–90PROUTIL DBIPCS Qualifier . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19–92PROUTIL DUMP Qualifier . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19–94PROUTIL DUMPSPECIFIED . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19–97PROUTIL ENABLELARGEFILES Qualifier . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19–99PROUTIL ENABLEPDR Qualifier . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19–100PROUTIL HOLDER Qualifier . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19–101PROUTIL IDXANALYS Qualifier . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19–103PROUTIL IDXBUILD Qualifier . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19–104PROUTIL IDXCHECK Qualifier . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19–107PROUTIL IDXCOMPACT Qualifier . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19–109PROUTIL IDXFIX Qualifier . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19–111PROUTIL IDXMOVE Qualifier . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19–114PROUTIL IOSTATS Qualifier . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19–116
  14. 14. ContentsxivPROUTIL LOAD Qualifier . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19–118PROUTIL MVSCH Qualifier . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19–121PROUTIL RCODEKEY Qualifier . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19–122PROUTIL TABANALYS Qualifier . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19–124PROUTIL TABLEMOVE Qualifier . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19–127PROUTIL TRUNCATE AREA Qualifier . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19–130PROUTIL TRUNCATE BI Qualifier . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19–132PROUTIL UPDATEVST Qualifier . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19–134PROUTIL WBREAK-COMPILER Qualifier . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19–135PROUTIL WORD-RULES Qualifier . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19–136RFUTIL Utility . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19–137RFUTIL AIMAGE AIOFF . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19–139RFUTIL AIMAGE BEGIN Qualifier . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19–140RFUTIL AIMAGE END Qualifier . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19–141RFUTIL AIMAGE EXTENT EMPTY Qualifier . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19–142RFUTIL AIMAGE EXTENT FULL Qualifier . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19–143RFUTIL AIMAGE EXTENT LIST Qualifier . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19–144RFUTIL AIMAGE NEW Qualifier . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19–145RFUTIL AIMAGE SCAN Qualifier . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19–146RFUTIL AIMAGE TRUNCATE Qualifier . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19–147RFUTIL MARK BACKEDUP Qualifier . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19–149RFUTIL ROLL FORWARD Qualifier . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19–150RFUTIL ROLL FORWARD RETRY Qualifier . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19–152SQLDUMP Utility . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19–154SQLLOAD Utility . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19–159SQLSCHEMA Utility . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19–16420. Virtual System Tables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20–120.1 Update Access To Virtual System Tables . . . . . . . . . . . . . . . . . . . . . . . 20–220.2 Virtual System Table Summaries . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20–220.3 Progress Virtual System Table Schema Descriptions . . . . . . . . . . . . . . 20–8A. Progress Monitor R&D Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A–1Accessing PROMON R&D Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A–2PROMON R&D Main Menu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A–4Menu Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A–7Status Displays→ Database . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A–10Status Displays→ Backup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A–13Status Displays→ Servers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A–14Status Displays→ Processes/Clients→ All Processes . . . . . . . . . . . . . . . . . . . . . . A–16Status Displays→ Processes/Clients→ Blocked Clients . . . . . . . . . . . . . . . . . . . . A–20Status Displays→ Processes/Clients→ Active Transactions . . . . . . . . . . . . . . . . . A–21Status Displays→ Processes/Clients→ Local Interactive Clients . . . . . . . . . . . . . . A–22Status Displays→ Processes/Clients→ Local Batch Clients . . . . . . . . . . . . . . . . . A–23
  15. 15. ContentsxvStatus Displays→ Processes/Clients→ Remote Clients . . . . . . . . . . . . . . . . . . . . A–24Status Displays→ Processes/Clients→ Background Processes . . . . . . . . . . . . . . A–25Status Displays→ Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A–26Status Displays→ Lock Table . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A–27Status Displays→ Buffer Cache . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A–29Status Displays→ Logging Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A–30Status Displays→ BI Log . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A–31Status Displays→ AI Log . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A–32Status Displays→ Two-phase Commit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A–33Status Displays→ Startup Parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A–34Status Displays→ Shared Resources . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A–36Status Displays→ Shared Memory Segments . . . . . . . . . . . . . . . . . . . . . . . . . . . A–38Activity Displays→ Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A–39Activity Displays→ Servers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A–43Activity Displays→ Buffer Cache . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A–44Activity Displays→ Page Writers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A–46Activity Displays→ BI Log . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A–48Activity Displays→ AI Log . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A–50Activity Displays→ Lock Table . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A–52Activity Displays→ I/O Operations By Type . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A–54Activity Displays→ I/O Operations By File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A–56Activity Displays→ Space Allocation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A–57Activity Displays→ Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A–59Activity Displays→ Record . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A–60Activity Displays→ Other . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A–62Other Displays→ Performance Indicators . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A–63Other Displays→ I/O Operations By Process . . . . . . . . . . . . . . . . . . . . . . . . . . . . A–65Other Displays→ Lock Requests By User . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A–66Other Displays→ Checkpoints . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A–67Administrative Functions→ Resolve Limbo Transactions . . . . . . . . . . . . . . . . . . . A–68Administrative Functions→ Adjust Latch Options . . . . . . . . . . . . . . . . . . . . . . . . . A–69Administrative Functions→ Adjust Page Writer Options . . . . . . . . . . . . . . . . . . . . A–70Administrative Functions→ Adjust Monitor Options . . . . . . . . . . . . . . . . . . . . . . . A–71B. Setting Up Progress To Utilize Compaq’s NT Clusters . . . . . . . . . . . . . . . . . . B–1B.1 Defining NT Clusters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B–2B.1.1 Cluster Administrator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B–2B.1.2 Failover Manager . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B–2B.2 Configuring the NT Cluster System . . . . . . . . . . . . . . . . . . . . . . . . . . . . B–4B.3 Progress Database Server Considerations and Configuration . . . . . . . B–5B.3.1 ProControl Command-line Interface . . . . . . . . . . . . . . . . . . . . B–6B.4 4GL Client Considerations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B–11Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Index–1
  16. 16. ContentsxviFiguresFigure 1–1: Version 9 Structure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1–2Figure 1–2: Physical Storage Model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1–5Figure 1–3: Logical Storage Model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1–6Figure 1–4: Federated Database Configuration . . . . . . . . . . . . . . . . . . . . . . .