xoops迁移无痛法 |
||
---|---|---|
新进会员
注册日期:
3/24 22:12:55 所属群组:
注册会员 帖子:
4
等级: 1; EXP: 21
HP : 0 / 5 MP : 1 / 1 |
xoops是一套非常不错的cms系统,特别是强大的模组功能提供了许多实用的功能,小弟从XOOPS1的版本就开始使用了,并且还帮助朋友建立过一套网站。现在因为所在的企业要推行信息化,作为负责人的我当然是首推开源文化的代表xoops
想必这也会有不少同好有这样的经历,在一台电脑上做调试,调试完成后再装到正式环境运行。 这就涉及到了xoops的数据迁移,其实xoops的数据迁移并不是很难,稍微留心一下就可以搞定。 也许是犯了经验主义的错误,让我的xoops迁移数据也走了很多弯路,所以还是想记录下来,和大家分享。 数据迁移的流程 1、mysql的数据导出和导入 2、xoops文件的迁移 3、相关文件的修改和清除 1、mysql的数据导出和导入 导出mysql数据的方法很多,可以使用mysql命令行,也可以使用外部工具,呵呵,可惜mysql命令行咱不熟,而且很多服务器上不允许直接使用控制台命令; 外部工具也因为操作系统的原因不怎么用,所以我还是用比较简单的phpmyadmin. 在phpmyadmin里导出数据的时候要注意,最好将语言改成默认的英文 iso8859-1 这样可以防止有些数据的在导出的过程中出现乱码,不过好像在最新的phpmyadmin 2.8版中这个bug已经fix了。 数据库的导入,视数据库的大小来导,在php.ini可以将默认的2m限制修改大一些 upload_max_filesize = 2M ; 如果数据库太大,而允许上传的文件却很小怎么办?只能分段导入mysql数据了,我的办法一般是以表名为一段分别导入。 2、文件的迁移 这个应该很简单啦!win下复制粘贴即可, *unix下注意目录的权限。 3、相关文件的修改和清除 这个可能是是大伙比较容易忽略的问题。先说要修改的文件 XOOPS_ROOT_PATH/mainfile.php 这个是一定要修改的,至于有的朋友说连 mainfile.dist.php 这个我觉得没必要了。 要修改的地方如下: 68行 define('XOOPS_DB_PREFIX', 'value'); // 这是数据库的前表名,value填入你的mysql数据库前表名,比如在数据库结构里 xoops_config “xoops就是前表名” 72行 define('XOOPS_DB_HOST', 'value'); //存放数据库的主机地址,value处一般填localhost,如果你是远程链接,那就填入远程服务器的ip或域名 76行 define('XOOPS_DB_USER', 'value'); //运行数据库的用户名,value填入用户名 80行 define('XOOPS_DB_PASS', 'value');//数据库密码,value填入密码,如果是空则不填,表现形式为'' 84行 define('XOOPS_DB_NAME', 'value'); //数据库名,value填入数据库的名称。 OK,mainfile.php修改完了,可以运行了吗?别着急,下面还有一步 清除 XOOPS_ROOT_PATH/CACHE 目录里的全部文件 清除 XOOPS_ROOT_PATH/templates_c 里的全部文件。 好了,再运行看看,熟悉的xoops是不是又回来了?! enjoy xoops!
4/4 14:36:17
|
|
工具箱 |
回复: xoops迁移无痛法 |
||
---|---|---|
项目管理员
注册日期:
2004/7/19 23:57 来自 四川
所属群组:
注册会员 ComSupp 推广组 帖子:
412
等级: 18; EXP: 87
HP : 89 / 446 MP : 137 / 2327 |
要是遇见不同MYSQL版本,我们又该怎么做?
这样的情况应该注意什么,如果遇见不可以导入或导入出现乱码应该怎么解决?
4/4 14:49:29
|
|
工具箱 |
回复: xoops迁移无痛法 |
||
---|---|---|
Support Team
注册日期:
2005/10/29 13:32 来自 北京
所属群组:
网站管理员 注册会员 帖子:
454
等级: 19; EXP: 75
HP : 187 / 468 MP : 151 / 690 |
Mainfile文件还应该修改下列两个地方:
define('XOOPS_ROOT_PATH', 'd:/localhost/yourwebsite.com'); define('XOOPS_URL', 'http://localhost/yourwebsite.com');
4/4 19:55:14
|
|
工具箱 |
回复: xoops迁移无痛法 |
||
---|---|---|
新进会员
注册日期:
3/24 22:12:55 所属群组:
注册会员 帖子:
4
等级: 1; EXP: 21
HP : 0 / 5 MP : 1 / 1 |
引文:
高低版本的mysql,个人认为mysql5是可以向下兼容mysql4的,所以方法我认为应该一样,不过具体我也没试过,哪位DX尝试过的可以说说看。 至于出现不可导入的问题,那得看用户的权限了,如果服务器禁用upload,那也没办法。 至于乱码,我的办法也比较笨,重新导入一次咯~~~ ^_^
4/5 8:27:54
|
|
工具箱 |
回复: xoops迁移无痛法 |
||
---|---|---|
项目管理员
注册日期:
2004/7/19 23:57 来自 四川
所属群组:
注册会员 ComSupp 推广组 帖子:
412
等级: 18; EXP: 87
HP : 89 / 446 MP : 137 / 2327 |
测试下分表导入.
4/5 8:34:19
|
|
工具箱 |
回复: xoops迁移无痛法 |
||
---|---|---|
Support Team
注册日期:
2005/9/29 15:24 来自 广东顺德
所属群组:
注册会员 技术文档组 Dev+Hack 帖子:
156
等级: 11; EXP: 54
HP : 52 / 263 MP : 52 / 451 |
补充两点:
* 文件比较大而且主机FTP比较慢的话,可以采用在线压缩和解压. * 修改mainfile.php可以先迁移文件,暂不导入数据库,重新安装一次.这样mainfile.php会自动被修改(注意文件权限).然后再导入数据库. 关于backup & restore 模块,我已发过贴提出一些bug的问题.
4/8 7:50:01
|
|
工具箱 |
回复: xoops迁移无痛法 |
||
---|---|---|
初级会员
注册日期:
2005/1/11 4:39 所属群组:
注册会员 帖子:
22
等级: 3; EXP: 41
HP : 0 / 60 MP : 7 / 229 |
我的没有"英文 iso8859-1"这项,只有"en-utf-8"导出的都是乱码!用"zh-utf8"也是的,都是乱码!
我汉化的weblinks模块的rss站也显示出乱码,不知道怎么搞啊! http://www.earn8.net/
4/22 18:30:58
|
|
_________________
vzz.zj.com |
||
工具箱 |
回复: xoops迁移无痛法 |
||
---|---|---|
高级会员
注册日期:
2005/12/11 18:53 所属群组:
注册会员 帖子:
109
等级: 9; EXP: 45
HP : 42 / 211 MP : 36 / 238 |
用二进制
4/22 19:49:05
|
|
工具箱 |