Control: reassign -1 src:mariadb
Control: tags -1 patch
Dear Otto, et al,
Thank you for your comments!
Untested patch for the "mysql.user table already exists!" error is attached.
Regarding the "mariadb.service changed on disk" warning,
I think it should be handled by dh_installsystemd.
This part of the rules file seems correct, but I am no expert:
212 # Define name used for service, and install mariadb.service
on Linux only
213 override_dh_installsystemd:
214 ifneq (,$(filter linux,$(DEB_HOST_ARCH_OS)))
215 dh_installsystemd -pmariadb-server mariadb.service
216 endif
Thank you!
Daniel Lewart
Urbana, Illinois
diff -ru a/mariadb-server.postinst b/mariadb-server.postinst
--- a/mariadb-server.postinst 2025-06-08 03:19:07.000000000 -0500
+++ b/mariadb-server.postinst 2025-07-05 00:00:00.000000000 -0500
@@ -183,20 +183,23 @@
touch "$mysql_datadir/debian-__MARIADB_MAJOR_VER__.flag"
# initiate databases. Output is not allowed by debconf :-(
- # This will fail if we are upgrading an existing database; in this case
+ # This will skip if we are upgrading an existing database; in this case
# mariadb-upgrade, called from the /etc/mysql/debian-start script, will
# handle things.
# Debian: beware of the bashisms...
# Debian: can safely run on upgrades with existing databases
# Workaround for Debian Bug #1022994: failure to create database when
# working with libpam-tmpdir (by setting TMPDIR to empty value).
- set +e
- TMPDIR='' bash /usr/bin/mariadb-install-db \
- --rpm --cross-bootstrap \
- --user=mysql --disable-log-bin \
- --skip-test-db 2>&1 |
- $ERR_LOGGER
- set -e
+ if [ ! -f "$mysql_datadir/mysql/user.frm" ]
+ then
+ set +e
+ TMPDIR='' bash /usr/bin/mariadb-install-db \
+ --rpm --cross-bootstrap \
+ --user=mysql --disable-log-bin \
+ --skip-test-db 2>&1 |
+ $ERR_LOGGER
+ set -e
+ fi
# On new installations root user can connect via unix_socket.
# But on upgrades, scripts rely on debian-sys-maint user and