Files
nexus/wiki/sources/mysql-mariadb-数据库详细信息.md

2.7 KiB
Raw Blame History

title, type, tags, date
title type tags date
MySQL MariaDB 数据库详细信息 source
database
mariadb
mysql
nas
2026-04-14

Source File

Summary (用中文描述)

  • 核心主题MariaDB/MySQL 数据库的访问配置信息及远程访问用户创建流程
  • 问题域NAS 上的 MariaDB 数据库内网/公网访问配置、用户权限管理
  • 方法/机制:通过 socket 本地登录创建远程访问用户,使用 CREATE USERGRANT 语句配置权限
  • 结论/价值:提供完整的 MariaDB 远程访问配置指南,解决新安装 MariaDB 后只能本地 localhost 访问的问题

Key Claims (用中文描述)

  • 新安装的 MariaDB 默认只有 root@localhost 账户,无法从外部机器连接
  • 远程访问需要创建 username@% 格式的用户(% 表示允许任意主机)
  • Socket 登录是本地管理员访问的安全方式,可绕过网络认证

Key Quotes

"你的 MariaDB 只有 root@localhost,并没有 root@% 或你要连接用的用户账号" — MariaDB 权限诊断核心问题

"CREATE USER 'shenwei'@'%' IDENTIFIED BY '!Abcde12345';" — 允许任意主机远程访问的用户创建命令

Key Concepts

  • Socket 登录:通过 Unix socket 文件进行本地认证,无需网络连接
  • 用户权限Host+User 组合决定访问权限,% 表示任意主机

Key Entities

  • MariaDB开源关系型数据库Synology NAS 上通过 Docker 部署
  • 群晖 NASMariaDB 数据库的宿主机IP: 192.168.3.17
  • shenwei:数据库用户名

Connections

Contradictions

  • 无冲突

访问配置摘要

内网访问

项目
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 登录命令

sudo mysql -u root -p -S /run/mysqld/mysqld10.sock

创建远程访问用户

CREATE USER 'shenwei'@'%' IDENTIFIED BY '!Abcde12345';
GRANT ALL PRIVILEGES ON *.* TO 'shenwei'@'%' WITH GRANT OPTION;
FLUSH PRIVILEGES;

查看当前用户列表

select host, user from mysql.user;