群晖小白系列 篇三十五:高级玩家必备 - 使用phpMyAdmin管理群晖中的数据库

2024-04-02 09:43:10 10点赞 59收藏 3评论

数据库,这个在我们工作中或日常生活随处可见的术语,对许多人来说依旧带着一层神秘的面纱。其实你正在浏览老宁的这篇文章,它就被保存在云端数据库中。

我们在使用群晖的 Container Manager 套件或 Docker 进行创建容器时,经常会遇到同时安装数据库容器的情况。隐隐中,我们可能认为不同的项目应该能够共享同一个数据库,但是由于缺少相关知识,又怕引起其他问题,就不了了之。

所以今天老宁将一步步带你认识群晖中的数据库,从更深层次教你使用群晖 phpMyAdmin 套件管理群晖中的数据库,以及多个项目如何共用一个数据库,让你在折腾群晖时更加顺畅。

数据库

什么是数据库?

数据库就像是一个大书架(表),你可以在上面整齐地摆放各种各样的书籍。每本书就像是一条数据记录,里面包含了很多信息,比如书名、作者、出版日期等。这些信息就像数据字段,它们告诉我们每本书的具体情况。

你可以想象,如果有很多这样的书架,每个书架上都有很多书,那么你需要一个系统的方法来找到你想要的那本书。这就是数据库的工作。它帮助你组织和分类所有的书籍,让你能够通过搜索书名或者作者等信息快速找到你需要的内容。

除了一些简单的,不需要使用数据库的应用程序外,大多数项目都需要使用数据库。比如前面介绍的兰空图床,它就用到了 MySQL 数据库。

当然数据库的种类也有很多,比如 MySQLPostgreSQLSQLiteMicrosoft SQL ServerMariaDBRedisMongoDB 等等。

当我们在启动容器时,会拉取 image: postgres:15 这样的镜像,那就代表了该项目使用了 PostgreSQL 数据库。

高级玩家必备 - 使用phpMyAdmin管理群晖中的数据库

群晖 MariaDB 套件

群晖上提供了 MariaDB 套件,可以方便用户一键安装 MariaDB 数据库服务(MariaDB 最初是作为 MySQL 的一个分支,它们两者之间的兼容性非常高)。

高级玩家必备 - 使用phpMyAdmin管理群晖中的数据库

MariaDB 安装方法非常简单。在套件中心搜索 MariaDB,点击安装按钮后,再输入密码和端口(3306被服务端口占用了)等待安装完毕即可。

高级玩家必备 - 使用phpMyAdmin管理群晖中的数据库

一般情况下数据库的最高权限是用户都是:root,它可以访问数据库的任何表,并对它们进行增加、删除、修改、查询操作。如果想要把 MariaDB 数据库服务映射到外网,需要开启 TCP/IP 连接,并在路由器开启端口映射

高级玩家必备 - 使用phpMyAdmin管理群晖中的数据库

群晖 phpMyAdmin 套件

想要查看和管理数据库中的数据,除了通过专业且复杂的命令行操作,更直观、简单的方式就是借助各类图形化界面管理工具了。

在众多数据库中,MySQL 是应用最广泛的一种。为了让大家在使用 MySQL 时更加得心应手,我们主要介绍群晖 DSM 内置的图形化管理工具:phpMyAdmin 套件。

phpMyAdmin 是一个用 PHP 编写的免费且开源的 Web 应用,它通过一个清晰易用的网页界面,让我们能够轻松地对 MySQL 和 MariaDB 数据库进行管理。

高级玩家必备 - 使用phpMyAdmin管理群晖中的数据库

在群晖中安装 phpMyAdmin 和其他套件一样,只需在套件中心搜索即可安装。phpMyAdmin 套件需要依赖 Web Station 和 PHP 8,所以它们会被同时安装。

高级玩家必备 - 使用phpMyAdmin管理群晖中的数据库

安装完毕后,需要新增网页服务门户,设置类型为基于端口,并配置端口号。(只要没被占用的端口都行)

高级玩家必备 - 使用phpMyAdmin管理群晖中的数据库

在内网中可以直接通过【http://群晖:9200】访问 phpMyAdmin 后台管理界面,如果需要在公网进行访问,那么则需要配置反向代理或端口映射。

高级玩家必备 - 使用phpMyAdmin管理群晖中的数据库

管理 MariaDB

要对数据库进行管理,首先要登录到数据库。

在 phpMyAdmin 登录界面,输入用户名:root,密码为前面安装 MariaDB 设置的密码,就能登录到 MariaDB 服务。

高级玩家必备 - 使用phpMyAdmin管理群晖中的数据库

登录成功后,在界面左侧可以看到 MariaDB 中所有的数据库。

高级玩家必备 - 使用phpMyAdmin管理群晖中的数据库

右侧可以看到当前 MariaDB 的信息,包括类型、连接状态等信息。

高级玩家必备 - 使用phpMyAdmin管理群晖中的数据库

如果要创建新的数据库,可以在数据库菜单中进行创建。

高级玩家必备 - 使用phpMyAdmin管理群晖中的数据库

要对账户进行管理,可以在账户菜单新增账户或者对某账户授予特定的访问权限。

高级玩家必备 - 使用phpMyAdmin管理群晖中的数据库

至于其他的操作,老宁就不展开细说了。

管理MySQL

现在我们学会了通过 phpMyAdmin 管理群晖自带的 MariaDB 数据库。如果想要使用 phpMyAdmin 管理其他地方的数据库,比如 Container Manager 中的数据库,又该如何操作呢?

接下来以老宁写的兰空图床的配套安装的数据库为例。如果不知道如何安装 MySQL 数据库,可以参考这篇文章

首先我们要了解群晖的 phpMyAdmin 和 MariaDB 套件其实是两个东西,并不是说 phpMyAdmin 安装完毕后就能直接找到 MariaDB 数据库直接对它进行管理。

最重要的是 Web Station 套件中的 web_packages文件夹,它会将 Web Station 中的配置文件全部放在里面。而 phpMyAdmin 想要连接到 MariaDB 数据库,就是因为在synology_server_choice.json 文件中有相应的配置

高级玩家必备 - 使用phpMyAdmin管理群晖中的数据库

当我们打开 synology_server_choice.json 文件后,就可以看到它是通过 Socket 方式进行连接的

高级玩家必备 - 使用phpMyAdmin管理群晖中的数据库

这也就解释了前面在 MariaDB 套件中没有启用 TCP/IP 也能使用 phpMyAdmin 连接到 MariaDB 的原因,而使用 socket 连接数据库是不需要指定端口号的,所以在 MariaDB 中设置的端口号是为了使用 TCP/IP 连接。

根据前面的教程,我们在 Container Manager 中新建了一个 MySQL 数据库,端口为3306,网络模式为 bridge。

高级玩家必备 - 使用phpMyAdmin管理群晖中的数据库

synology_server_choice.json 文件下载到本地电脑,在方括号中新增如下代码。

{ "verbose": "MySQL", "auth_type": "cookie", "host": "192.168.2.99", "port": "3306", "connect_type": "tcp", "compress": false, "AllowNoPassword": false }

注意花括号之间需要用逗号隔开,host 为群晖的内网IP,port 为容器映射的端口号

高级玩家必备 - 使用phpMyAdmin管理群晖中的数据库

保存并上传到群晖后,覆盖原有的 synology_server_choice.json 文件。重新打开 phpMyAdmin 登录界面就能看到有两个服务器,分别对应 MariaDB 套件和 Container Manager 中的 MySQL。

高级玩家必备 - 使用phpMyAdmin管理群晖中的数据库

选择 MySQL 后,输入在创建容器时配置的 root 密码,可以看到名为 lsky 的数据库

高级玩家必备 - 使用phpMyAdmin管理群晖中的数据库

每个数据库中都有许多的,每个表中存储了大量的数据信息

高级玩家必备 - 使用phpMyAdmin管理群晖中的数据库

共用数据库

最后来看看多个服务都需要数据库服务时,如何共用。

通过下面的 Docker 命令,我们知道这个镜像时需要用到数据库服务的。

高级玩家必备 - 使用phpMyAdmin管理群晖中的数据库

原来在安装图床时,已经安装上启动了一个 MySQL 容器,再去重新安装一个 MySQL 是十分浪费性能的,所以直接共用原来的即可。

在配置容器时,我们只需要手动设置 DB_HOST、DB_PORT、DB_USERNAME、DB_PASSWORD 为已安装的 MySQL 服务器,再输入一个数据库名 firefly。

这样 firefly_iii 就能自己在 MySQL 中新增一个名为 firefly 的数据库以供自己使用。

高级玩家必备 - 使用phpMyAdmin管理群晖中的数据库

如果要使用 MariaDB ,要怎么操作呢?还记得前面说到的 TCP/IP 和 Socket 吗?要使用 TCP/IP 方式进行连接,就必须要在 MariaDB 界面中勾选启用。

高级玩家必备 - 使用phpMyAdmin管理群晖中的数据库

在使用 Docker Compose 文件的复杂项目中,往往也会拉取数据库镜像,我们可以通过修改其配置文件来达到共用数据库服务的目的。不过这个操作更加复杂,由于文章篇幅限制,我们后面再说。

我是老宁

一个热爱技术的程序员和极客,群晖NAS深度玩家!

专注NAS相关技术分享,原创!干货!

觉得老宁的文章对你有帮助,记得点赞、收藏、加关注

作者声明本文无利益相关,欢迎值友理性交流,和谐讨论~

展开 收起

Synology 群晖 DS1821+ 8盘位NAS (V1500B、4GB)

Synology 群晖 DS1821+ 8盘位NAS (V1500B、4GB)

¥8899.00

Synology 群晖 DS224+ 双盘位NAS(赛扬J4125、2GB)

Synology 群晖 DS224+ 双盘位NAS(赛扬J4125、2GB)

¥2829.00

Synology 群晖 DS220+ 2盘位NAS (赛扬J4025、2GB)

Synology 群晖 DS220+ 2盘位NAS (赛扬J4025、2GB)

¥2179.00

Synology 群晖 DS224+ 双盘位NAS(赛扬J4125、2GB)

Synology 群晖 DS224+ 双盘位NAS(赛扬J4125、2GB)

2829元起

Synology 群晖 DS220+ 2盘位NAS (赛扬J4025、2GB)

Synology 群晖 DS220+ 2盘位NAS (赛扬J4025、2GB)

2179元起

Synology 群晖 DS920+ 4盘位 NAS存储(J4125、4GB)

Synology 群晖 DS920+ 4盘位 NAS存储(J4125、4GB)

2190.84元起

Synology 群晖 DS423+ 4盘位 NAS网络存储 (Intel四核 、无内置硬盘)

Synology 群晖 DS423+ 4盘位 NAS网络存储 (Intel四核 、无内置硬盘)

4079元起

Synology 群晖 DS1821+ 8盘位NAS (V1500B、4GB)

Synology 群晖 DS1821+ 8盘位NAS (V1500B、4GB)

8899元起

Synology 群晖 DS223j 双盘位 NAS网络存储服务器 私有云 智能相册 文件自动同步

Synology 群晖 DS223j 双盘位 NAS网络存储服务器 私有云 智能相册 文件自动同步

1529元起

Synology 群晖 DS923+ NAS网络存储服务器 标准无硬盘

Synology 群晖 DS923+ NAS网络存储服务器 标准无硬盘

4899元起

Synology 群晖 DS1821+ 8盘位 NAS(V1500B、4GB)

Synology 群晖 DS1821+ 8盘位 NAS(V1500B、4GB)

7196元起

群晖(Synology)DS124单盘位NAS网络存储服务器私有云智能相册文件自动同步

群晖(Synology)DS124单盘位NAS网络存储服务器私有云智能相册文件自动同步

1399元起

Synology 群晖 DS720+ 双盘位NAS(J4125、2GB)

Synology 群晖 DS720+ 双盘位NAS(J4125、2GB)

4099元起

synology群晖nas云存储ds920+中小型企业办公网络存储群辉家庭个人私有云盘四盘位NAS备份硬盘服务器ds918+(DS920+希捷企业级16T*4)

synology群晖nas云存储ds920+中小型企业办公网络存储群辉家庭个人私有云盘四盘位NAS备份硬盘服务器ds918+(DS920+希捷企业级16T*4)

13746元起

Synology 群晖 DS416 企业级 NAS网络存储

Synology 群晖 DS416 企业级 NAS网络存储

暂无报价

Synology 群晖 DS423 四核心 4盘位 NAS网络存储 私有云 照片自动备份

Synology 群晖 DS423 四核心 4盘位 NAS网络存储 私有云 照片自动备份

3179元起

Synology 群晖 DS223 2盘位NAS(Realtek RTD1619B、2GB)

Synology 群晖 DS223 2盘位NAS(Realtek RTD1619B、2GB)

2279元起

Synology 群晖 DS420+ 4盘位NAS (赛扬J4025、2GB)

Synology 群晖 DS420+ 4盘位NAS (赛扬J4025、2GB)

3090元起

Synology 群晖 DS1621+ 六盘位NAS (V1500B、4GB)

Synology 群晖 DS1621+ 六盘位NAS (V1500B、4GB)

6899元起

文中相关商品

Synology 群晖 DS220+ 2盘位NAS (赛扬J4025、2GB)
Synology 群晖 DS1821+ 8盘位NAS (V1500B、4GB)
Synology 群晖 DS224+ 双盘位NAS(赛扬J4125、2GB)
3评论

  • 精彩
  • 最新
提示信息

取消
确认
评论举报

相关好价推荐
查看更多好价

相关文章推荐

更多精彩文章
更多精彩文章
最新文章 热门文章
59
扫一下,分享更方便,购买更轻松