VPS挂了怎么快速恢复?数据备份恢复和迁移的四步操作流程

故障评估→找备份→新机Docker快速恢复→切DNS/IP→日常准备清单
发布于
1

VPS突然抽风——SSH连不上、控制台显示”Unknown”、机房通知物理机故障。慌的时候容易把本来就复杂的事情搞得更乱。本文是一份冷静状态下写好的恢复清单——按步骤走,二十分钟内把服务迁到新机器上。

第一步:确认挂到什么程度

先别急着重建——确认故障范围:能ping通吗(网络层死还是服务器死);VNC能不能进(能进说明系统跑了但网络挂了);服务商状态页有没有公告(机房级别故障的话等他们修更快);机器是彻底死了还是只是CPU满载卡住了(重启试试)。

如果VNC能进、网络不通——检查网卡配置和防火墙;VNC都进不去——准备迁移,这台机大概率救不回来了。服务商说物理机故障——不等了直接迁。一般物理机故障的恢复窗口是几个小时到一两天的水平,线上业务等不起。

第二步:找备份——平时没做的现在也别想

如果之前按备份教程(第9篇ID 13526)做了自动备份——你现在应该能在另一台VPS或COS上找到最新的数据库备份文件和网站文件。如果没做备份——这是最糟糕的情况,尝试用VPS控制台的快照恢复(如果你开了自动快照),没有快照也没有备份文件——这次只能当教训了。

恢复后立刻给自己配三件事:数据库每天自动备份、文件每天rsync同步、每周服务器快照。

第三步:新机器快速重建环境

开一台新的VPS(雨云最快几分钟就位,优惠码 admin01 首月五折),按之前的部署方式恢复:

  • 用Docker部署的→在新机器上装Docker+拉之前的docker-compose.yml→docker compose up -d→几分钟恢复全部服务。这是Docker化最大的好处——环境可复现。
  • 手动部署的→按之前的笔记重新安装Nginx/PHP/MySQL→恢复配置文件(之前备份过的)→导入数据库→恢复网站文件。

手动部署的恢复时间一般是1-2小时(取决于你环境复杂度和有没有笔记),Docker化的一般15-30分钟。这就是为什么之前几篇教程都推荐Docker——灾难恢复快。

第四步:切DNS、改IP、通知用户

新机器跑起来了,最后一步让流量切过来:

  1. 改DNS:把你的域名A记录指向新VPS的IP→TTL设短一点(300秒)→等全球DNS生效(最长TTL过期时间)。如果之前TTL设的86400(一天),用户要等一天才能访问到新机器——这就是为什么重要域名的TTL应该设在600(10分钟)以内。
  2. 如果用了CDN(Cloudflare等):改CDN后台的源站IP为新的VPS IP,秒级生效不用等DNS。
  3. 发通知:如果有用户群或公告渠道,告知服务暂时中断恢复了。

减少恢复时间的日常准备

恢复时间取决于日常准备有多充分:

  1. 文档化部署步骤:每次在服务器上改了什么配置、装了什么软件,记到一个文本文件里。恢复时不用靠记忆从头摸索。
  2. 配置文件版本控制:nginx配置文件、docker-compose.yml放Git仓库(Gitea自建也行)。换个机器git clone+apply就能用。
  3. DNS TTL设短:重要域名的TTL别超过600秒。平时觉得一天86400秒省DNS查——故障时才知道短TTL的好。
  4. 冷备一台VPS:最便宜配置的VPS月付几块、装了Docker、配好了SSH密钥、备了docker-compose文件。主VPS挂了一键docker compose up -d就接管。成本几块钱、恢复时间几分钟。

常见问题

DNS改了之后有些人还是访问老IP?

DNS缓存——改DNS后最长要等原TTL那么多秒才全体生效。如果旧机器还能开、在上面用Nginx做301转发到新IP——这样没更新DNS的用户也能自动跳到新机器。

数据库太大恢复要几个小时?

几百MB级别的数据库用mysqldump恢复可能很慢——导入时关闭外键检查和外键约束能提速:SET FOREIGN_KEY_CHECKS=0; SET UNIQUE_CHECKS=0; 导入完改回去。十几GB以上的数据库建议用物理备份(xtrabackup)而不是逻辑备份(mysqldump)——恢复速度差好多。

机房故障换了IP,之前绑定的API白名单怎么办?

代理IP平台的API白名单、第三方服务(微信支付回调IP白名单、GitHub Webhook IP限制等)需要逐一更新。建议维护一个”IP变更checklist”列出所有绑定了VPS IP的服务——出故障时不用想破头漏了哪个。

本文由作者原创/授权发布于极跃圈(jiyueip.com)未经许可,禁止转载。题图来自Unsplash,基于CC0协议。

声明:极跃圈(JIYUEIP.com)内网友所发表的所有内容及言论仅代表其本人,并不反映任何极跃圈(JIYUEIP.com)之意见及观点。

0 讨论
热门最新
总结
暂无总结
0 / 600

VPS突然连不上,SSH断掉、网站打不开、面板也进不去——如果你正在经历这个,大概率是被DDoS了。这时候慌没用,按下面的步骤走,先止血再恢复。 怎么判断是不是DDoS攻击 不是所有的连不上都是DDoS。先排除几个常见情况:服务器欠费被停了

按网上的教程配了SSH密钥、禁了密码登录,结果退出后连不上了——这种翻车事故每年都在重复上演。本文把SSH配置中的常见翻车点和恢复方法系统讲一遍。 翻车一:改了配置文件重启SSH后连不上 最经典的翻车:改了/etc/ssh/sshd_con

VPS用着用着突然变卡,网站打开要好几秒、SSH敲命令有明显延迟——这种情况比完全断连更难排查。不是挂了,是慢了。本文用四个命令分别定位CPU、内存、磁盘IO和网络的瓶颈,告诉你性能卡在哪个环节。 排查前的第一步:确认不是自己的网络问题 很

一台VPS撑不住了——CPU跑满、带宽打满、偶尔502。这时候加配置是一条路,但单机的上限摆在那里。更灵活的做法是加机器做负载均衡:多台VPS分担流量,一台挂了其他继续服务。本文用Nginx反向代理搭建一个最基础的负载均衡方案,三台后端服务

便宜VPS选不好要么线路卡到怀疑人生、要么三天两头宕机丢数据。本文按四种典型需求——学生建站、游戏开服、Docker自托管和代理搭建——分别推荐五个性价比高的VPS,附实测数据和选购避坑点。 选VPS之前先搞清楚自己要什么 不同需求对VPS