宝塔面板怎么迁移到新服务器

juming
juming 正式会员超兽战士
发布于 2026-10-07 10:13 ·0 浏览 ·0 回复

照着这篇做完,你能把旧服务器上的宝塔面板连同网站、数据库、SSL 证书完整搬到新服务器,并且把停机时间压到十几分钟以内。

第一步:在新服务器上装好同版本的宝塔面板

这一步的目标是让新服务器具备"接收"能力——有个能登录的面板,并且版本不比旧服务器低。打开旧服务器面板,右上角能看到当前版本号(比如 9.2.0),记下来。

然后登录新服务器 SSH,到 bt.cn 官网首页点「立即安装」,复制对应系统的安装命令执行。例如 CentOS 7/8 的命令形如:

url=https://download.bt.cn/install/install_lts.sh
curl -sSO $url && bash install_lts.sh ed8484bec

装完后终端会打印面板地址、用户名、密码,浏览器打开 http://新服务器IP:8888 登录。

注意:新服务器的面板端口必须在云厂商控制台放行。阿里云是「安全组 → 入方向 → 手动添加」,腾讯云是「防火墙 → 添加规则」,协议 TCP,端口 8888(或你自定义的端口),来源 0.0.0.0/0。

第二步:把两边的运行环境对齐

这一步决定迁移后网站能不能直接跑起来。在新服务器面板左侧点「软件商店 → 已安装」,逐个核对旧服务器的版本号:

  • Web 服务器:Nginx 或 Apache,主版本要一致(Nginx 1.24 对 Nginx 1.24)
  • 数据库:MySQL 5.7 / 8.0 必须完全一致,跨大版本迁移必翻车
  • PHP:站点用的哪个版本就装哪个,5.6、7.4、8.1 可以并存
  • PHP 扩展:fileinfo、redis、imagick、opcache 这些按旧服务器「软件商店 → PHP → 设置 → 安装扩展」补齐

注意:MySQL 从 5.7 迁到 8.0 时,旧库里的 utf8 字符集和 NO_ZERO_DATE 默认值会直接导致导入报错。宁可新服务器装低版本,也不要硬上高版本。

第三步:用官方「一键迁移」插件搬数据(推荐)

这是最省事的路径,能自动同步网站文件、数据库、FTP、计划任务。

先在新服务器操作:左侧「软件商店」→ 搜索框输入「迁移」→ 找到「宝塔一键迁移API版本」→ 点「安装」。装好后点「设置」,页面里点「生成密钥」,记下三个值:新服务器 IP、面板端口、API 密钥。

再回到旧服务器,同样在「软件商店」安装「宝塔一键迁移API版本」,打开设置,填写刚刚记下的三个值,点「下一步」。勾选要迁移的站点、数据库、FTP、计划任务,点「开始迁移」,等进度条走完。

注意:迁移过程中两台服务器的面板都不能关、SSH 不能断。如果卡在某个站点超过 5 分钟,多半是大文件或数据库锁表,可以先跳过它,后面单独用第四步手动搬。

第四步:手动补充迁移没搬过去的东西

一键迁移通常漏掉这几样,需要手动处理:

SSL 证书:旧服务器「网站 → 站点 → SSL」,如果证书是手动上传的,把证书内容和私钥复制出来,在新服务器同位置重新粘贴保存。

伪静态和重定向规则:旧服务器「网站 → 站点 → 设置 → 伪静态」,复制规则文本,到新服务器同位置粘贴。

计划任务:旧服务器「计划任务」列表里逐条截图,在新服务器照着新建,特别是备份脚本和定时 URL 访问。

如果整个站点都没迁成功,用 rsync 整目录传:

rsync -avz -e "ssh -p 22" /www/wwwroot/你的域名/ root@新服务器IP:/www/wwwroot/你的域名/

数据库单独导出导入:


mysqldump -u root -p 数据库名 > /tmp/db.sql
# 传到新服务器后导入
mysql -u root -p 数据库名 < /tmp/db.sql

第五步:切解析前先本地验证

别急着改 DNS。先在自己电脑上改 hosts 文件,把域名指向新服务器 IP:

  • Windows:C:\Windows\System32\drivers\etc\hosts
  • macOS / Linux:/etc/hosts

加一行 新服务器IP 你的域名,保存后浏览器访问,重点看首页、后台登录、图片、表单提交是否正常。

确认无误后,去域名服务商控制台把 A 记录改成新服务器 IP。等解析生效(一般 10 分钟到 2 小时),用 ping 你的域名 确认指向新 IP。

注意:切换前先确认新服务器的防火墙放行了 80 和 443 端口,否则解析切过去会直接打不开。旧服务器先别关机,观察 24 小时再退租。

小结

  • 新服务器装同版本或更高版本的宝塔面板,先放行 8888 端口
  • Nginx/Apache、MySQL、PHP 版本必须和旧服务器对齐,MySQL 大版本不能跳
  • 优先用「宝塔一键迁移API版本」插件,新服务器生成密钥、旧服务器填写发起
  • 迁移后手动补 SSL 证书、伪静态规则、计划任务
  • 改 hosts 本地验证通过后,再切 DNS 解析,旧服务器保留 24 小时
版权声明:本文来自 GJ站长论坛《宝塔面板怎么迁移到新服务器》
原文链接:https://www.gj0.com/thread-224.html
转载请注明出处并保留本声明;内容仅代表作者观点,与本站立场无关。若本文涉嫌侵权,请联系本站处理。

全部回复 0

还没有回复,来抢沙发~