## 服务器数据库状态日志报告

- 生成时间：2026-03-04 00:29:27 CST（`2026-03-04T00:29:27+08:00`）
- 主机：`smallmengya`
- 采集范围：本机正在运行/监听的数据库服务（MySQL / PostgreSQL / MongoDB / Redis）
- 采集方式：本机 socket / localhost 查询（脚本 `db_runtime_status.sh` + 若干配置文件/日志抽取）

> 说明：为避免明文密码落盘，本报告不会写入两组候选密码原文，仅用“候选#1/候选#2”标记。

## 1. 口令匹配结果（候选密码 → 服务）

- 候选#1：可用于 **MySQL（root@localhost via socket）**、**Redis（requirepass）**
- 候选#2：可用于 **MongoDB（用户 `shumengya`，auth DB=`admin`）**

## 2. 概览（服务/版本/监听/存储/资源）

| 服务 | 版本 | 监听（TCP） | 进程（PID） | 启动时间（ps） | 数据目录 | 目录占用（du） | RSS（约） |
|---|---|---|---:|---|---|---:|---:|
| MySQL | 8.4.8 | `0.0.0.0:3306`（另 `:::33060` X Plugin） | 677 | 2026-02-28 13:29:06 | `/var/lib/mysql` | 240M | ~501MiB |
| PostgreSQL | 18.2 | `0.0.0.0:5432`、`:::5432` | 704（主） | 2026-02-28 13:29:06 | `/var/lib/postgresql/18/main` | 39M | ~96MiB（postgres 用户总和） |
| MongoDB | 7.0.30 | `0.0.0.0:27017` | 569 | 2026-02-28 13:29:06 | `/var/lib/mongodb` | 498M | ~196MiB |
| Redis | 8.6.0 | `0.0.0.0:6379` | 578 | 2026-02-28 13:29:06 | `/var/lib/redis` | 8.0K | ~27MiB |

## 3. MySQL

### 3.1 配置与监听

- 监听：`0.0.0.0:3306`（对外开放）
- Socket：`/var/run/mysqld/mysqld.sock`
- 数据目录：`/var/lib/mysql`
- 错误日志：`/var/log/mysql/error.log`
- 关键配置（`/etc/mysql/mysql.conf.d/mysqld.cnf`）：
  - `socket = /var/run/mysqld/mysqld.sock`
  - `datadir = /var/lib/mysql`
  - `log-error = /var/log/mysql/error.log`
  - `bind-address = 0.0.0.0`

### 3.2 运行状态（快照）

```text
mysqladmin status:
Uptime: 297864  Threads: 2  Questions: 6  Slow queries: 0  Opens: 119  Flush tables: 3  Open tables: 38  Queries per second avg: 0.000

SHOW GLOBAL STATUS LIKE 'Threads_connected';
Threads_connected  1

SHOW VARIABLES LIKE 'max_connections';
max_connections  151
```

### 3.3 数据库列表

```text
SHOW DATABASES;
information_schema
mysql
nextcloud
performance_schema
sys
typecho
wordpress
```

## 4. PostgreSQL（18/main）

### 4.1 配置与监听

- 监听：`listen_addresses='*'` + `port=5432`（对外开放）
- Unix Socket：`/var/run/postgresql/.s.PGSQL.5432`
- 数据目录：`/var/lib/postgresql/18/main`
- 关键配置（`/etc/postgresql/18/main/postgresql.conf`）：
  - `listen_addresses = '*'`
  - `port = 5432`
  - `max_connections = 100`
  - `unix_socket_directories = '/var/run/postgresql'`
- 认证规则（`/etc/postgresql/18/main/pg_hba.conf`，关键启用行）：
  - `host all all 0.0.0.0/0 scram-sha-256`（允许外网但必须密码）

### 4.2 运行状态（快照）

```text
uptime: 3 days 10:44:25
connections (pg_stat_activity): 9
replication connections: 0
```

### 4.3 数据库与大小

```text
datname | size
postgres | 7662 kB
```

## 5. MongoDB

### 5.1 配置与监听

- 监听：`0.0.0.0:27017`（对外开放）
- 配置文件：`/etc/mongod.conf`
- 数据目录：`/var/lib/mongodb`
- 日志：`/var/log/mongodb/mongod.log`
- 安全：`security.authorization: enabled`（已开启鉴权）
- 关键配置片段（`/etc/mongod.conf`）：
  - `net.port: 27017`
  - `net.bindIp: 0.0.0.0`
  - `storage.dbPath: /var/lib/mongodb`

### 5.2 鉴权探测结果（快照）

- 可用账号：`shumengya`（auth DB=`admin`），对应候选#2
- `admin/root` + 两个候选密码均失败（探测时）

### 5.3 数据库列表（listDatabases）

当前实例仅存在系统库（未发现业务库）：

```json
{
  "databases": [
    { "name": "admin",  "empty": false },
    { "name": "config", "empty": false },
    { "name": "local",  "empty": false }
  ]
}
```

### 5.4 运行状态（serverStatus 摘要快照）

```text
uptime: 298891s（约 3.46 天）
connections: current=4, active=1, totalCreated=71
opcounters: query=997, update=6, command=2132
mem: resident=198MB, virtual=559MB
replica set: not running with --replSet（单机 standalone）
```

## 6. Redis

### 6.1 配置与监听

- 监听：`0.0.0.0:6379`（对外开放）
- 配置文件：`/etc/redis/redis.conf`
- 数据目录：`/var/lib/redis`
- 关键配置（`/etc/redis/redis.conf` 摘要）：
  - `bind 0.0.0.0`
  - `protected-mode yes`
  - `requirepass <已配置>`（对应候选#1）
  - `appendonly no`（AOF 关闭）

### 6.2 运行状态（INFO 摘要快照）

```text
uptime_in_seconds: 297866（约 3.45 天）
connected_clients: 1
used_memory_human: 1.35M
used_memory_rss_human: 27.02M
role: master
connected_slaves: 0
keyspace: 空（未看到 db0/db1... 统计）
```

## 7. 风险点与建议（简要）

1. **四个数据库均对外监听**（`0.0.0.0` 或 `*`）：请确认防火墙/安全组只放行必要来源 IP；如无外网访问需求，优先改为仅监听 `127.0.0.1`。
2. MongoDB 已开启鉴权是好的，但仍建议配合网络层限制（只放行应用服务器）。
3. Redis 虽有 `protected-mode yes + requirepass`，但依旧不建议直接暴露公网；建议加 ACL、内网隔离或仅本机监听。

## 8. 复查/再采集

- 重新采集全量：`bash /root/db_runtime_status.sh`
- 仅采集 MongoDB：`bash /root/db_runtime_status.sh --mongo-only`

