discuz附件分离并无缝搬迁到七牛,同时升级数据库

作者: E星期五 分类: 网络备忘 发布时间: 2016-01-13 09:10 ė 1285 次浏览 6 没有评论

折腾,继续折腾
使用了这么久的七牛,免费的。。真心不错https://portal.qiniu.com/signup?code=3ldqqu8fisn6a
论坛附件接近1G,而七牛提供的免费存储空间10G,足够我免费的使用了,但七牛没有FTP,没有解压等web空间的功能,保持上传的目录结构成了大问题,在官网有一个数据迁移工具“qfetch”,file 待抓取资源链接所在文件的本地路径,内容由待抓取的资源外链和对应的保存在七牛空间中的文件名组成的行构成做为命令行小白,根本就没办法取得列表文件,放弃。使用“qrsbox”图形界面同步上传工具,七牛有详细的说明,甚至包括视频,几乎是傻瓜式的。
Windows图形工具的使用方法

首先,下载 QRSBox 的 Windows GUI,并解压。

然后,在资源管理器中,进入解压后的文件,双击qrsbox.exe,弹出如下图所求的界面:discuz附件分离并无缝搬迁到七牛,同时升级数据库
其中,access_key 和 secret_key 在七牛云存储平台上申请。
同步源目录 是本地需要上传的目录,绝对路径完整表示。这个目录中的所有内容会被同步到指定的 bucket 上。注意:Windows 平台上路径的表示格式为:盘符:/目录,比如 E 盘下的目录 data 表示为:e:/data 通俗点讲就是你要上传目录的地址,进入文件夹直接复制地址栏,如C:\Users\li\Desktop\20060107\site-bak-2016-01-07\data\attachment
空间名(bucket)就是你在七牛新建的空间名
key前缀可以为空,它说的“前缀”可以理解为文件夹名,输入exqw则所有上传的文件和目录都在/exqw/下

初始化需要接近1分钟时间,耐心等待。上传成功就完成总步骤的一半了。
成功之后需要着手升级论坛数据库,将所有旧帖附件链接改为七牛地址,建议先备份数据库,开远程附件。
开远程附件及七牛功能如http://exqw.com/468
论坛后台数据库执行sql语句
update pre_forum_attachment_0 set remote=1 where remote=0;
update pre_forum_attachment_1 set remote=1 where remote=0;
update pre_forum_attachment_2 set remote=1 where remote=0;
update pre_forum_attachment_3 set remote=1 where remote=0;
update pre_forum_attachment_4 set remote=1 where remote=0;
update pre_forum_attachment_5 set remote=1 where remote=0;
update pre_forum_attachment_6 set remote=1 where remote=0;
update pre_forum_attachment_7 set remote=1 where remote=0;
update pre_forum_attachment_8 set remote=1 where remote=0;
update pre_forum_attachment_9 set remote=1 where remote=0;

门户的
update pre_portal_article_title set remote=1 where remote=0;
update pre_portal_attachment set remote=1 where remote=0;
update pre_portal_topic_pic set remote=1 where remote=0;

相册的{相册表中的remote取值还有一种情况为remote=2(论坛附件图片保存到相册)}
update pre_home_pic set remote=remote+1;

清空缓存,结束。

如果要将远程转到本地,目前好像已经有了保持原目录结构下载七牛云附件的方法,暂时不关心它,只写出数据库这一块
update pre_forum_attachment_0 set remote=0 where remote=1;
update pre_forum_attachment_1 set remote=0 where remote=1;
update pre_forum_attachment_2 set remote=0 where remote=1;
update pre_forum_attachment_3 set remote=0 where remote=1;
update pre_forum_attachment_4 set remote=0 where remote=1;
update pre_forum_attachment_5 set remote=0 where remote=1;
update pre_forum_attachment_6 set remote=0 where remote=1;
update pre_forum_attachment_7 set remote=0 where remote=1;
update pre_forum_attachment_8 set remote=0 where remote=1;
update pre_forum_attachment_9 set remote=0 where remote=1;

update pre_portal_article_title set remote=0 where remote=1;
update pre_portal_attachment set remote=0 where remote=1;
update pre_portal_topic_pic set remote=0 where remote=1;
update pre_home_pic set remote=remote-1;

本文出自E星期五的博客,转载时请注明出处及相应链接。

本文永久链接: https://exqw.com/archives/501.html

0

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据

Ɣ回顶部