When should I use this debian-start?
Use it to restore a missing default, confirm what shipped, or diff against your current MariaDB config.
#!/bin/bash
#
# This script is executed by both SysV init /etc/init.d/mariadb and
# systemd mariadb.service on every (re)start.
#
# Changes to this file will be preserved when updating the Debian package.
#
source /usr/share/mysql/debian-start.inc.sh
# Read default/mysql first and then default/mariadb just like the init.d file does
if [ -f /etc/default/mysql ]; then
. /etc/default/mysql
fi
if [ -f /etc/default/mariadb ]; then
. /etc/default/mariadb
fi
MYSQL="/usr/bin/mysql --defaults-extra-file=/etc/mysql/debian.cnf"
MYADMIN="/usr/bin/mysqladmin --defaults-extra-file=/etc/mysql/debian.cnf"
# Don't run full mysql_upgrade on every server restart, use --version-check to do it only once
MYUPGRADE="/usr/bin/mysql_upgrade --defaults-extra-file=/etc/mysql/debian.cnf --version-check --silent"
MYCHECK="/usr/bin/mysqlcheck --defaults-extra-file=/etc/mysql/debian.cnf"
MYCHECK_SUBJECT="WARNING: mysqlcheck has found corrupt tables"
MYCHECK_PARAMS="--all-databases --fast --silent"
MYCHECK_RCPT="${MYCHECK_RCPT:-root}"
## Checking for corrupt, not cleanly closed (only for MyISAM and Aria engines) and upgrade needing tables.
# The following commands should be run when the server is up but in background
# 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_for_crashed_tables" out.
# (There may be no output to stdout inside the background process!)
# Need to ignore SIGHUP, as otherwise a SIGHUP can sometimes abort the upgrade
# process in the middle.
trap "" SIGHUP
(
upgrade_system_tables_if_necessary;
check_root_accounts;
check_for_crashed_tables;
) >&2 &
exit 0
curl https://exampleconfig.com/api/v1/config/original/b3c25d750173f2d42a7cc062d76dd48a?hint=debian-start
wget -O debian-start https://exampleconfig.com/api/v1/config/original/b3c25d750173f2d42a7cc062d76dd48a?hint=debian-start
<prompt><role>DevOps agent</role><source url='https://exampleconfig.com/api/v1/config/original/b3c25d750173f2d42a7cc062d76dd48a?hint=debian-start' /><config><app>MariaDB</app><os>Debian 12 (Bookworm)</os><location>/etc/mysql/debian-start</location><lines>47</lines><md5>b3c25d750173f2d42a7cc062d76dd48a</md5><sha256>3641a1aa59f4a0557acd4df9abd4e89a500fd08b386bc64da90d6de38ac9632f</sha256></config></prompt>
Paste into Claude, ChatGPT, or any AI assistant.
sudo apk add mariadb
sudo apt update && sudo apt install mariadb-server
sudo yum install mariadb-server
sudo apt update && sudo apt install mariadb-server
When should I use this debian-start?
Use it to restore a missing default, confirm what shipped, or diff against your current MariaDB config.
How do I restore MariaDB defaults?
Download the file, back up the current one in /etc/mysql/debian-start, replace it, then reload or restart MariaDB.
Is debian-start safe for production?
It is the vendor default for Debian 12 (Bookworm). Treat it as a baseline and review security and performance settings before production use.
How does this differ from other OS versions?
Defaults vary by distro and version. This copy matches Debian 12 (Bookworm).
Can I use this for MariaDB troubleshooting?
Yes. Diff it against yours to find drift, then restore only the sections you need.