mirror of
git://f0xx.org/ac/ac-deploy
synced 2026-07-29 02:57:38 +03:00
initial
This commit is contained in:
33
sim/cluster0/scripts/mariadb-primary.sh
Normal file
33
sim/cluster0/scripts/mariadb-primary.sh
Normal file
@@ -0,0 +1,33 @@
|
||||
#!/bin/sh
|
||||
# Configure cast01 as MariaDB GTID primary. Idempotent-ish.
|
||||
set -eu
|
||||
SHARED=/shared/cluster
|
||||
CREDS="$SHARED/credentials.txt"
|
||||
REPL_USER="$(awk '/^\[mariadb_replication\]/{f=1;next} /^\[/{f=0} f&&/^user=/{print substr($0,6); exit}' "$CREDS")"
|
||||
REPL_PASS="$(awk '/^\[mariadb_replication\]/{f=1;next} /^\[/{f=0} f&&/^password=/{print substr($0,10); exit}' "$CREDS")"
|
||||
APP_USER="$(awk '/^\[mariadb_app\]/{f=1;next} /^\[/{f=0} f&&/^user=/{print substr($0,6); exit}' "$CREDS")"
|
||||
APP_PASS="$(awk '/^\[mariadb_app\]/{f=1;next} /^\[/{f=0} f&&/^password=/{print substr($0,10); exit}' "$CREDS")"
|
||||
|
||||
[ "$(hostname -s)" = cast01 ] || { echo "run on cast01 only"; exit 1; }
|
||||
|
||||
grep -q '^skip-networking' /etc/my.cnf.d/mariadb-server.cnf && \
|
||||
sed -i 's/^skip-networking/#skip-networking/' /etc/my.cnf.d/mariadb-server.cnf
|
||||
|
||||
install -D -m 644 "$SHARED/mariadb/primary.cnf" /etc/my.cnf.d/lab-cluster-primary.cnf
|
||||
rc-update add mariadb default 2>/dev/null || true
|
||||
rc-service mariadb restart
|
||||
|
||||
mariadb -u root <<SQL
|
||||
CREATE USER IF NOT EXISTS '${REPL_USER}'@'10.7.16.%' IDENTIFIED BY '${REPL_PASS}';
|
||||
GRANT REPLICATION SLAVE, REPLICATION CLIENT, RELOAD, LOCK TABLES, SELECT, SHOW VIEW, EVENT, TRIGGER ON *.* TO '${REPL_USER}'@'10.7.16.%';
|
||||
CREATE USER IF NOT EXISTS '${APP_USER}'@'10.7.16.%' IDENTIFIED BY '${APP_PASS}';
|
||||
CREATE USER IF NOT EXISTS '${APP_USER}'@'localhost' IDENTIFIED BY '${APP_PASS}';
|
||||
GRANT ALL PRIVILEGES ON androidcast_crashes.* TO '${APP_USER}'@'10.7.16.%';
|
||||
GRANT ALL PRIVILEGES ON androidcast_crashes.* TO '${APP_USER}'@'localhost';
|
||||
GRANT ALL PRIVILEGES ON url_shortener.* TO '${APP_USER}'@'10.7.16.%';
|
||||
GRANT ALL PRIVILEGES ON url_shortener.* TO '${APP_USER}'@'localhost';
|
||||
FLUSH PRIVILEGES;
|
||||
SQL
|
||||
|
||||
echo "primary_ok server_id=$(mariadb -u root -N -e 'SELECT @@server_id')"
|
||||
echo "gtid=$(mariadb -u root -N -e 'SELECT @@gtid_current_pos')"
|
||||
Reference in New Issue
Block a user