[debian-mysql] Bug#682849: mysql-server-5.5: Unable to upgrade from MySQL 5.1 because mysql_system_tables_fix.sql is not available and mysql_upgrade is too slow

Cyril Bouthors cyb at debian.org
Thu Jul 26 09:06:13 UTC 2012


Package: mysql-server-5.5
Version: 5.5.24+dfsg-5
Severity: important

Hi,

I just upgraded from MySQL 5.1 to 5.5 and our application broke because
mysql.proc looked corrupted:

"Cannot load from mysql.proc. The table is probably corrupted"

The previous MySQL upgrade from 5.0 to 5.1 had the same kind of issue which was
solved by:

mysql --defaults-file=/etc/mysql/debian.cnf -f mysql \
  < /usr/share/mysql/mysql_fix_privilege_tables.sql

mysql_fix_privilege_tables.sql is not available anymore in 5.5 because it was
hardcoded in /usr/bin/mysql_upgrade.

The problem is that mysql_upgrade runs *two* *full* mysqlchecks according to the
documentation and would take aproximately 2 to 3 days on the multi terabyte
database we are running, quoting man mysql_upgrade:

"mysql_upgrade executes the following commands to check and repair tables and to
 upgrade the system tables:

 mysqlcheck --all-databases --check-upgrade --auto-repair
 mysql < fix_priv_tables
 mysqlcheck --all-databases --check-upgrade --fix-db-names --fix-table-names"

I couldn't let the application down for 2-3 days and solved the issue by
running:

apt-get source mysql-server-5.5
mysql --defaults-file=/etc/mysql/debian.cnf -f mysql \
  < mysql-5.5-5.5.24+dfsg/scripts/mysql_system_tables_fix.sql

I would need this script on all my servers upgrading to MySQL 5.5 and would
prefer not to extract the source code everywhere.

Could you please include mysql_system_tables_fix.sql back in the Debian package
in /usr/share/mysql/ ?

Best regards,

-- System Information:
Debian Release: wheezy/sid
  APT prefers unstable
  APT policy: (500, 'unstable'), (500, 'testing'), (500, 'stable')
Architecture: amd64 (x86_64)

Kernel: Linux 3.2.0-3-amd64 (SMP w/4 CPU cores)
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash

Versions of packages mysql-server-5.5 depends on:
ii  adduser                3.113+nmu3
ii  debconf [debconf-2.0]  1.5.45
ii  initscripts            2.88dsf-29
ii  libc6                  2.13-35
ii  libdbi-perl            1.622-1
ii  libgcc1                1:4.7.1-5
ii  libstdc++6             4.7.1-5
ii  lsb-base               4.1+Debian7
ii  mysql-client-5.5       5.5.24+dfsg-5
ii  mysql-common           5.5.24+dfsg-5
ii  mysql-server-core-5.5  5.5.24+dfsg-5
ii  passwd                 1:4.1.5.1-1
ii  perl                   5.14.2-12
ii  psmisc                 22.19-1

Versions of packages mysql-server-5.5 recommends:
ii  bsd-mailx [mailx]      8.1.2-0.20111106cvs-1
ii  libhtml-template-perl  2.91-1

Versions of packages mysql-server-5.5 suggests:
pn  tinyca  <none>

-- debconf information:
  mysql-server/error_setting_password:
  mysql-server-5.5/postrm_remove_databases: false
  mysql-server-5.5/nis_warning:
  mysql-server-5.5/really_downgrade: false
  mysql-server-5.5/start_on_boot: true
  mysql-server/password_mismatch:
  mysql-server/no_upgrade_when_using_ndb:
-- 
 ,''`.
: :' :      Cyril Bouthors
`. `'         Debian.org
  `-



More information about the pkg-mysql-maint mailing list