将旧服务器站点迁移至 RAKsmart 站群服务器,核心是先备份、再对齐环境、同步数据、配置站点、最后 DNS 切换,全程可实现低停机甚至无缝迁移,适配多站点批量迁移场景。RAK站群实操为您整理发布旧服务器站点迁移至 RAKsmart 站群服务器完整教程。

一、迁移前准备(关键前置步骤)
1. 记录旧服务器环境信息
- 操作系统:CentOS 7/8、Ubuntu 20.04/22.04 等
- Web 服务:Nginx/Apache 版本、虚拟主机配置、伪静态规则
- 运行环境:PHP 版本(7.4/8.0/8.1)、MySQL/MariaDB 版本、扩展组件(如 fileinfo、gd、redis)
- 站点信息:域名列表、网站根目录路径、数据库名 / 账号 / 密码、SSL 证书文件路径
2. 备份旧服务器数据(必做)
(1)备份网站文件
- 打包压缩:
tar -zcvf website_backup.tar.gz /网站根目录路径(如/www/wwwroot/xxx.com) - 或用
rsync本地备份:rsync -avz /网站根目录/ /本地备份路径/
(2)备份数据库
- MySQL/MariaDB:
mysqldump -u 数据库用户名 -p 数据库名 > database_backup.sql(输入密码后导出) - 多数据库批量备份:
for db in $(mysql -u root -p -e "show databases" | grep -v "Database\|information_schema\|performance_schema"); do mysqldump -u root -p $db > $db.sql; done
(3)备份 SSL 证书与配置文件
- 复制 Nginx/Apache 配置文件、SSL 证书(
.crt/.key)、站点配置文件(如wp-config.php、config.php)到本地
3. 初始化 RAKsmart 站群服务器
- 登录 RAKsmart 控制台,重装 / 初始化系统(推荐 CentOS 7/8 或 Ubuntu 20.04+,与旧服务器一致)
- 安装面板(推荐宝塔面板,适配站群批量管理):bash运行
# CentOS安装宝塔 yum install -y wget && wget -O install.sh https://download.bt.cn/install/install_6.0.sh && sh install.sh # Ubuntu安装宝塔 apt install -y wget && wget -O install.sh https://download.bt.cn/install/install_6.0.sh && sh install.sh - 登录宝塔面板,安装与旧服务器完全一致的环境:Nginx/Apache、PHP、MySQL、必要扩展
- 开放端口:放行 80(HTTP)、443(HTTPS)、22(SSH)、3306(MySQL)等,RAKsmart 控制台安全组 + 服务器防火墙双重放行
二、数据迁移(核心步骤,分全量 + 增量)
1. 迁移网站文件(推荐 rsync 增量同步)
(1)首次全量同步(无停机)
- 旧服务器执行,将文件同步到 RAKsmart 服务器:bash运行
rsync -avzP -e "ssh -p 端口号" /旧服务器网站根目录/ root@RAKsmart服务器IP:/目标网站根目录/ # 参数说明:-a归档、-v详细、-z压缩、-P进度、-e指定SSH端口 - 或用 SFTP 工具(FileZilla)上传打包文件,解压到目标目录:
tar -zxvf website_backup.tar.gz -C /目标网站根目录/
(2)最终增量同步(停机窗口)
- 旧服务器停止 Web 与数据库服务,确保数据一致:bash运行
systemctl stop nginx # Nginx # systemctl stop httpd # Apache systemctl stop mysqld # MySQL - 再次执行 rsync 同步增量文件(仅传输变更内容,速度快):bash运行
rsync -avzP --delete -e "ssh -p 端口号" /旧服务器网站根目录/ root@RAKsmart服务器IP:/目标网站根目录/ # --delete:删除目标中源已不存在的文件,确保一致
2. 迁移数据库
(1)RAKsmart 服务器创建数据库
- 登录 MySQL:
mysql -u root -p(输入 root 密码) - 创建数据库、用户并授权:sql
CREATE DATABASE 新数据库名; CREATE USER '新数据库用户'@'localhost' IDENTIFIED BY '新密码'; GRANT ALL PRIVILEGES ON 新数据库名.* TO '新数据库用户'@'localhost'; FLUSH PRIVILEGES; EXIT;
(2)导入数据库备份
- 方式 1:命令行导入(推荐)bash运行
# 先将备份文件传到RAKsmart服务器 scp -P 端口号 database_backup.sql root@RAKsmart服务器IP:/tmp/ # 登录服务器导入 mysql -u 新数据库用户 -p 新数据库名 < /tmp/database_backup.sql - 方式 2:宝塔面板导入:面板→数据库→添加数据库→导入→选择备份文件执行
三、RAKsmart 服务器站点配置
1. 配置 Web 服务(Nginx/Apache)
- 宝塔面板:站点→添加站点→输入域名→设置根目录(与旧服务器一致)→提交
- 手动配置(Nginx):nginx
server { listen 80; server_name 你的域名; root /网站根目录; index index.php index.html; # 伪静态规则(复制旧服务器配置) location / { try_files $uri $uri/ /index.php?$query_string; } # PHP配置 location ~ \.php$ { fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; } } - 重启服务:
systemctl restart nginx或systemctl restart httpd
2. 修改站点配置文件
- 更新数据库连接信息(以 WordPress 为例,修改
wp-config.php):php运行define('DB_NAME', '新数据库名'); define('DB_USER', '新数据库用户'); define('DB_PASSWORD', '新密码'); define('DB_HOST', 'localhost'); - 其他 CMS(如 Discuz、Typecho)同理,修改对应配置文件中的数据库参数
3. 部署 SSL 证书
- 上传旧服务器 SSL 证书到 RAKsmart 服务器,或用 Let’s Encrypt 免费申请
- 宝塔面板:站点→SSL→其他证书→粘贴证书与密钥→保存并启用 HTTPS
- 强制 HTTPS:添加 301 重定向规则,将 HTTP 跳转到 HTTPS
4. 修复文件权限
- 确保网站目录权限正确(防止读写报错):bash运行
chown -R www:www /网站根目录 # 宝塔用户为www,其他面板按需调整 chmod -R 755 /网站根目录 chmod -R 777 /网站根目录/uploads # 上传目录可写
四、站点验证与 DNS 切换(低停机关键)
1. 本地验证 RAKsmart 站点(避免 DNS 冲突)
- 修改本地
hosts文件,将域名指向 RAKsmart 服务器 IP:- Windows:
C:\Windows\System32\drivers\etc\hosts,添加RAKsmartIP 你的域名 - Linux/Mac:
sudo vim /etc/hosts,添加同上
- Windows:
- 浏览器访问域名,验证:页面正常打开、图片 / 资源加载、数据库读写、后台功能、伪静态规则生效
2. DNS 解析切换(正式上线)
- 登录域名服务商控制台(如阿里云、腾讯云),修改域名 A 记录 / CNAME 指向RAKsmart 服务器 IP
- 提前 48 小时将 TTL 值改为 300 秒(5 分钟),加速全球 DNS 生效
- 多域名批量迁移:统一修改所有站点域名解析,RAKsmart 站群支持多 IP / 单 IP 多站点配置
3. 迁移后监控与验证
- 监控网站可用性:用 UptimeRobot、宝塔监控等工具,检查是否正常访问
- 检查日志:
tail -f /www/wwwlogs/xxx.com.log(Nginx 日志),排查 404/500 错误 - 功能全测:注册、登录、上传、支付、后台管理等核心流程,确保无异常
- 回滚预案:若迁移失败,立即将 DNS 切回旧服务器 IP,恢复服务
五、站群批量迁移优化技巧
- 批量同步:用 shell 脚本遍历所有站点目录,批量执行 rsync 同步,减少重复操作
- 面板批量管理:RAKsmart + 宝塔面板,一键添加多站点、批量配置 SSL、统一环境
- 增量迁移:先全量同步,再在低峰期做最终增量同步,将停机时间控制在分钟级
- 数据校验:迁移后用
md5sum对比文件哈希值,确保文件完整;用SELECT COUNT(*) FROM 表名对比数据库记录数
六、常见问题与解决
- 网站打开 500 错误:检查 PHP 版本、扩展、文件权限、数据库连接参数是否正确
- 图片 / 资源加载失败:核对文件路径、权限,清理浏览器缓存,检查伪静态规则
- DNS 生效慢:等待全球传播(最长 24 小时),可清理本地 DNS 缓存:
ipconfig /flushdns(Windows)、sudo systemd-resolve --flush-caches(Linux) - 数据库连接失败:确认 MySQL 服务启动、账号密码正确、3306 端口放行
