Related Information Examples & Tutorials

Dbanalyze Utility

This handy database analysis utility performs a check on each registered device in your Collect! system. It may be run while users are signed in and working. No need to get everyone out to check your system!

If errors are found, you can view the error log for each device and run a targeted fix on only the parts of your system that require this.

Dbanalyze performs a database check on each registered database in your Collect! system. It checks Records, Sets, Keys, and Blobs. You can also run the utility with a command line argument to check only the devices you specify.

The Dbanalyze utility ships with Collect! and may be found in the CV11\bin directory. With the CV11 Server running, simply double-click the dbanalyze.exe to start. The CV11 Server must be running and it is acceptable to have users signed in and using Collect! while the Dbanalyze utility is checking your Collect! system.

Although you can certainly run this in 'Shared mode' while other users are still using Collect!, you may find that it does slow down performance a bit depending on your overall environment.

tip.gif This utility is not recommended for very large sites. The RDM Server tools provide dbcheck.exe to do checks on specific targeted areas. DBanalyze may be run on specific devices to provide a more targeted solution.

tip.gif The Dbanalyze utility checks the Syscat database as well as all other registered devices. This is important because corruption in the syscat is hard to detect otherwise. Regular maintenance does not check the syscat database.

When the DBanalyze utility runs, it will display on the screen the name of the server it is logging into and the name of the device it is going to work on.

Specify Devices

If you want to tell Dbanalyze what devices to check, you can use a command line argument. This is a string with one or more devices specified.

Example:

dbanalyze masterdb,masterdb_a,syscat

tip.gif You can separate the device names with commas, but NO spaces.

Top of page.

Specify Server

If your CV11 Server is named something other than RDS, you can run dbanalyze with a command line argument specifying the name of the server.

Example:

dbanalyze masterdb -s RDM

The "-S" argument is NOT case sensitive.

If no server is specified, the default RDS is assumed.

Top of page.

Return Values

Dbanalyze returns 0 if the check was successful and no errors were detected. You will see message to this effect.

Dbanalyze returns 1 if errors are detected and the areas are displayed in the console.

Dbanalyze returns -1 ot the check failed. This may happen if the CV11 server disconnects while the utility is running.

Top of page.

Log Files

Results of running Dbanalyze are found in the CV11\catalog folder REPAIR files. There is a file for each registered device that was checked. If the files are 0 bytes, this indicates no errors in that registered device. If the files are not empty, you can open them to see the exact areas where corruption exists. Then a targeted FIX can be run to correct the errors.

Top of page.

Fixing Errors

When the Dbanalyze utility reports errors, you can run targeted fixes on separate databases. This is faster than running the Fix utility on your whole system.

Examples:

C:\CV11\bin> dbfix -a -L RDS;admin;secret d00_impex

When run from the command line, this will fix the masterdb impex database.

C:\CV11\bin> dbfix -a -L RDS;admin;secret syscat

When run from a command line, this will repair the catalog files. Regular maintenance does not touch these.

Top of page.

Summary

The Dbanalyze utility is a very efficient way to quickly check your Collect! system for errors. Database maintenance may be run automatically using the return values of Dbanalyze. For instance, only if errors are found, you may have a script that starts FIX automatically at a convenient time for you and your workers. Also, Dbanalyze logs a useful start and stop time stamp that may be used for troubleshooting. After Dbanalyze is run, you can even do an isolated FIX just on the area of the database that is damaged. This enables you to quickly detect and fix errors in your Collect! system.

Top of page.

See Also

- Database Maintenance Topics

Top of page.

Was this page helpful? Do you have any comments on this document? Can we make it better? If so how may we improve this page.

Please click this link to send us your comments: helpinfo@collect.org