Debian Sarge mysql start-up scripts but I think you will have to do as HappyTux stated but here they are to try.
/etc/mysql/debian-start
Code:
#!/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.
#
source /usr/share/mysql/debian-start.inc.sh
MYADMIN="/usr/bin/mysqladmin --defaults-file=/etc/mysql/debian.cnf"
MYCHECK="/usr/bin/mysqlcheck --defaults-file=/etc/mysql/debian.cnf"
MYCHECK_SUBJECT="WARNING: mysqlcheck has found corrupt tables"
MYCHECK_PARAMS="--all-databases --fast --silent"
# Put commands in the background if they should not block the server start.
(
mycheck;
) &
exit 0
/usr/share/mysql/debian-start.inc.sh
Code:
#!/bin/bash
#
# This file is included by /etc/mysql/debian-start
#
function mycheck() {
set -e
set -u
# Now, as the server seems to be up, check all unclosed tables.
# But do it in the background to not stall the boot process.
echo "Checking for crashed MySQL tables in the background."
logger -p daemon.info -i -t$0 "Checking for crashed MySQL tables."
# Checking for $? is unreliable so the size of the output is checked.
# Some table handlers like HEAP do not support CHECK TABLE.
tempfile=`tempfile`
LC_ALL=C $MYCHECK $MYCHECK_PARAMS \
2>&1 \
| perl -e '$_=join("", <>); s/^[^\n]+\n(error|note)\s+: The (handler|storage engine) for the table doesn.t support check\n//smg;print;' \
> $tempfile
if [ -s $tempfile ]; then
(
/bin/echo -e "\n" \
"Improperly closed tables are also reported if clients are accessing\n" \
"the tables *now*. A list of current connections is below.\n";
$MYADMIN processlist status
) >> $tempfile
mailx -e -s"$MYCHECK_SUBJECT" root < $tempfile
(echo "$MYCHECK_SUBJECT"; cat $tempfile) | logger -p daemon.warn -i -t$0
fi
rm $tempfile
}