Normally, the statistics database operates silently, behind the scenes of MOVEit Central, and requires no active maintenance on the part of the administrator to operate. Rarely, however, one or more database tables can become corrupted, which may prevent MOVEit Central from successfully logging task run information. These corruptions are often caused by unexpected reboots, such as during a power failure. They can also occur when backup programs make copies of database table files while the database server is running. When a database table is corrupted, it can no longer be accessed by the database server until it has been repaired.
If you think you have had, or may be having a database corruption problem, the first thing to check is the log output. MOVEit Central accesses the database several times during a typical task run, and when serious database problems occur, they are always written to the running log, which is accessible from MOVEit Central Admin and from the local system. Here is an example of a table corruption error that would be found in the log:
Task "My Task": Could not log task end: [TCX][MyODBC]Can't open file: 'stats.MYD'. (errno: 145)
If database errors have occurred and you are using MySQL as the database engine, there are steps you can take to repair the database.
Recent versions of MOVEit Central have enabled a database option which automatically repairs tables that it finds corrupted, meaning most of these occurrences come and go with hardly any notice by end users. Though no action on the part of the administrators is required in these cases, administrators may wish to keep informed of any such happenings. Information is logged by the database server when such corruptions occur, and when they are automatically repaired. Look for this log information in the \mysql\data directory of your MOVEit Central server. It will be stored in a file named HOSTNAME.err, where HOSTNAME is the name of the server. A typical corruption detection and repair event will be logged like this:
041122 1:13:58 read_const: Got error 134 when reading table ./micstats/stats 041122 1:14:00 read_const: Got error 134 when reading table ./micstats/stats 041122 1:41:46 Warning: Checking table: './micstats/stats' 041122 1:41:46 Warning: Recovering table: './micstats/stats'
In the very rare case that the automatic table repair functionality fails, you will need to repair the table manually. It is not necessary to stop the MOVEit Central service or the MySQL service during the manual repair process. In fact, the MySQL service MUST be running for this sequence of commands to succeed.
To manually repair a database table, open a command-prompt on your Central system and log in to the MySQL server using the "root" account created during the Central installation. To log onto the MySQL server using root, cd to your \mysql\bin directory and issue this command:
mysql --user=root --password=YOUR_ROOT_PASSWORD micstats
Once logged in, execute the CHECK TABLE command against the table you believe has been corrupted, like so:
CHECK TABLE stats;
This command will typically generate several lines of information. The last line will tell you the status of the table. If the CHECK response indicates the table needs to be repaired, issue the repair command like so:
REPAIR TABLE stats;
This may take several minutes, depending on the size of the table, and generate several lines of output. If the repair was successful, the last line of output will contain a status message of "OK".
If the manual repair process was unsuccessful after several tries, contact MOVEit support for assistance.
SQL Server generally does not require manual repair of database tables. If you encounter database problems with SQL Server as your database, contact your database administrator, or MOVEit support.