I recently needed to reboot a server with a huge uptime (unfortunately I didn't write it down) where an old CMS system (OpenCMS version 7.0.x) was running on an old Tomcat (5) on an old OS (Solaris 10) running on old hardware (HP DL 380 G5).

The good news first: The hardware didn't have any issues and booted as it should have.
The bad news: The web-application running on Tomcat didn't start up correctly anymore.

catalina.out showed the following entries in the last lines of the log:

Starting OpenCms, version 7.0.5 in web application "ROOT"

Copyright (c) 2007 Alkacon Software GmbH
OpenCms comes with ABSOLUTELY NO WARRANTY
This is free software, and you are welcome to
redistribute it under certain conditions.
Please see the GNU Lesser General Public Licence for
further details.

According to a mailing list post (for OpenCms 8.0.3 though), such an error message usually has something to do with a database problem. But unfortunately that was all the information I could find - at least in catalina.out.

But after a "find . -mtype 0" showed me that another log file was written: /export/home/tomcat/webapps/ROOT/WEB-INF/logs/opencms.log.
In this log file, the following error was shown, when I restarted Tomcat:

Caused by: java.sql.SQLException: Table './cmsdb/CMS_USERDATA' is marked as crashed and should be repaired
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:946)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:2985)
at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:1631)
at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:1723)
at com.mysql.jdbc.Connection.execSQL(Connection.java:3256)
at com.mysql.jdbc.PreparedStatement.executeInternal(PreparedStatement.java:1313)
at com.mysql.jdbc.PreparedStatement.executeQuery(PreparedStatement.java:1448)
at org.apache.commons.dbcp.DelegatingPreparedStatement.executeQuery (DelegatingPreparedStatement.java:93)
at org.apache.commons.dbcp.DelegatingPreparedStatement.executeQuery (DelegatingPreparedStatement.java:93)
at org.opencms.db.generic.CmsUserDriver.readUserInfos(CmsUserDriver.java:1449)
... 34 more

Here we have our database error! That makes much more sense now. So I manually checked this table: