@@ -4520,6 +4520,11 @@ __getCAPostgresNodes() {
45204520 "
45214521}
45224522
4523+ __getCAMySQLNodes() {
4524+ echo "
4525+ "
4526+ }
4527+
45234528__createSnapshot() {
45244529 cd "$FABLO_NETWORK_ROOT/.."
45254530 backup_dir="\${1:-"snapshot-$(date -u +"%Y%m%d%H%M%S")"}"
@@ -4539,11 +4544,17 @@ __createSnapshot() {
45394544 done
45404545
45414546 for node in $(__getCAPostgresNodes); do
4542- echo "Saving state of $node..."
4547+ echo "Saving state of $node (PostgreSQL) ..."
45434548 mkdir -p "$backup_dir/$node/pg-data"
45444549 docker exec "$node" pg_dump -c --if-exists -U postgres fabriccaserver >"$backup_dir/$node/fabriccaserver.sql"
45454550 done
45464551
4552+ for node in $(__getCAMySQLNodes); do
4553+ echo "Saving state of $node (MySQL)..."
4554+ mkdir -p "$backup_dir/$node/mysql-data"
4555+ docker exec -e MYSQL_PWD=caDbPass12345 "$node" mysqldump -u root --add-drop-database --databases fabriccaserver >"$backup_dir/$node/fabriccaserver.sql"
4556+ done
4557+
45474558 for node in $(__getOrdererAndPeerNodes); do
45484559 echo "Saving state of $node..."
45494560 docker cp "$node:/var/hyperledger/production/" "$backup_dir/$node/"
@@ -4579,7 +4590,16 @@ __cloneSnapshot() {
45794590 done
45804591
45814592 for node in $(__getCAPostgresNodes); do
4582- echo "Restoring $node..."
4593+ echo "Restoring $node (PostgreSQL)..."
4594+ if [ ! -d "$node" ]; then
4595+ echo "Warning: Cannot restore '$node', directory does not exist!"
4596+ else
4597+ docker cp "./$node/fabriccaserver.sql" "$node:/docker-entrypoint-initdb.d/fabriccaserver.sql"
4598+ fi
4599+ done
4600+
4601+ for node in $(__getCAMySQLNodes); do
4602+ echo "Restoring $node (MySQL)..."
45834603 if [ ! -d "$node" ]; then
45844604 echo "Warning: Cannot restore '$node', directory does not exist!"
45854605 else
0 commit comments