mambo_4.5.3的mysql数据库由4.0升级4.1操作过程
(图文版 下载:作者主页或者)
(图文版 下载r
作者:joson(陈海青)
主页: http://www.chq.name
http://junit.roxr.com
日期:2006.02.12
修改日期:2006.02.13--情人节前夕
前言:
在mambo里使用mysql4.1目前好像一直是一个禁区,迫于主页
空间的限制,我历经一天一夜的探索,完成了数据库升级,先将操作过程写下来,供朋友们参考。
工作目标:
将mambo(4.5.3)由mysql 4.0 --> mysql 4.1
困难:
因为字符集不同( 原为gbk --〉新
服务器为utf8 ),显示乱码。
计划:
1:在本地建立模拟环境,使用wamp5_145RC集成环境
2:将数据导入新环境
3:调整mambo
操作步骤:
0:原服务器上(mysql4.0)数据库的字符集为gbk.
1:在新服务器上(mysql4.1)上建立数据库mambo,使用phpmyadmin,注意建完后,要调整其字符集为utf_general_ci,如下图()所示。
SQL query:
CREATE DATABASE `mambo` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;
检查结果,应如下图所示:
2:使用phpmyadmin在原来的mysql4.0导出数据库mambo脚本,(需要修改,注释掉以下红色处,避免错误提示:
Specified key was too long; max key length is 1000 bytes: )
CREATE TABLE `mos_core_acl_aro` (
`aro_id` int(11) NOT NULL auto_increment,
`section_value` varchar(240) NOT NULL default '0',
`value` varchar(240) NOT NULL default '',
。。。
PRIMARY KEY (`aro_id`),
-- --UNIQUE KEY `section_value_value_aro` (`section_value`,`value`),
-- --UNIQUE KEY `mos_gacl_section_value_value_aro` (`section_value`,`value`),
。。。
3:在目标数据库上运行上述脚本,然后建立
用户mambo,授权访问数据库mambo
这时,已经能用phpmyadmin看到数据库中的汉字了,注意完成后的表的字符集如下图所示:
4:根据实际情况修改网站上的配置文件configuration.php,主要修改以下内容:
$mosConfig_user = 'root';
$mosConfig_password = 'root';
$mosConfig_db = 'mambo';
$mosConfig_absolute_path = 'D:/wamp/htdocs/mambo';
$mosConfig_live_site = 'http://127.0.0.1/mambo/';
$mosConfig_cachepath = 'D:/wamp/htdocs/mambo/cache';
--小插曲:由于没有设置用户mambo可访问的主机(使用默认值),导致无法访问数据库,后改为localhost,ok
5:解决使用mysql4.1后前台显示乱码问题,更改includes\database.php文件,内容如下:
$this->_cursor = mysql_query( "SET character set gbk" );
$this->_cursor = mysql_query( $this->_sql, $this->_resource );
6:大功告成!...看看网站吧!
------------------
以上解决方案参照网上诸多资料,以及bbs.mambochina.net上blae的文章
[
本帖最后由 joson 于 2006-10-30 10:51 编辑 ]