为什么要迁移到 XIUNOX?
如果你正在运行 Xiuno BBS 4.0.4,应该已经感受到兼容性压力:PHP 7.4 停止安全支持、MySQL 5.7 日渐老旧、前端在移动端体验差强人意。XIUNOX 作为基于 Xiuno 4.0.4 全底层重构的版本,能无缝继承现有数据,同时获得 PHP 8 性能提升和现代交互体验。
本文提供一套经过验证的数据无损迁移方案,从备份到验证全程讲解。
迁移前准备
环境要求
- PHP:8.0 - 8.3(推荐 8.2)
- MySQL:8.0+(推荐 8.0.28 以上)
- Web 服务器:Nginx 1.20+ 或 Apache 2.4+
- PHP 扩展:PDO、MySQLi、GD、MBString、CURL、JSON
备份数据
这是最关键的一步。
# 数据库备份 mysqldump -h 127.0.0.1 -u 用户 -p --opt --routines --triggers --default-character-set=utf8mb4 数据库名 > /backup/xiuno_$(date +%Y%m%d).sql md5sum /backup/xiuno_$(date +%Y%m%d).sql > /backup/xiuno.md5 # 文件备份 cp -a /www/wwwroot/你的站点/upload /backup/upload/ cp /www/wwwroot/你的站点/conf/conf.php /backup/
迁移步骤
第一步:部署 XIUNOX
- 从 xiunox.org 下载最新版本
- 解压到新站点目录(如
/www/wwwroot/xiunox/) - 配置 Nginx 站点,确保 URL 重写规则正确
- 先做「干净安装」初始化数据库结构,再用老数据覆盖
第二步:数据库迁移
# 导入备份数据到新数据库 mysql -h 127.0.0.1 -u 用户 -p 新数据库名 < /backup/xiuno_$(date +%Y%m%d).sql # XIUNOX 相比 Xiuno 4.0.4 新增了字段。检查并执行以下 SQL: ALTER TABLE bbs_user ADD COLUMN IF NOT EXISTS email varchar(128) NOT NULL DEFAULT '' AFTER username; ALTER TABLE bbs_thread ADD COLUMN IF NOT EXISTS tags varchar(255) NOT NULL DEFAULT ''; ALTER DATABASE 数据库名 CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
第三步:迁移附件
cp -a /backup/upload/* /www/wwwroot/xiunox/upload/ chown -R www:www /www/wwwroot/xiunox/upload/ chmod -R 755 /www/wwwroot/xiunox/upload/
第四步:配置站点
- 修改
conf/conf.php中的数据库连接信息 - 更新站点 URL、名称、描述等设置
- 配置 SMTP 邮件服务
- 如原站有搜索引擎收录,配置 301 重定向
验证迁移结果
- ✅ 帖子总数与原站一致
- ✅ 用户和积分数据正确
- ✅ 附件图片正常显示
- ✅ 管理员能正常登录后台
- ✅ 发帖、回帖功能正常
常见问题
Q: 迁移后图片无法显示?
A: 检查 upload/ 目录权限。XIUNOX 附件路径与 Xiuno 4.0.4 兼容。
Q: 用户无法登录?
A: XIUNOX 升级了密码哈希为 bcrypt。可在首次登录时自动升级。
Q: 插件不兼容?
A: XIUNOX 插件接口与 4.0.4 不兼容,需联系作者获取 XIUNOX 版本。
总结
整个迁移过程约 30-60 分钟,按本文步骤操作可做到数据无损、服务无缝切换。迁移后你将享受 PHP 8 性能、现代化交互体验和持续更新支持。
SEO 关键词:Xiuno迁移、论坛升级、PHP 8迁移、数据迁移教程、Xiuno BBS、论坛系统升级、无损迁移