以下的文章主要是对解决453h安装在MySQL4.1
以上的UTF8数据库,在实际运行中所造成的乱码问题与安装失败的问题解答,以下就是文章的具体内容的描述,望你在浏览之后会对其实际操作有所了解。

最近项目比较多,时间不宽松,一直没给大家整理,今天小编抽个时间把我的解决方案分享给大家,具体内容如下所示。

这几天在尝试安装mambo 4.53h版,
由于我的数据库是mysq4.1以上版本,并且设定的字符集是UTF8
。在尝试安装了几次后发现以下几种情况:

问题描述:

  1. 将数据库设置为 latin1 , 不修改任何文件,在安装时无论选择gb2312
    还是utf8,都可以完成安装,并且网页显示正常,但是通过phpmyadmin看数据表时发现,里面所有中文全部为乱码,也就是说,通过latin1字符集保存,可以正常显示中文网页,但是实际上在数据库中中文是乱码。

我在自己的电脑上配置了Mysql5环境,同时安装了一个phpMyAdmin管理工具,安装完成后,发现在phpMyAdmin里面输入汉字,总是提示下面这个错误:

而且不能通过phpmyadmin备份备份出来的文件,无论改成什么编码,里面中文均为乱码)。所以这不是王道,我没有做选择考虑。

Datatype too large

  1. 将数据库字符集设置成utf8,
    不修改任何文件,在安装时无论选择gb2312还是utf8,都出现 1071 specified key
    too long max length 1000 bytes
    的错误。并且只要是数据库字符集设置成utf8,utf8是一个 character set 作为 3
    bytes存储,latin1 是作为1 bytes存储),无论是按照论坛中的一些意见,修改
    installation/sql/mambo.sql 还是别的文件, 都会出现key
    超过1000bytes的错误,安装不能继续。

后来想到MySQL安装的时候没有设置字符集!在添加/删除程序里卸载MySQL
后,发现服务里还有一个MySQL的服务没弄掉!用卸载服务的工具卸载后。

我本意是要安装manbo的中文utf8版本,以方便和别的程序整合。所以在查询了google,论坛和其他一些资料后,经过尝试,终于以我的想法,以选择
manbo的utf8 字符集 在MySQL4.1以上,并且字符集也是utf8
的数据库中安装成功。

重新安装MySQL以后,MySQL服务启动不了,出现:1607错误!看了网上很多相关信息,多数解决办法为更改basedir和Datadir,按照此方法操作后,错误依然没有解除,最后经过试验,重新安装MySQL数据库时把数据库端口改为3309(默认3306)后,MySql服务正常启动。

网页显示中文正常,无乱码,并且用phpmyadmin查询数据库表时,所有中文也都显示正常,并且以utf8保存。以下是我的解决方法,仅供参考:

完成后,在phpMyAdmin/Libraries/config.default.php文件里修改$cfg[‘Server’]
[$i][‘Port’]=’3309′;
phpMyAdmin正常后,再建一个数据表,添加一条带汉字的记录

首先设置数据库字符集为utf8,

以上方法是小编给大家分享的安装MySQL5.0后出现1607异常的解决办法,希望对大家有所帮助。

CODE:[Copy to clipboard]ALTER DATABASE DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci 

您可能感兴趣的文章:

  • MySQL抛出Incorrect string
    value异常分析
  • MySql存储过程异常处理示例代码分享
  • php更新mysql后获取影响的行数发生异常解决方法
  • MySQL异常处理浅析
  • MySQL存储过程中一些基本的异常处理教程
  • MySQL存储过程的异常处理方法
  • SELinux导致PHP连接MySQL异常Can”t connect to MySQL
    server的解决方法
  • 简单解析MySQL中的cardinality异常
  • 分析一个MySQL的异常查询的案例
  • MySQL定义异常和异常处理详解

或者通过phpmyadmin里面直接改也一样。

修改 installation/sql/mambo.sql 文件:

查找将所有的

CODE:[Copy to clipboard]TYPE=MyISAM;  

替换成

CODE:[Copy to clipboard]TYPE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_general_ci;  

查找

CODE:[Copy to clipboard]UNIQUE KEY `section_value_value_aro` (`section_value`,`value`)  

CODE:[Copy to clipboard]UNIQUE KEY `#__gacl_section_value_value_aro` (`section_value`,`value`),  

并将这2行代码用 # 注释掉,或者删除,whatever~~

Author

发表评论

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

相关文章