Files
nexus/wiki/entities/MariaDB.md

70 lines
1.9 KiB
Markdown

# MariaDB
## Entity Information
- **Type**: Database / Product / Project
- **Status**: Active
- **Source**: [[mysql-mariadb-数据库详细信息]]
## Overview
MariaDB 是 Synology NAS Docker 环境部署的开源关系型数据库,提供内网和公网双通道访问能力。
## Aliases
- MySQL (MariaDB 是 MySQL 的开源分支,语法高度兼容)
## Configuration
### 内网访问配置
| 项目 | 值 |
|------|-----|
| IP | 192.168.3.17 |
| Port | 3307 |
| Username | shenwei |
| Password | !Abcde12345 |
| Root | root / !Abcde12345 |
### 公网访问配置
| 项目 | 值 |
|------|-----|
| Domain | mysql.ishenwei.online |
| Port | 63307 |
| Username | shenwei |
| Password | !Abcde12345 |
### Socket 登录(本地管理员访问)
```bash
sudo mysql -u root -p -S /run/mysqld/mysqld10.sock
```
### 创建远程访问用户
```sql
-- 创建允许任意主机访问的用户
CREATE USER 'shenwei'@'%' IDENTIFIED BY '!Abcde12345';
GRANT ALL PRIVILEGES ON *.* TO 'shenwei'@'%' WITH GRANT OPTION;
FLUSH PRIVILEGES;
-- 查看当前用户列表
select host, user from mysql.user;
```
## Key Insights
### Host+User 权限模型
MariaDB 使用 `username@host` 组合决定访问权限:
- `root@localhost` — 仅允许本机 socket 连接
- `shenwei@%` — 允许任意主机通过网络连接
### 新安装默认状态
新安装的 MariaDB 通常只有 `root@localhost`,没有网络访问用户,这是远程连接失败的常见原因。
## Related Entities
- [[群晖 NAS]] — MariaDB 的部署宿主机
- [[Docker卷]] — 数据持久化存储
## Related Concepts
- [[Socket 登录]] — 本地安全认证方式
- [[用户权限]] — Host+User 组合权限模型
## Related Sources
- [[mysql-mariadb-数据库详细信息]] — 完整配置文档
- [[Docker卷]] — 包含 mysqldump 备份方法