From fdc57d7e7373414305172728966b8485e0a7b45c Mon Sep 17 00:00:00 2001 From: Pjotr Prins Date: Sun, 12 Nov 2023 09:12:02 +0100 Subject: Running mariadb in a container with the large DB --- topics/systems/mariadb/mariadb.gmi | 12 ++++++++--- .../mariadb/precompute-mapping-input-data.gmi | 25 +++++++++++++++++++++- 2 files changed, 33 insertions(+), 4 deletions(-) (limited to 'topics/systems/mariadb') diff --git a/topics/systems/mariadb/mariadb.gmi b/topics/systems/mariadb/mariadb.gmi index 56661b6..4000482 100644 --- a/topics/systems/mariadb/mariadb.gmi +++ b/topics/systems/mariadb/mariadb.gmi @@ -2,12 +2,16 @@ Here we capture some common actions -## Tags +To install Mariadb (as a container) see + +=> setting-up-local-development-database.gmi + +# Tags * type: info, documentation * keywords: mariadb, systems -## Check the transaction logs +# Check the transaction logs Start the client and: @@ -35,7 +39,7 @@ To get a log with some stuff filtered out try mysql -p -u webqtlout db_webqtl -e "SHOW BINLOG EVENTS IN 'gn0-binary-log.000014';" -r -s |grep -v -e "Access\|GTID\|INSERT_ID\|COMMIT\|Temp\|lastlogin\|LITERA\|flush\|ROLLBACK" ``` -## Update MariaDB on penguin2 to the latest production database +# Update MariaDB on penguin2 to the latest production database The MariaDB instance running on penguin2 needs to be periodically updated to the latest version of the database running on production. We do this by restoring backups of the production database stored on penguin2 into the penguin2 MariaDB database directory. Here's how. @@ -55,3 +59,5 @@ Stop the running mariadb-guix.service. Restore the latest backup archive and ove => https://www.borgbackup.org/ Borg => https://borgbackup.readthedocs.io/en/stable/ Borg documentation + +# diff --git a/topics/systems/mariadb/precompute-mapping-input-data.gmi b/topics/systems/mariadb/precompute-mapping-input-data.gmi index 091a4a3..20b23d4 100644 --- a/topics/systems/mariadb/precompute-mapping-input-data.gmi +++ b/topics/systems/mariadb/precompute-mapping-input-data.gmi @@ -687,10 +687,33 @@ Next we create a drop for the backups from another machine following: => ../backup_drops.gmi -Now we are copying the backup which takes a while over the slow network. +Copy the backup which takes a while over the slow network and unpack with the great tool borg +``` +time borg extract --progress /export/backup/bacchus/drop/tux01/borg-tux01::borg-backup-mariadb-20231111-06:39-Sat +``` + +Next install a recent Mariadb from guix as a container using the instructions in + +=> mariadb.gmi +=> setting-up-local-development-database.gmi + +move the database files into, for example, /export/mysql/var/lib/mysql. chown files to your user account. Next +``` +cd /export/mysql +mkdir tmp +mkdir run +tux04:/export/mysql$ ~/opt/guix-pull/bin/guix shell -C -N coreutils sed mariadb --share=/export/mysql/var=/var --share=/export/mysql/tmp=/tmp + export TMPDIR=/tmp + mysqld_safe --datadir='/var/lib/mysql/' --port=3307 --user=$USER --group=users --nowatch --socket=/var/run/mysqld/mysqld.sock +``` + +and a client with: +``` +/export/mysql$ ~/opt/guix-pull/bin/guix shell mysql -- mysql --socket=var/run/mysqld/mysqld.sock -uwebqtlout -pwebqtlout db_webqtl +``` -- cgit v1.2.3