如何解决moodle全新安装问题mysql_full_unicode_support#File_format和mysql_full_unicode_support#Large_prefix

omk*_*kar 2 xampp moodle

我是Moodle的新手.当我试图安装这个我得到这个问题(请参考截图). 在此输入图像描述

任何人都可以帮我这个吗?

先感谢您.OMKAR

小智 7

这是非常普遍的问题,人们经常面对,即使我也面对过.安装moodle最新3.2+时,它会检查MySQL数据库中对utf8mb4字符集的启用支持.这在MySQL中不是默认的.你需要在mysql conf中设置几个参数.

在基于Linux的系统上,您需要更改my.cnf.这可能位于'/ etc/mysql /'中.对my.cnf进行以下更改:

[client]
default-character-set = utf8mb4

[mysqld]
innodb_file_format = Barracuda
innodb_file_per_table = 1
innodb_large_prefix

character-set-server = utf8mb4
collation-server = utf8mb4_unicode_ci
skip-character-set-client-handshake

[mysql]
default-character-set = utf8mb4
Run Code Online (Sandbox Code Playgroud)

更改值后,重新启动mysql,现在应该修复错误.

请参考下面的docuemnt

https://docs.moodle.org/32/en/MySQL_full_unicode_support

https://mathiasbynens.be/notes/mysql-utf8mb4#character-sets


Sav*_*van 6

我遇到了同样的问题,这对我有帮助,转到 phpmyadmin 并复制信息架构的排序规则在我的情况下 information_schema -> utf8_general_ci

在此处输入图片说明

现在转到 htdocs/moodle/config.php 并更改此部分

$CFG->dboptions = array (
  'dbpersist' => 0,
  'dbport' => '',
  'dbsocket' => '',
  'dbcollation' => 'utf8_general_ci',
);
Run Code Online (Sandbox Code Playgroud)

注意 - 此处仅将 dbcollat​​ion 更改为“utf8_general_ci”并刷新安装页面,这将解决这两个错误