宝塔面板如何利用自动化脚本实现环境的一键平滑迁移?

2次阅读

可通过宝塔面板迁移工具或 bt 命令行脚本实现网站环境完整同步:一、用官方迁移插件打包导出再自动还原;二、用 bt 命令导出配置、数据库和文件,上传后批量导入。

宝塔面板如何利用自动化脚本实现环境的一键平滑迁移?

如果您需要将现有服务器上的网站环境完整迁移到新服务器,同时避免服务中断或配置错误,则可通过宝塔面板的自动化脚本实现配置、数据与权限的一致性同步。以下是实现该目标的具体操作路径:

一、使用宝塔官方迁移工具脚本

宝塔面板内置的迁移插件可导出完整站点配置、数据库、SSL 证书及文件权限信息,并生成可复用的部署脚本,适用于同版本面板间迁移。

1、登录原服务器宝塔面板,在【软件商店】中搜索并安装“迁移工具”插件。

2、进入插件界面,点击【一键打包】,勾选需迁移的网站、数据库、FTP 账号及计划任务。

3、设置压缩包保存路径,点击【开始打包】,完成后下载生成的。tar.gz 文件。

4、在新服务器安装相同版本宝塔面板,上传该压缩包至 /www/backup 目录。

5、执行命令:bash /www/server/panel/install/migrate.sh /www/backup/xxx.tar.gz,等待自动解压、还原与服务重启。

二、基于 bt 命令行的自定义同步脚本

通过宝塔提供的 bt 命令行工具,可编写 Shell 脚本批量导出与导入关键资源,绕过 Web 界面限制,提升迁移可控性与可重复性。

1、在原服务器执行:bt 10,导出所有网站配置为 /www/backup/site_conf.json。

2、执行:mysqldump -u root -p –all-databases > /www/backup/all_db.sql,备份全部数据库。

3、执行:tar -zcf /www/backup/wwwroot.tar.gz -C /www/wwwroot .,打包网站根目录(保留符号链接与权限)。

4、将三个文件上传至新服务器对应路径后,依次运行:bt 11 /www/backup/site_conf.jsonmysql -u root -p tar -zxf /www/backup/wwwroot.tar.gz -C /www/wwwroot

5、最后执行:bt 13 重载所有 Web 服务配置。

三、利用 rsync 结合配置模板实现增量平滑切换

适用于高可用场景,通过 rsync 实时同步网站文件,并在 DNS 切换前完成最终一致性校验,确保迁移过程无感知。

1、在新服务器安装宝塔面板并创建同名网站(不启用),记录其 Nginx 配置路径如 /etc/nginx/conf.d/www.example.com.conf。

2、在原服务器编写同步脚本,包含以下核心命令:rsync -avz –delete –exclude=’*.log’ –exclude=’.user.ini’ /www/wwwroot/example.com/ root@new_ip:/www/wwwroot/example.com/

3、同步数据库时使用:mysqldump -u root -p example_db | ssh root@new_ip “mysql -u root -p example_db”,避免锁表影响线上。

4、在新服务器复制原 Nginx 配置中的 location 块与 SSL 参数,覆盖默认配置,执行:nginx -t && systemctl reload nginx 验证语法与热加载。

5、修改本地 hosts 文件指向新 IP 测试访问,确认无误后更新 DNS TTL 至 300 秒,再切换全局解析。

text=ZqhQzanResources