* Fri Mar 07 2025 Jean-Philippe Pialasse <jpp@koozali.org> 11.0.0-9.sme

- upgrade to support mariadb 11.4 [SME: 12930]
  move mariadb-upgrade to mysql.init unit
  remove duplicate in 00_restore_dumped_dbs and 10mysql_upgrade,
  add a tmp.d for pid file, add post action dnf script
  update mariadb.service.d/ content, set default to utfmb4
- mysql.user table filtering [SME: 12592]

* Sun Jan 26 2025 Jean-Philippe Pialasse <jpp@koozali.org> 11.0.0-8.sme
- prestart script requires daemontools bins [SME: 12566]
This commit is contained in:
2025-03-08 23:59:18 -05:00
parent 040ed0e99f
commit de0996e198
8 changed files with 867 additions and 20 deletions

View File

@@ -1,3 +1,3 @@
#! /bin/sh
[ "$1" = "pre-restore" ] || exit 0
cd /var/lib/mysql && find . -type f | xargs rm -f

View File

@@ -40,14 +40,14 @@ do
mysqldump --ignore-table=mysql.event --single-transaction --add-drop-table -QB "$db" -r /home/e-smith/db/mysql/"$db".dump || onfailure $db
done
# dump user privileges
mysqldump --system=users --insert-ignore > /home/e-smith/db/mysql/system-users-priv.dump
mysqldump --system=users --insert-ignore > /home/e-smith/db/mysql/mysql.privileges.dump
# dump plugins
mysqldump --system=plugins --insert-ignore > /home/e-smith/db/mysql/system-plugins.dump
mysqldump --system=plugins --insert-ignore > /home/e-smith/db/mysql/mysql.plugins.dump
# dump udfs
mysqldump --system=udfs --insert-ignore > /home/e-smith/db/mysql/system-udfs.dump
mysqldump --system=udfs --insert-ignore > /home/e-smith/db/mysql/mysql.udfs.dump
# dump servers
mysqldump --system=servers --insert-ignore > /home/e-smith/db/mysql/system-servers.dump
mysqldump --system=servers --insert-ignore > /home/e-smith/db/mysql/mysql.servers.dump
# dump stats
mysqldump --system=stats --insert-ignore > /home/e-smith/db/mysql/system-stats.dump
mysqldump --system=stats --insert-ignore > /home/e-smith/db/mysql/mysql.stats.dump
# dump timezones
mysqldump --system=timezones --insert-ignore > /home/e-smith/db/mysql/system-timezones.dump
mysqldump --system=timezones --insert-ignore > /home/e-smith/db/mysql/mysql.timezones.dump

View File

@@ -10,7 +10,7 @@ fi
/bin/rm -f /home/e-smith/db/mysql/performance_schema.dump
if [ ! -f /var/lib/mysql/mysql/user.frm ]
then
for db in $(ls /home/e-smith/db/mysql/*.dump 2> /dev/null | grep -v '/mysql.dump')
for db in $(ls /home/e-smith/db/mysql/*.dump 2> /dev/null | grep -v '/mysql.dump'| grep -v '/mysql.privileges.dump')
do
mv $db /etc/e-smith/sql/init/01_$(basename $db .dump).sql
done

View File

@@ -1,6 +1,9 @@
#! /bin/sh
( cat /home/e-smith/db/mysql/mysql.dump ;
# we need to filter out mysql.user table from older mariadb and from mysql
# in SME10 we added for migration creation of mysql.privileges.dump with mariadb 10.5 and newer syntax
( /usr/bin/mysql_filter_user_table /home/e-smith/db/mysql/mysql.dump ;
[ -f /home/e-smith/db/mysql/mysql.privileges.dump ] && cat /home/e-smith/db/mysql/mysql.privileges.dump;
cat /var/lib/mysql.private/set.password ) | mysql || exit 1
/bin/rm /run/mariadb/mariadb.pid
/usr/bin/systemctl restart mariadb.service
@@ -9,6 +12,7 @@ do
if [ -f /run/mariadb/mariadb.pid ]
then
/bin/rm /home/e-smith/db/mysql/mysql.dump
[ -f /home/e-smith/db/mysql/mysql.privileges.dump ] /bin/rm /home/e-smith/db/mysql/mysql.privileges.dump
exit 0
fi
echo waiting for mysqld to restart