Skip to content

运维-转换/升级/搬家

1. 转换

为了满足更多站长顺利过渡到 Discuz! (UCenter)平台,进一步完善数据迁移工作改进易用度,现正式向各位推荐 XConvert 转换程序!该转换程序可以转换目前所有常见的论坛程序,想转换到 Discuz! 的用户再也不用到处找适合自己的各种转换程序了。现在所有的论坛只需要使用 XConvert 就都可以顺利转换到 Discuz!(UCenter) 中来。

问题 当前情况
❓ Discuz! 目前是否还使用 XConvert? ❌ 不再推荐使用,工具已停更多年,主要用于 X2 → X3 过渡
❓ 是否仍需“转换程序”迁移数据? ✅ 需要,但需采用 手动方案或专用插件
❓ 是否适用所有论坛平台? ❌ 不适用,XConvert 仅支持老牌论坛如 phpBB、vBulletin、DZ 早期版

2. 升级

Discuz! 从 X3.2 开始,其核心架构趋于稳定,版本间升级主要是文件替换 + 数据结构更新,不再通过 update.php 工具完成。
新版升级过程采用如下“半自动 + 半手工”方式进行:

升级流程总览(X3.x → X3.5)

# 1. 备份操作(不可跳过)  
mysqldump -uroot -p haiwaidata > /root/xxxxdata_backup.sql  # 备份数据库  
tar -czvf discuz_code_backup.tar.gz /var/www/html/xxxxxxweb  # 备份原站代码  

# 2. 下载新版本 Discuz!(如 X3.5)  
https://www.dismall.com/thread-3840694-1-1.html  # 官方发布帖  
解压后,将 upload 目录中的文件替换旧站代码,保留 config/  data/ 等目录  

# 3. 执行数据库升级脚本  
访问:http://your-domain.com/utility/dbupgrade.php  # 从 X3.4 开始提供 dbupgrade 替代旧 update.php  
该脚本会自动完成字段新增、索引修改等结构升级  

# 4. 清除缓存  
删除以下目录内容:  
rm -rf data/cache/* data/template/* uc_server/data/cache/* uc_client/data/cache/*  

# 5. 登录后台检查版本  
后台  工具  更新缓存  检查插件兼容性  

# 6. 删除升级脚本  
rm -f utility/dbupgrade.php  # 删除升级入口,避免被利用

升级策略建议(2025 年版本)

场景 推荐方式
X3.4 → X3.5 ✅ 原地替换 + dbupgrade.php 脚本
X3.2/X3.3 → X3.5 ✅ 分版本升级,建议:X3.2 → X3.4 → X3.5
X2.5 → X3.x ❌ 不建议直接升级,建议新站部署 + 数据导入
老版本(如 DZ7.2)→ X3.5 ❌ 不适用升级

3. 搬家

2025 年最新版 Discuz! 搬家操作标准流程(适用于 X3.4 / X3.5)

定义“搬家”

Discuz! 搬家 = 站点整合迁移至新服务器,包括:

  • 程序文件(HTML/PHP/模板/插件/附件等)
  • 数据库数据(包括 UCenter 和 Discuz 主库)
  • 配置文件(如 config_global.php、uc_server/config.inc.php)

标准搬家流程(适用于 Linux + Nginx + MariaDB 环境)

# 1️⃣ 关闭论坛访问,防止数据变动
后台设置  全局  关闭站点  # 或手动设置 config/config_global.php 中 $_config['admincp']['runquery'] = '0';

# 2️⃣ 导出数据库(推荐使用 mysqldump)
mysqldump -uroot -p --default-character-set=utf8 xxxxxxdata > /backup/xxxdata.sql  # 逻辑导出,兼容性最好

# 3️⃣ 打包网站文件(Discuz 安装目录)
cd /var/www/html/
tar -czvf discuz_site.tar.gz xxxxweb/  # 压缩网站目录

# 4️⃣ 将备份文件传输到新服务器
scp /backup/xxxxdata.sql root@new-server:/root/
scp discuz_site.tar.gz root@new-server:/var/www/html/

# 5️⃣ 在新服务器中解压并恢复
cd /var/www/html/
tar -xzvf discuz_site.tar.gz

mysql -uroot -p -e "CREATE DATABASE xxxxxdata DEFAULT CHARSET utf8mb4;"  # 创建数据库
mysql -uroot -p xxxxdata < /root/haiwaidata.sql  # 导入数据库数据

# 6️⃣ 检查配置文件路径并修改
vi /var/www/html/xxxxweb/config/config_global.php  # 修改数据库连接信息(如本地地址、密码等)
vi /var/www/html/xxxxweb/uc_server/data/config.inc.php  # 修改 UCenter 连接信息(若更换域名/IP)

# 7️⃣ 检查 PHP 扩展、文件权限、伪静态规则
php -m | grep gd  # 确保图像处理扩展安装
chown -R www-data:www-data /var/www/html/xxxxxweb  # 设置权限
chmod -R 755 /var/www/html/xxxxweb

# 8️⃣ 清空缓存目录
rm -rf data/cache/* data/template/* uc_server/data/cache/* uc_client/data/cache/*  # 防止路径错误导致显示异常

# 9️⃣ 绑定域名,重启服务
nginx -t && systemctl reload nginx
systemctl restart php-fpm mariadb

总结:2025 年 Discuz! 搬家标准方式

项目 推荐做法
数据导出 mysqldump
程序打包 tar.gz 压缩
传输方式 scp / rsync
数据导入 mysql < backup.sql
后台配置调整 修改 config 文件
缓存清理 删除 data/cache/ 等