备份 MongoDB 数据

mongoip=$(kubectl -n zadig get po -owide|grep mongo|awk '{print $6}')
mongodump -h $mongoip --port 27017 -u root -p zadig -d zadig --authenticationDatabase admin -o ./

执行完成之后会在当前目录下生成zadig目录

备份 MySQL 数据

mysqlip=$(kubectl -n zadig get po -owide|grep mysql|awk '{print $6}')
mysqldump -h $mysqlip -P 3306 -uroot user -pzadig >user.sql
mysqldump -h $mysqlip -P 3306 -uroot dex -pzadig >dex.sql

--------------------------------------------------------------------------------

恢复 MongoDB 数据

mongoip=$(kubectl -n zadig get po -l app.kubernetes.io/component=mongodb -ojson | jq -r '.items[].status.podIP')
mongorestore -h $mongoip --port 27017 -u root -p zadig -d zadig --authenticationDatabase admin ./zadig
mongorestore -h $mongoip --port 27017 -u root -p zadig -d plutus_zadig --authenticationDatabase admin ./plutus_zadig
mongorestore -h $mongoip --port 27017 -u root -p zadig -d zadig_policy --authenticationDatabase admin ./zadig_policy
##-d zadig后面的mongo库名可以自己指定

恢复 MySQL 数据

登陆到新的mysql
mysqlip=$(kubectl -n zadig get po -l app.kubernetes.io/component=mysql -ojson | jq -r '.items[].status.podIP')
mysql -h $mysqlip -P 3306 -u root -pzadig
mysql> drop database user;
mysql> create database user;
mysql> drop database dex;
mysql> create database dex;
mysql> exit;
mysql -h $mysqlip -P 3306 -uroot user -p <user.sql
mysql -h $mysqlip -P 3306 -uroot dex -p <dex.sql
  • No labels