summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authoremkael <emkael@tlen.pl>2022-10-23 13:35:39 +0200
committeremkael <emkael@tlen.pl>2022-10-23 13:35:39 +0200
commitc340402fd77f6d4aed6029be8e2b7792d2f00bf0 (patch)
treeab48e44cdf1054cb529a776d89f2d7c7d04726f4
parentf7ed9ac02bc55e1d76b9c59b316e645aaf7284de (diff)
Docs and cron config for DB backups
-rw-r--r--README.md26
-rw-r--r--_cron/db-backup3
2 files changed, 28 insertions, 1 deletions
diff --git a/README.md b/README.md
index 0ebeb29..dbb6388 100644
--- a/README.md
+++ b/README.md
@@ -60,7 +60,7 @@ Zrzuty baz danych muszą zostać niezależnie pozyskane od sędziów poszczegól
Zmienne środowiskowe:
* `LIGA_MYSQL_CONNECTION_OPTS`: komplet przełączników polecenia `mysql` pozwalający podłączyć się do docelowego (lokalnego) serwera MySQL
- * `LIGA_S3_BUCKET`: URI wiaderka S3, w którym trzymane są zrzuty
+ * `LIGA_S3_BUCKET`: URI wiaderka S3, w którym trzymane są zrzuty - uwaga, obiekty z podkatalogów są ignorowane
Pliki konfiguracyjne:
@@ -68,6 +68,30 @@ Pliki konfiguracyjne:
* `dumps/.mapping`: mapowanie nazw plików zrzutów na docelowe bazy danych, do których zrzuty są wgrywane, każdy wiersz to jeden turniej, w każdym wierszu najpierw pojawia się nazwa bazy danych, a następnie, po odstępie, nazwa pliku relatywna względem `./dumps/` (domyślnie zrzuty trafiają do katalogu `./dumps/sync/`)
* `dumps/.queries`: spis poleceń SQL wykonywanych na każdej bazie danych po wgraniu jej do lokalnego serwera, po jednym poleceniu na wiersz
+## Kopie zapasowe lokalnych baz danych
+
+Moduł zrzuca do określonej ścieżki w S3 lokalne (z punktu widzenia koordynatora) bazy danych, może służyć np. do wykonywania kopii zapasowych baz butlerów ogólnopolskich.
+
+### Wymagania wstępne
+
+ * s3cmd
+ * klient MySQL z mysqldump
+
+### Wywołanie
+
+`make backups`
+
+### Konfiguracja
+
+Zmienne środowiskowe:
+
+ * `LIGA_MYSQL_CONNECTION_OPTS`: komplet przełączników polecenia `mysql` pozwalający podłączyć się do źródłowego (lokalnego) serwera MySQL
+ * `LIGA_S3_BACKUP_BUCKET`: URI wiaderka S3, w którym trzymane będą zrzuty
+
+Pliki konfiguracyjne:
+
+ * `dumps/.backup`: spis baz danych do zrzucenia z lokalnego serwera, po jednej bazie na wiersz
+
## Moduł butlera
Zbija wiele turniejów w jeden, w celu wyliczenia wspólnego butlera.
diff --git a/_cron/db-backup b/_cron/db-backup
new file mode 100644
index 0000000..9299af5
--- /dev/null
+++ b/_cron/db-backup
@@ -0,0 +1,3 @@
+SHELL=/bin/bash
+# */15 * * * * cd $SITEPATH && source .envrc && make backups >> $SITEPATH/_log/backup.log
+SHELL=/bin/sh