B K*_*B K -1 joomla joomla1.5 mariadb
我有一个cpanel服务器,我试图将MySQL升级到MariaDB 10,现在一切正常,除了许多使用unicode语言的Joomla 1.5网站现在显示问号而不是每个字符:
我必须澄清一些事情:在升级之前,站点正在使用MySQL 5.5正确显示,并且数据在数据库中完好无损,因此当我将站点复制到另一台MariaDB 5.6服务器时,它会正确显示.
我试过了:/etc/my.cnf.d/server.cnf
[mysqld]
collation-server=utf8_unicode_ci
init-connect='SET NAMES utf8'
character-set-server=utf8
Run Code Online (Sandbox Code Playgroud)
和/etc/my.cnf.d/mysql-clients.cnf
[mysql]
default-character-set=utf8
Run Code Online (Sandbox Code Playgroud)
在joomla系统信息中,我得到:
数据库整理:N/A(mySQL <4.1.2)
没运气
我问joomla和mariadb论坛没有答案,所以我检查并发现了问题,我在这里发布,所以如果有人需要受益mariadb 10甚至更老和不支持的版本可以使用这个快速修复.
希望能帮助到你
在
libraries/joomla/database/database/mysql.php
Run Code Online (Sandbox Code Playgroud)
或(取决于您的设置)
libraries/joomla/database/database/mysqli.php
Run Code Online (Sandbox Code Playgroud)
评论第186行
return ($verParts[0] == 5 || ($verParts[0] == 4 && $verParts[1] == 1 && (int)$verParts[2] >= 2));
Run Code Online (Sandbox Code Playgroud)
并添加它(假设这些天你将拥有unicode支持的数据库:
return (1);
Run Code Online (Sandbox Code Playgroud)
代码如下:
function hasUTF()
{
$verParts = explode( '.', $this->getVersion() );
// return ($verParts[0] == 5 || ($verParts[0] == 4 && $verParts[1] == 1 && (int)$verParts[2] >= 2));
return (1);
}
Run Code Online (Sandbox Code Playgroud)
最好
| 归档时间: |
|
| 查看次数: |
1248 次 |
| 最近记录: |