ksweb 中文文档 下载 App

KSWEB MySQL 连不上 检查 3306 端口是否被占 和 MariaDB 冲突

现象

CMS 访问时报:

或 phpMyAdmin 自己也登不上。

按顺序排查

第一步:看 MySQL 在不在跑

打开 KSWEB → MYSQL 标签页 → 看开关是不是打开的、状态页上 MySQL 那行是不是写"运行中"。

如果没开:打开开关,等几秒让 MySQL 初始化完成。

第二步:检查 3306 端口是不是被占了

MySQL 和 MariaDB 不能同时监听 3306 端口。

打开 KSWEB → MARIADB 标签页 → 看它的开关是不是也开着。如果是,关掉 MariaDB,等 10 秒让 MySQL 重新绑定端口,再试 CMS。

TOOLS 里有端口测试工具,输入 3306 能看到当前是谁在占用。

第三步:用 phpMyAdmin / Adminer 手动登一次

phpMyAdmin 和 CMS 用的是同一个 MySQL,手动登一下就能排除到底是 CMS 配置错了还是 MySQL 本身有问题。

打开 phpMyAdmin,填:

phpMyAdmin 结果含义下一步
能登上 ✅MySQL 没问题,CMS 配置错了跳到第四步
登不上 ❌MySQL 本身有问题跳到第五步

第四步:CMS 配置文件里的连接信息

不同 CMS 的数据库连接配置位置不同,都在站点根目录:

CMS配置文件要改的字段
WordPresswp-config.phpDB_HOST、DB_NAME、DB_USER、DB_PASSWORD
Joomlaconfiguration.php$dbhost、$dbname、$dbuser、$dbpass
Drupalsites/default/settings.php$databases 数组
Yii2config/db.phphost、dbname、username、password
MODXcore/config/config.inc.php$database_server、$dbase、$database_user、$database_password

逐一核对四个字段:主机是不是 localhost / 127.0.0.1、数据库名是不是在 phpMyAdmin 里建过、用户名是不是 root、密码——部署没改过就是空,改过就填新密码。

常见坑:改过 root 密码但没同步 CMS 配置文件,CMS 还拿着空密码去连 MySQL,肯定连不上。

第五步:MySQL 日志

如果 phpMyAdmin 也登不上,看 MySQL 自己的日志:

  1. MYSQL 标签页 → Log File / Log
  2. 看最后几行的错误信息

端口被占(最常见)

1014 10:00:00 [ERROR] Can't start server: Bind on TCP/IP port. Got error: 98

解决:关掉 MariaDB 开关。

数据文件损坏

1014 10:00:00 [ERROR] InnoDB: Corruption in space header
1014 10:00:00 [ERROR] Plugin 'InnoDB' init function returned error.

解决:MYSQL 标签页里点 Repair 尝试修复。修复前建议先备份数据文件。

磁盘空间不足

1014 10:00:00 [ERROR] No space left on device

解决:清理手机存储,至少留 500MB 给 MySQL 数据文件。

初始化文件损坏

1014 10:00:00 [ERROR] /data/data/ru.kslabs.ksweb/files/mysql/data/mysql.frm 损坏

解决:如果不重要,备份数据后重置 MySQL(KSWEB SETTINGS → Components → 重装 MySQL)。

第六步:端口号

极少数情况 MySQL 用了非 3306 端口。确认方法:

  1. MYSQL 标签页 → Configuration → Edit
  2. 搜 port = 这一行,看是多少
  3. CMS 配置文件里也要填这个端口(比如 WordPress 的 DB_HOST 写成 localhost:3307)

但 KSWEB 默认就用 3306,正常情况不用改。

快速排查清单(按顺序走)

[ ] MySQL 开关开了吗?状态页显示运行中吗?
[ ] MariaDB 是不是也开着?两个不能同时监听 3306
[ ] phpMyAdmin 能不能登上去?(主机 localhost,root,空密码或你改过的)
[ ] CMS 配置文件里的 DB_HOST/DB_NAME/DB_USER/DB_PASSWORD 对吗?
[ ] 改过 root 密码后 CMS 配置同步更新了吗?
[ ] MYSQL 日志里有没有错误信息?
[ ] 手机存储还剩多少?