手动备份数据库
eval `grep MYSQL_PASS /opt/cdnhao/master/conf/config.py`;
eval `grep MYSQL_IP /opt/cdnhao/master/conf/config.py`;
eval `grep MYSQL_PORT /opt/cdnhao/master/conf/config.py`;
eval `grep MYSQL_DB /opt/cdnhao/master/conf/config.py`;
eval `grep MYSQL_USER /opt/cdnhao/master/conf/config.py`;
mysqldump -e --single-transaction --no-tablespaces --default-character-set=utf8 --skip-add-locks -R -f --max_allowed_packet=16777216 --net_buffer_length=16384 -h$MYSQL_IP -u$MYSQL_USER -p$MYSQL_PASS -P$MYSQL_PORT $MYSQL_DB --ignore-table=cdn.node_monitor_log > /root/cdn.sql;
mysqldump -d -e --single-transaction --no-tablespaces --default-character-set=utf8 --skip-add-locks -R -f --max_allowed_packet=16777216 --net_buffer_length=16384 -h$MYSQL_IP -u$MYSQL_USER -p$MYSQL_PASS -P$MYSQL_PORT $MYSQL_DB node_monitor_log >> /root/cdn.sql;
gzip /root/cdn.sql;
手动恢复数据库
假设数据库备份文件在/root/cdn.sql.gz,执行如下命令恢复
supervisorctl -c /opt/cdnhao/master/conf/supervisord.conf stop all;
eval `grep MYSQL_PASS /opt/cdnhao/master/conf/config.py`;
eval `grep MYSQL_IP /opt/cdnhao/master/conf/config.py`;
eval `grep MYSQL_PORT /opt/cdnhao/master/conf/config.py`;
eval `grep MYSQL_DB /opt/cdnhao/master/conf/config.py`;
eval `grep MYSQL_USER /opt/cdnhao/master/conf/config.py`;
mysql -h$MYSQL_IP -u$MYSQL_USER -p$MYSQL_PASS -P$MYSQL_PORT -e "drop database $MYSQL_DB;create database $MYSQL_DB;";
gunzip < /root/cdn.sql.gz | mysql -h$MYSQL_IP -u$MYSQL_USER -p$MYSQL_PASS -P$MYSQL_PORT $MYSQL_DB;
supervisorctl -c /opt/cdnhao/master/conf/supervisord.conf start all;
注意:/root/cdn.sql.gz换成你的备份文件路径