enforce_storage_engine and debian-start, mysql_upgrade
Bug #1441087 reported by
Raghavendra D Prabhu
This bug affects 2 people
Affects | Status | Importance | Assigned to | Milestone | ||
---|---|---|---|---|---|---|
Percona Server moved to https://jira.percona.com/projects/PS | Status tracked in 5.7 | |||||
5.5 |
Triaged
|
Medium
|
Unassigned | |||
5.6 |
Triaged
|
Medium
|
Unassigned | |||
5.7 |
Invalid
|
Medium
|
Unassigned |
Bug Description
debian-start is invoked automatically on PS.
However, due to https:/
So, either
> Change debian-start to invoke with --skip-grant-tables for mysql_upgrade by default.
> Disable invocation of mysql_upgrade from debian-start
> Fix the issue in 1218664 (will file a separate issue, found something based on my investigation).
https:/ /bugs.launchpad .net/percona- server/ +bug/1236938 has been merged in newer versions.
So as per last comment in this bug, https:/ /bugs.launchpad .net/percona- server/ +bug/1218664
If using enforce- storage- engine, we must either disable it before doing mysql_upgrade or perform mysql_upgrade with server started with --skip- grants- tables. This changes is not done in debian-start yet.
nilnandan@ desktop: ~$ cat /etc/mysql/ debian- start
#!/bin/bash
#
# This script is executed by "/etc/init.d/mysql" on every (re)start.
#
# Changes to this file will be preserved when updating the Debian package.
#
PERCONA_PREFIX=/usr PREFIX} "/share/ mysql/debian- start.inc. sh
source "${PERCONA_
MYSQL=" ${PERCONA_ PREFIX} /bin/mysql --defaults- file=/etc/ mysql/debian. cnf" "${PERCONA_ PREFIX} /bin/mysqladmin --defaults- file=/etc/ mysql/debian. cnf" "${PERCONA_ PREFIX} /bin/mysql_ upgrade --defaults- extra-file= /etc/mysql/ debian. cnf" "${PERCONA_ PREFIX} /bin/mysqlcheck --defaults- file=/etc/ mysql/debian. cnf" SUBJECT= "WARNING: mysqlcheck has found corrupt tables" PARAMS= "--all- databases --fast --silent"
MYADMIN=
MYUPGRADE=
MYCHECK=
MYCHECK_
MYCHECK_
MYCHECK_RCPT="root"
# The following commands should be run when the server is up but in background for_crashed_ tables" out. system_ tables_ if_necessary; root_accounts; for_crashed_ tables;
# where they do not block the server start and in one shell instance so that
# they run sequentially. They are supposed not to echo anything to stdout.
# If you want to disable the check for crashed tables comment
# "check_
# (There may be no output to stdout inside the background process!)
echo "Checking for corrupt, not cleanly closed and upgrade needing tables."
(
upgrade_
check_
check_
) >&2 &
exit 0
nilnandan@desktop:~