[mythtv-users] hosed database (again)

Michael T. Dean mtdean at thirdcontact.com
Wed May 5 21:12:54 UTC 2010


On 05/05/2010 04:30 PM, Mike McMullin wrote:
>    I'm not sure how this happened but my database is once again hosed.
>
> When I try and start mysql I'm seeing these errors:
> Running 'mysqlcheck'...
> mysql.columns_priv                                 OK
> mysql.db                                           OK
> mysql.event                                        OK
> mysql.func                                         OK
> mysql.general_log
> Error    : Can't find file: 'general_log' (errno: 2)
> error    : Corrupt
> mysql.help_category                                OK
> mysql.help_keyword                                 OK
> mysql.help_relation                                OK
> mysql.help_topic                                   OK
> mysql.host                                         OK
> mysql.ndb_binlog_index                             OK
> mysql.plugin                                       OK
> mysql.proc                                         OK
> mysql.procs_priv                                   OK
> mysql.servers                                      OK
> mysql.slow_log
> Error    : Can't find file: 'slow_log' (errno: 2)
> error    : Corrupt
>
> mythconverg.phonedirectory                         OK
> : mythconverg.pidcache                               OK
> Got error: 1102: Incorrect database name 'mythconverg.11-02-2009' when
> selecting
>   the databasemythconverg.playgroup                              OK
>
> mythconverg.videosource                            OK
> mythconverg.videotypes                             OK
> mythconverg.websites                               OK
> FATAL ERROR: Upgrade failed
>
>
> P-733-Lin:/etc/init.d # mysql -umythtv -p mythconverg -e 'status'
> Enter password:
> ERROR 2002 (HY000): Can't connect to local MySQL server through socket
> '/var/lib
> /mysql/mysql.sock' (2)
>
> P-733-Lin:/mnt/LinVideo/mythtv/weekly/mythconverg # rpm -qa | grep mysql
> libmysqlclient_r15-5.0.67-19.2
> mysql-client-5.0.67-12.17.7
> mysql-query-browser-5.0r12-218.11
> qt3-mysql-3.3.8b-87.11
> libmysqlclient15-5.0.67-19.2
> libmysqlclient_r16-5.1.34-29.1
> libqt4-sql-mysql-4.4.3-11.8.1
> libgda-3_0-mysql-3.1.2-82.42
> mysql-administrator-5.0r12-218.11
> php5-mysql-5.2.12-0.1.1
> mysql-tools-5.0.67-19.2
> python-mysql-1.2.2-1.116
> libmysqlclient16-5.1.34-29.1
> mysql-workbench-5.0r12-218.11
> mysql-5.0.67-12.17.7
> mysql-gui-tools-5.0r12-218.11
> perl-DBD-mysql-4.010-1.1.1
>
> P-733-Lin:/mnt/LinVideo/mythtv/weekly/mythconverg # rpm -qa | grep
> mythtv
> mythtv-frontend-0.21-28.pm.33.1
> mythtv-transcode-0.21-28.pm.33.1
> mythtv-setup-0.21-28.pm.32.11
> mythtv-doc-0.21-28.pm.33.1
> mythtv-backend-0.21-28.pm.33.1
> mythtv-themes-0.21-28.pm.33.1
>
> I get the following in the log file from: mysqld.log-20100503
>
>
> 100504 23:54:15 [ERROR] /usr/sbin/mysqld: Table './mythconverg/mythlog'
> is marked as crashed and should be repaired
> 100504 23:54:15 [ERROR] /usr/sbin/mysqld: Table './mythconverg/mythlog'
> is marked as crashed and should be repaired
> 100504 23:58:50 [Note] /usr/sbin/mysqld: Normal shutdown
>
> 100504 23:58:50  InnoDB: Starting shutdown...
> 100504 23:58:51  InnoDB: Shutdown completed; log sequence number 0 67529
> 100504 23:58:51 [Note] /usr/sbin/mysqld: Shutdown complete
>
> I get the following in the log file from: mysqld.log-2010429
>
> 100428 16:21:22  mysqld ended
>
> 100428 17:36:17  mysqld started
> 100428 17:36:19  InnoDB: Started; log sequence number 0 67529
> 100428 17:36:20 [Note] /usr/sbin/mysqld: ready for connections.
> Version: '5.0.67'  socket: '/var/lib/mysql/mysql.sock'  port: 3306  SUSE
> MySQL RPM
> 100428 18:01:01  mysqld started
> 100428 18:01:08  InnoDB: Started; log sequence number 0 67529
> 100428 18:01:08 [Note] /usr/sbin/mysqld: ready for connections.
> Version: '5.0.67'  socket: '/var/lib/mysql/mysql.sock'  port: 3306  SUSE
> MySQL RPM
> 100428 18:01:22 [Note] /usr/sbin/mysqld: Normal shutdown
>
> 100428 18:01:22  InnoDB: Starting shutdown...
> 100428 18:01:23  InnoDB: Shutdown completed; log sequence number 0 67529
> 100428 18:01:23 [Note] /usr/sbin/mysqld: Shutdown complete
>
> 100428 18:01:23  mysqld ended
>
> 100428 18:40:03  mysqld started
> 100428 18:40:05  InnoDB: Started; log sequence number 0 67529
> 100428 18:40:06 [Note] /usr/sbin/mysqld: ready for connections.
> Version: '5.0.67'  socket: '/var/lib/mysql/mysql.sock'  port: 3306  SUSE
> MySQL RPM
> 100428 18:55:43 [ERROR] /usr/sbin/mysqld: Incorrect key file for table
> './mythconverg/mythlog.MYI'; try to repair it
> 100428 18:56:43 [ERROR] /usr/sbin/mysqld: Sort aborted
> 100428 18:56:43 [ERROR] /usr/sbin/mysqld: Sort aborted
> 100428 18:56:43 [ERROR] /usr/sbin/mysqld: Sort aborted
> 100428 18:56:44 [ERROR] /usr/sbin/mysqld: Sort aborted
> 100428 18:58:44 [ERROR] /usr/sbin/mysqld: Sort aborted
>
>    Which turns into:
>
> 100429  4:57:53 [ERROR] /usr/sbin/mysqld: Sort aborted
> 100429  4:58:33 [ERROR] /usr/sbin/mysqld: Sort aborted
> 100429  4:59:39 [Note] /usr/sbin/mysqld: Normal shutdown
>
> 100429  4:59:39  InnoDB: Starting shutdown...
> 100429  4:59:40  InnoDB: Shutdown completed; log sequence number 0 67529
> 100429  4:59:40 [Note] /usr/sbin/mysqld: Shutdown complete
>
> 100429 04:59:41  mysqld ended
>
> 100429 11:06:19  mysqld started
> 100429 11:06:21  InnoDB: Started; log sequence number 0 67529
> 100429 11:06:22 [Note] /usr/sbin/mysqld: ready for connections.
> Version: '5.0.67'  socket: '/var/lib/mysql/mysql.sock'  port: 3306  SUSE
> MySQL RPM
> 100429 11:06:34 [ERROR] /usr/sbin/mysqld: Table './mythconverg/mythlog'
> is marked as crashed and should be repaired
> 100429 11:06:34 [ERROR] /usr/sbin/mysqld: Table './mythconverg/mythlog'
> is marked as crashed and should be repaired
> 100429 11:06:35 [ERROR] /usr/sbin/mysqld: Table './mythconverg/mythlog'
> is marked as crashed and should be repaired
> 100429 11:06:35 [ERROR] /usr/sbin/mysqld: Table './mythconverg/mythlog'
> is marked as crashed and should be repaired
> 100429 11:06:41 [ERROR] /usr/sbin/mysqld: Table './mythconverg/mythlog'
> is marked as crashed and should be repaired
> 100429 11:06:41 [ERROR] /usr/sbin/mysqld: Table './mythconverg/mythlog'
> is marked as crashed and should be repaired
> 100429 11:06:42 [ERROR] /usr/sbin/mysqld: Table './mythconverg/mythlog'
> is marked as crashed and should be repaired
>
>    And this is from todays session:
>
> 100504 23:58:51  mysqld ended
>
> 100505 05:35:38  mysqld started
> 100505  5:35:40  InnoDB: Started; log sequence number 0 67529
> 100505  5:35:40 [Note] /usr/sbin/mysqld: ready for connections.
> Version: '5.0.67'  socket: '/var/lib/mysql/.protected/mysql.sock'  port:
> 0  SUSE MySQL RPM
> 100505  5:35:44 [Note] /usr/sbin/mysqld: Normal shutdown
>
> 100505  5:35:46  InnoDB: Starting shutdown...
> 100505  5:35:46  InnoDB: Shutdown completed; log sequence number 0 67529
> 100505  5:35:46 [Note] /usr/sbin/mysqld: Shutdown complete
>
> 100505 05:35:47  mysqld ended
>
>
>
>    I know it was working Tuesday as I watched something that I had
> recorded Monday Night, and the only thing that I know of that changed
> was a security update in mysql just a couple of hours ago.
>
>    What on earth am I looking at in terms of a problem and how do I fix
> this mess?
>    

This looks like your system upgraded mysql versions and didn't run the 
mysql_upgrade script, which upgrades the binary data files.

I would fix it by deleting the entire mysql data file directory 
structure, then re-initializing the database server (with 
mysql_install_db ), then restoring my mythconverg backup.  That would be 
the over kill approach.

If you don't want to do it that way, you can see if running 
mysql_upgrade fixes it.  Make sure you also run a mysqlcheck after 
mysql_upgrade, just in case.  If that doesn't work, I recommend talking 
with either some people using your distro or some people who know MySQL.

In general, any time you (or your distro) change the MySQL server, you 
should ensure you've made a nice backup of your MythTV database (and, 
really, any other databases you have) before making those changes.  See 
http://www.mythtv.org/wiki/Database_Backup_and_Restore for info on using 
the MythTV backup script to create a backup of the MythTV database.

Mike


More information about the mythtv-users mailing list