codecamp

OpenSNSV1与V2版的数据迁移

注意事项

1. V1V2的升级是需要重新安装数据迁移,之前有二次开发过的请谨慎选择。

2. 使用SAE服务器的用户请注意,由于V2SAE尚未支持,使用SAE服务器的用户建议再耐心等待阵子,非常抱歉。

3. 请您在看完全部内容后,安装指导文档一步一步进行,不可跳步

4. 请在本地升级成功后在放到服务器上。

5. 如遇到问题,请到官方社区问答中提问。


数据迁移步骤

第一步: 请到官网产品主页中下载OpenSNS V2最新版主程序(下载地址:http://www.opensns.cn/download.html)

第二步: 主程序安装后,扩展模块在云市场中下载(商业客户请联系想天小陆领取云码,云码可兑换获得商业模块),详情可参考该贴:http://v2.opensns.cn/index.php?s=/news/index/detail/id/89.html

注:根据V1网站已安装和使用的模块、插件来下载并安装相应的模块,插件等等。数据迁移是需要V2数据库表有对应的表才能迁移成功。

OpenSNS V1版:

OpenSNS V2版:

第三步: OpenSNS v2安装好后,在云市场在下载数据迁移程序,放到Application文件下,然后在后台扩展-》模块管理中“重置模块信息”,安装数据迁移程序。

QQ截图20150811142926.png

第四步: 数据迁移程序安装好后,到网站的前台,可看到有个“数据迁移”的导航,使用管理员账户登录才能操作。

第五步: 在进行数据迁移之前,请先关闭网站,然后备份好V1的数据,并将备份好的数据拷贝出来,备份好的文件在“根目录-Data”文件下

关闭网站:


备份数据:

第六步: 开始数据迁移,建议在本地升级成功后在上传服务器。

  1. 使用管理员账户进入OpenSNS v2的数据迁移页。

根据提示填写:

数据库服务器(如本地是127.0.0.1);

V1的数据库名,数据库用户名、密码、端口;

数据库表前缀(V1版中的数据库表前缀);

DATA_AUTH_KEY是秘钥,在V1版的\Application\Common\Conf\config.php文件中,找到秘钥,复制粘贴到数据转移的DATA_AUTH_KEY选项中。

(如果秘钥错误,会导致之前的网站会户无法登陆,请谨慎操作。)


V1版中DATA_AUTH_KEY的位置:

本地测试数据转移程序填写案例:

第七步: 确认数据填写正确后,点击转移数据库。进入到程序转移页面。点击【点击进行转移】按键后转移工作开始。

转移前的页面:

转移后的页面:



第八步: 程序转移成功后,进入下一步,插件转移。

插件转移前页面:


注:插件转移前请先确认V1中使用的插件在V2中均已安装。如下图,广告位插件未安装,则提示该表不存在。(如果出现没有全部安装的情况,立即停止操作,到后台中进行安装,然后在前台刷新该页面,再次点击转移)。


未安装广告位插件安装的情况:

成功转移的情况:

第九步: 插件成功转移后,进行下一步,开始进行模块转移。

模块转移前的页面:

注:模块转移前请先确认V1中使用的模块在V2中均已安装。如下图,群组模块未安装,则提示该表不存在。(如果出现没有全部安装的情况,立即停止操作,到后台中进行安装,然后在前台刷新该页面,再次点击转移)。


群组模块未安装情况:

正常安装情况:

第十步: 数据迁移成功后,点击完成,会出现提示:“V1网站根目录下的Uploads文件夹复制到V2根目录。”请根据提示操作,不然网站的图片无法显示。

OpenSNS在云市场安装功能扩展
OpenSNS2.2.0之前安装的模块检测不到更新?
温馨提示
下载编程狮App,免费阅读超1000+编程语言教程
取消
确定
目录

OpenSNS模块使用

关闭

MIP.setData({ 'pageTheme' : getCookie('pageTheme') || {'day':true, 'night':false}, 'pageFontSize' : getCookie('pageFontSize') || 20 }); MIP.watch('pageTheme', function(newValue){ setCookie('pageTheme', JSON.stringify(newValue)) }); MIP.watch('pageFontSize', function(newValue){ setCookie('pageFontSize', newValue) }); function setCookie(name, value){ var days = 1; var exp = new Date(); exp.setTime(exp.getTime() + days*24*60*60*1000); document.cookie = name + '=' + value + ';expires=' + exp.toUTCString(); } function getCookie(name){ var reg = new RegExp('(^| )' + name + '=([^;]*)(;|$)'); return document.cookie.match(reg) ? JSON.parse(document.cookie.match(reg)[2]) : null; }