Mac M1环境下XAMPP中MariaDB升级至10.6.7适配Moodle方案咨询
解决Mac M1上XAMPP MariaDB版本不足的Moodle部署方案
方案一:升级XAMPP内置的MariaDB到10.6.7
- 先在XAMPP控制面板里停掉MariaDB服务,避免文件被占用
- 备份现有数据库:打开终端,进入XAMPP的mysql/bin目录(比如
cd /Applications/XAMPP/xamppfiles/bin),执行./mysqldump -u root -p --all-databases > ~/mariadb_backup.sql,输入root密码完成备份 - 下载适配M1架构的MariaDB 10.6.7压缩包,解压后替换XAMPP目录下的mysql文件夹(注意保留原有的
my.cnf配置文件,或者把新配置里的端口、数据目录等关键参数和旧配置对齐) - 回到终端的mysql/bin目录,执行
./mysql_upgrade -u root -p,完成数据库结构的升级适配 - 启动XAMPP的MariaDB服务,执行
./mysql -u root -p -e "SELECT VERSION();",确认版本显示10.6.7即可继续部署Moodle
方案二:单独安装符合要求的MariaDB,与XAMPP的Apache配合使用
- 用Homebrew安装MariaDB 10.6.7:终端执行
brew install mariadb@10.6,安装完成后启动服务brew services start mariadb@10.6 - 配置XAMPP的PHP连接新数据库:找到XAMPP的php.ini文件(路径一般是
/Applications/XAMPP/xamppfiles/etc/php.ini),修改mysqli.default_port为3306(如果Homebrew安装的MariaDB用默认端口),保存后重启XAMPP的Apache服务 - 创建Moodle专属数据库:终端执行
mysql -u root -p进入数据库命令行,依次执行:CREATE DATABASE moodle DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; CREATE USER 'moodleuser'@'localhost' IDENTIFIED BY 'your_password'; GRANT ALL PRIVILEGES ON moodle.* TO 'moodleuser'@'localhost'; FLUSH PRIVILEGES; - 部署Moodle时,数据库配置项填写本地MariaDB的信息(主机localhost,端口3306,用户名moodleuser,密码自行设置的your_password)
方案三:用Docker一键部署Moodle(环境隔离更省心)
- 先安装适配M1的Docker Desktop,启动后确保Docker服务正常运行
- 终端执行
docker run -d -p 8080:80 -p 3306:3306 --name mymoodle bitnami/moodle:latest,该镜像会自动搭配符合版本要求的MariaDB - 访问
http://localhost:8080按照引导完成Moodle初始化,默认的数据库账号密码可以通过docker logs mymoodle查看
内容的提问来源于stack exchange,提问作者Youssef Alamrousy
相关产品推荐
相关产品推荐

