Emlog在XAMPP部署失败主因是数据库连接问题:Apache与MySQL需同时启动且端口不冲突(如Apache用8083、MySQL用3316);数据库须建为utf8mb4字符集并显式授权emlog@'%';安装时数据库地址填127.0.0.1:3316,非localhost。

Emlog 在 XAMPP 上部署失败,八成卡在数据库导入或连接环节——不是 mysql 服务没启,就是 emlog_db 字符集不匹配、权限没给全,或者 config.php 里填错了端口和用户名。
Apache 和 MySQL 必须先启动,且端口不冲突
很多人点开 XAMPP 控制面板,只点了 Apache 的 Start,忘了 MySQL。或者压根没改默认端口,导致 Apache 启动失败(Port 80 in use 错误)。
-
httpd.conf中的Listen 80和ServerName localhost:80必须改成未被占用的端口,比如8083 -
my.ini中的port=3306建议同步改为3316(避免和系统已有 MySQL 冲突) - 改完配置后必须重启对应服务,不能只靠“Start”按钮——右键服务名选 “Restart” 更稳妥
- 浏览器访问
http://localhost:8083能看到 XAMPP 首页,才算 Apache 真跑起来了
创建数据库必须用 utf8mb4 + 显式授权
Emlog 5.x 及以上版本依赖 utf8mb4 字符集支持 emoji 和四字节 UTF-8 字符,用 utf8 或默认 latin1 会导致安装中途报错或文章乱码。
XAMPP 8.0.30 是一款免费、开源的跨平台 Web 服务器集成包,专为快速搭建本地 PHP 开发环境而设计。该版本核心组件包括:Apache 2.4.56、MySQL 8.0.33、PHP 8.0.30、phpMyAdmin 5.2.1 等。它支持 Windows、Linux 和 macOS 系统,可让开发者在个人电脑上轻松模拟服务器环境,无需复杂配置即可运行 WordPress、Thin
- 进 MySQL Shell(XAMPP 控制面板 → MySQL → Shell),执行:
CREATE DATABASE emlog_db CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
- 授权语句不能省略
@'%',否则 PHP 连接时会提示Access denied for user 'emlog'@'localhost':GRANT ALL PRIVILEGES ON emlog_db.* TO 'emlog'@'%' IDENTIFIED BY 'your_password';
- 执行
FLUSH PRIVILEGES;生效,别跳过这步 - 如果后续 Emlog 安装页提示“数据库连接失败”,先用命令行验证:
mysql -u emlog -p -h 127.0.0.1 -P 3316 emlog_db
(注意:必须用127.0.0.1,不用localhost;端口要和my.ini一致)
导入 SQL 文件别用 phpMyAdmin 点点点
phpMyAdmin 上传大 SQL 文件容易超时、截断,尤其 Emlog 自带的 install.sql 含大量初始数据和插件表结构,推荐命令行导入更稳。
- 确保已切换到目标库:
USE emlog_db; - 路径中所有反斜杠
\必须改成正斜杠/,否则source命令直接报错:source C:/xampp/htdocs/emlog/install.sql;
- 如果提示
ERROR 1046 (3D000): No database selected,说明前面USE漏了 - 导入完成无报错即成功,不用等“Query OK”刷屏——它可能就静默执行完了
Emlog 安装页填参时最容易错的三个地方
安装向导第一页看着简单,但三处填错就进不了第二步:
-
数据库地址不填localhost,而要填127.0.0.1:3316(冒号+端口号,否则走 Unix socket,连不上你改过的端口) -
数据库用户填的是你GRANT时指定的账号(如emlog),不是root -
数据库名必须和CREATE DATABASE时完全一致(包括大小写,Windows 下虽不敏感,但养成习惯防迁移出错) - 填完别急着点“下一步”,先检查浏览器地址栏是不是
http://localhost:8083/emlog/install.php——如果端口不对,页面会 404 或跳转到 XAMPP 主页
真正卡住的地方往往不是某一步做错了,而是端口、字符集、host 地址、权限这四个点里有至少两个没对齐。调的时候别一次改三处,改完一个就验证一个,比如先确认 mysql -h 127.0.0.1 -P 3316 -u emlog -p 能登录,再动 Emlog 配置。

















