上一篇
场景引入:
凌晨3点,你盯着屏幕上的报错提示——Error establishing database connection
,冷汗直冒,原来公司的MediaWiki服务器即将到期,而500GB的百科数据还卡在老数据库里…别慌!这份保姆级迁移指南,让你像搬家师傅一样稳当转移数据,还能顺便喝杯咖啡☕。
原数据库体检 �⚕️
-- 查看当前数据库大小(MySQL示例) SELECT table_schema "WikiDB", ROUND(SUM(data_length)/1024/1024, 2) "Size(MB)" FROM information_schema.TABLES WHERE table_schema = "你的数据库名";
📌 重点检查revision
(历史版本)和text
)表,通常占90%空间
工具三件套 🧰
maintenance/
目录下) 版本兼容确认 🔄
| 原版本 | 目标版本 | 注意事项 |
|--------|----------|----------|
| 1.35 | ≥1.39 | 需运行update.php
升级脚本 |
| ≤1.34 | 1.38+ | 建议分段迁移(先升到1.35过渡) |
# 使用screen保持会话(防止断连) screen -S wiki_backup # 导出结构和数据(排除缓存表提升效率) mysqldump -u root -p --skip-add-drop-table \ --ignore-table=wiki_db.objectcache \ --ignore-table=wiki_db.querycache \ wiki_db > wiki_full_$(date +%F).sql # 按Ctrl+A+D退出screen会话
💡 小技巧:超过50GB的库建议添加--single-transaction
参数避免锁表
-- 在新服务器创建数据库(字符集必须一致!) CREATE DATABASE new_wiki_db DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; -- 创建专用账号并授权 GRANT ALL PRIVILEGES ON new_wiki_db.* TO 'wiki_admin'@'localhost' IDENTIFIED BY '强密码123!';
# 使用pv监控导入进度(需提前安装pv) pv wiki_full_2025-08-15.sql | mysql -u root -p new_wiki_db # 或者分卷导入(适合超大数据库) split -b 2G wiki_full.sql wiki_part_ for file in wiki_part_*; do echo "正在导入 $file ..." mysql -u root -p new_wiki_db < $file done
修改LocalSettings.php
:
$wgDBserver = "新数据库IP"; $wgDBname = "new_wiki_db"; $wgDBuser = "wiki_admin"; $wgDBpassword = "强密码123!";
然后运行升级脚本:
php maintenance/update.php --quick
问题1:导入时报错ERROR 1071 (42000)
sql
文件中的索引定义,或临时调低innodb_large_prefix
参数 问题2:图片/文件丢失
LocalSettings.php
中的$wgUploadDirectory
路径 rsync -avz /var/www/wiki/images/* 新服务器:/path/to/new_wiki/images/
问题3:用户无法登录
php maintenance/changePassword.php --user=管理员 --password=新密码
--where="rev_id>100000"
分批导出,适合24/7运行的wiki SET sql_log_bin=0;
) maintenance/compareDbs.php
可对比新旧数据库一致性 最后检查 ✅
Special:Version
确认扩展正常 error_log
至少24小时 现在可以优雅地下线旧服务器了!🎉 记得在wiki公告栏挂个"系统升级完成"的横幅~
📆 本文方法基于2025年8月MediaWiki LTS版本验证,部分参数需根据实际情况调整
本文由 风慧艳 于2025-08-02发表在【云服务器提供商】,文中图片由(风慧艳)上传,本平台仅提供信息存储服务;作者观点、意见不代表本站立场,如有侵权,请联系我们删除;若有图片侵权,请您准备原始证明材料和公证书后联系我方删除!
本文链接:https://vps.7tqx.com/wenda/512276.html
发表评论