构建安全的数据库环境:群晖NAS安装MySQL和phpMyAdmin详细步骤
文章目录
- 前言
- 1. 安装MySQL
- 2. 安装phpMyAdmin
- 3. 修改User表
- 4. 本地测试连接MySQL
- 5. 安装cpolar内网穿透
- 6. 配置MySQL公网访问地址
- 7. 配置MySQL固定公网地址
- 8. 配置phpMyAdmin公网地址
- 9. 配置phpmyadmin固定公网地址
前言
本文将详细讲解如何在群晖NAS上安装MySQL及其数据库管理工具phpMyAdmin,并结合cpolar内网穿透工具配置公网地址,以实现对本地部署的phpMyAdmin的远程访问。
在群晖NAS上安装MySQL,用户可以享受到高效、安全、可靠和灵活的数据管理体验。该平台的优越硬件性能和稳定性确保了MySQL数据库的高效运行和数据安全。
phpMyAdmin是一个基于PHP的MySQL数据库管理工具,提供了直观的Web图形界面,方便用户直接管理MySQL数据库。通过phpMyAdmin,用户可以轻松创建、修改和删除数据库及数据表,导入和导出整个数据库,并执行多种其他MySQL系统管理任务。
1. 安装MySQL
在群晖套件中心,我们搜索mariadb,出来搜索结果后点击安装

安装过程中,会提示设置密码,需设置密码

设置完成后,点击完成,开始安装

安装完成后,我们打开配置界面,开启TCP/IP连接,勾选后点击应用

2. 安装phpMyAdmin
上面我们安装了数据库后,需要修改数据表中的root用户的访问方式,使我们可以远程访问,所以我们需要安装phpMyAdmin来修改相关参数.
运行它我们需要安装PHP7.4版本环境,所以我们在套件中心搜索php 7.4 然后安装.

安装完成后,再次在套件中心中搜索phpMyAdmin,然后点击安装

安装完成后我们在"已安装"的套件列表中找到phpMyAdmin,打开

输入数据库用户名root 和我们上面安装数据库的时候设置的密码,登录

3. 修改User表
登录后点击mysql数据库

找到user表

双击修改表中Host字段下面的localhost值

改为%,表示不限制ip访问,这样修改后就可以远程mysql了

然后在群晖套件中心中找到安装的mariadb,停止,然后重新启动,让我们修改的配置生效

4. 本地测试连接MySQL
打开数据库连接工具,输入群晖的局域网ip地址,输入数据库用户名和密码,点击测试连接,出现successful!表示成功!

5. 安装cpolar内网穿透
cpolar群晖套件下载地址:https://www.cpolar.com/synology-cpolar-suite,下载相应版本的套件

打开套件中心,点击右上角的手动安装按钮。

选择我们本地下载好的cpolar安装包。

点击下一步按钮

点击同意按钮

之后,一路点击下一步按钮安装完成即可。

在外部浏览器,我们通过群晖的局域网ip地址加9200端口,cpolar的Web管理界面,默认端口为9200,输入cpolar邮箱账号与密码进行登录

6. 配置MySQL公网访问地址
登录成功后,点击左侧仪表盘的隧道管理——创建隧道:
- 隧道名称:可自定义,注意不要与已有的隧道名称重复
- 协议:tcp
- 本地地址:3306
- 端口类型:临时随机TCP端口
- 地区:选择China VIP
点击创建

然后打开在线隧道列表,查看tcp协议的mysql公网连接地址.

接下来我们使用公网地址连接,打开mysql连接工具,输入公网地址和对应的公网端口,同时输入用户名和密码,点击测试连接,出现连接成功表示ok.

7. 配置MySQL固定公网地址
要注意的是,以上步骤使用的是随机临时tcp端口地址,所生成的公网地址为随机临时地址,该公网地址24小时内会随机变化。我们接下来为其配置固定的TCP端口地址,该地址不会变化,设置后将无需每天重复修改地址。
cpolar官网: https://www.cpolar.com
登录cpolar官网,点击左侧的预留,找到保留的tcp地址,我们来为MySQL保留一个固定tcp地址:
地区:选择China
描述:即备注,可自定义
点击保留

地址保留成功后,系统会生成相应的固定公网地址,将其复制下来

进入cpolar web ui管理界面,点击左侧仪表盘的隧道管理——隧道列表,找到我们上面创建的tcp隧道,点击右侧的编辑

修改隧道信息,将保留成功的固定tcp地址配置到隧道中
- 端口类型:修改为固定tcp端口
- 预留的tcp地址:填写官网保留成功的地址,
点击更新

隧道更新成功后,点击左侧仪表盘的状态——在线隧道列表,可以看到公网地址已经更新成为了固定tcp地址。

上面我们固定了mysql连接地址,现在我们使用固定的公网地址连接测试,打开mysql连接工具,输入公网地址和对应的公网端口,同时输入用户名和密码,点击测试连接,出现 successful! 表示ok,这样一个在群晖NAS的远程固定的mysql连接地址就设置好了.

8. 配置phpMyAdmin公网地址
同理,如果我们要实现远程访问phpMyAdmin的web页面对本地数据库进行管理,也可以为它配置公网地址:
首先,回到cpolar的Web管理界面(群晖的局域网ip地址加9200端口)
点击左侧仪表盘的隧道管理——创建隧道:
- 隧道名称:可自定义,注意不要与已有的隧道名称重复(本例使用的是 phpmad)
- 协议:http
- 本地地址:80
- 域名类型:随机域名
- 地区:选择China VIP
点击创建

隧道创建成功后,点击左侧的状态——在线隧道列表,查看所生成的公网地址,然后复制地址

打开浏览器,使用上面任意一个 公网地址/phpmyadmin 如: https://476b7e33.r21.vip.cpolar.cn/phpmyadmin
然后访问,即可看到登录界面:

使用cpolar内网穿透生成的公网地址,成功实现了远程访问phpmyadmin的web页面对本地数据库进行管理。
9. 配置phpmyadmin固定公网地址
由于以上使用cpolar所创建的隧道使用的是随机公网地址,24小时内会随机变化,不利于长期远程访问。因此我们可以为其配置二级子域名,该地址为固定地址,不会随机变化。
登录cpolar官网,点击左侧的预留,选择保留二级子域名,设置一个二级子域名名称,点击保留,保留成功后复制保留的二级子域名名称:(本例使用的是 myphpmad 大家可以自定义)

保留成功后复制保留的二级子域名地址 myphpmad
回到cpolar web UI管理界面,点击左侧仪表盘的隧道管理——隧道列表,找到所要配置的phpmad隧道,点击右侧的编辑:

修改隧道信息,将保留成功的二级子域名配置到隧道中
- 域名类型:选择二级子域名
- Sub Domain:填写保留成功的二级子域名 myphpmad
点击更新

更新完成后,打开在线隧道列表,此时可以看到公网地址已经发生变化,地址名称也变成了保留过的二级子域名名称,将其复制下来:

然后使用固定https地址+/phpmyadmin打开浏览器访问,同样访问成功,且域名不会发生变化:
https://myphpmad.vip.cpolar.cn/phpmyadmin/


以上就是如何在群晖NAS安装MySQL与数据库管理工具phpMyAdmin,并使用cpolar内网穿透工具为其分别配置固定公网TCP地址与http地址,实现随时随地远程连接本地局域网内MySQL与使用phpMyAdmin管理数据库的全部流程。感谢您的观看,有任何问题欢迎留言交流。
相关文章:
构建安全的数据库环境:群晖NAS安装MySQL和phpMyAdmin详细步骤
文章目录 前言1. 安装MySQL2. 安装phpMyAdmin3. 修改User表4. 本地测试连接MySQL5. 安装cpolar内网穿透6. 配置MySQL公网访问地址7. 配置MySQL固定公网地址8. 配置phpMyAdmin公网地址9. 配置phpmyadmin固定公网地址 前言 本文将详细讲解如何在群晖NAS上安装MySQL及其数据库管理…...
【人工智能】深入理解图神经网络(GNN):用Python实现社交网络节点分类与分子结构分析
解锁Python编程的无限可能:《奇妙的Python》带你漫游代码世界 《Python OpenCV从菜鸟到高手》带你进入图像处理与计算机视觉的大门! 图神经网络(Graph Neural Network, GNN)是近年来在深度学习领域迅速发展的新兴方向,主要用于处理图结构数据。GNN在社交网络分析、化学分…...
Qt 日志文件的滚动写入
Qt 日志文件的滚动写入 flyfish 日志文件的滚动写入功能。在日志文件达到10MB时创建新的日志文件,并且在总日志文件大小达到10GB时开始覆盖最早的日志文件 以监控一个文件夹的写日志为例 日志文件创建与管理 初始化日志文件:在FileMonitor类的构造函…...
【c语言】数据包捕获和分析工具
请解释一下数据包捕获和分析工具(如Wireshark)的工作原理和用途。 数据包捕获和分析工具,如Wireshark(前身为Ethereal),是一种网络协议分析软件,它允许用户实时监控、抓取并分析计算机网络中的网…...
移情别恋c++ ദ്ദി˶ー̀֊ー́ ) ——14.哈希(2)(模拟实现)
1.概念介绍 1.1开散列 开散列(Open Hashing),也叫链地址法,是一种解决哈希冲突的方法。每个哈希表槽位保存一个链表,所有散列到同一位置的元素都存储在该链表中。当插入元素发生冲突时,将新元素添加到相应…...
请描述一下JVM(Java虚拟机)的生命周期及其对应用程序性能的影响
1、请描述一下JVM(Java虚拟机)的生命周期及其对应用程序性能的影响。 JVM(Java虚拟机)的生命周期主要涉及以下几个阶段:加载、验证、准备、解析、执行、卸载。每个阶段都有其特定的作用和影响。 加载:JVM…...
展会邀约|加速科技与您相约IC China 2024!
第二十一届中国国际半导体博览会( IC China 2024)将于 2024 年11月18日—11月20日在北京国家会议中心举行。加速科技将携高性能测试机ST2500EX、ST2500E、eATE及全系测试解决方案亮相E2馆B150展位。博览会期间,将同期举办"半导体产业前沿…...
鸿蒙中服务卡片数据的获取和渲染
1. 2.在卡片中使用LocalStorageProp接受传递的数据 LocalStorageProp("configNewsHead") configNewsHeadLocal: ConfigNewsHeadInfoItem[] [] 注意:LocalStorageProp括号中的为第一步图片2中的键 3.第一次在服务卡片的第一个卡片中可能会获取不到数据…...
运维篇-修复centos7无法下载docker问题
修复centos7无法下载docker问题 1、安装docker时报错2、docker无法下载镜像 1、安装docker时报错 linux的centos系统,安装docker时会报错 –> Finished Dependency Resolution Error: Package: glibc-2.17-307.el7.1.i686 (base) Requires: glibc-common 2.17…...
【论文阅读】WaDec: Decompiling WebAssembly Using Large Language Model
论文阅读笔记:WaDec: Decompiling WebAssembly Using Large Language Model 1. 来源出处 论文标题: WaDec: Decompiling WebAssembly Using Large Language Model作者: Xinyu She, Yanjie Zhao, Haoyu Wang会议: 39th IEEE/ACM International Conference on Automated Softwar…...
redis类型介绍
1. 字符串(String): • 简介:最基础的数据类型,可以存储任何形式的字符串,包括文本数据和数字数据。 • 常用操作:SET、GET、INCR、DECR等。 2. 列表(List): …...
kubernetes如何配置默认存储
如果不想每次都创建PV,希望k8s集群中能够配置号默认存储,然后根据你的PVC自动创建PV,就需要安装一个默认存储,也就是storageclass 什么是storageclass Kubernetes提供了一套可以自动创建PV的机制,即:Dyna…...
【微服务】Spring AI 使用详解
目录 一、前言 二、Spring AI 概述 2.1 什么是Spring AI 2.2 Spring AI 特点 2.3 Spring AI 带来的便利 2.4 Spring AI 应用领域 2.4.1 聊天模型 2.4.2 文本到图像模型 2.4.3 音频转文本 2.4.4 嵌入大模型使用 2.4.5 矢量数据库支持 2.4.6 数据工程ETL框架 三、Sp…...
DataGrip 连接 dm
参考链接 使用DataGrip链接达梦数据库_datagrip连接达梦数据库-CSDN博客 下载 jdbc 驱动包 第一种 通过链接下载:下载 第二种【特指 window 安装包】 在达梦安装包 iso 文件里面 source/drivers/jdbc 将驱动添加进 DataGrip 选中 jdbc 驱动包,然后选…...
数据库监控工具DBdoctor v3.2.4.3版本发布,新增对openGauss、Vastbase G100的支持!
新引擎扩展 新增对openGauss数据库的支持:支持对openGauss数据库的SQL审核、实例巡检、性能洞察、锁透视、根因诊断、基础监控、索引推荐、存储分析; 新增对Vastbase G100数据库的支持:支持对Vastbase G100数据库的SQL审核、实例巡检、性能洞…...
Git 常用命令大全与详解
Git 是一种广泛使用的分布式版本控制系统。无论是管理个人项目还是进行团队协作,掌握 Git 的常用命令都是开发者必备的技能之一。本文将介绍一些常用的 Git 命令,并对其进行详细说明。 1. 基础命令 初始化仓库 git init:在当前目录下初始化…...
执行flink sql连接clickhouse库
手把手教学,flink connector打通clickhouse大数据库,通过下发flink sql,来使用ck。 组件版本jdk1.8flink1.17.2clickhouse23.12.2.59 1.背景 flink官方不支持clickhouse连接器,工作中难免会用到。 2.方案 利用GitHub大佬提供…...
什么是C++中的友元函数和友元类?
友元函数(Friend Function)和 友元类(Friend Class)是用于控制类的访问权限的机制。这允许特定的函数或类访问另一个类的私有成员和保护成员,打破了 C 的封装性规则。 友元函数 定义 友元提供了不同类的成员函数之间…...
基于Spring Boot+Vue的多媒体素材管理系统的设计与实现
一.系统开发工具与环境搭建 1.系统设计开发工具 后端使用Java编程语言的Spring boot框架 项目架构:B/S架构 运行环境:win10/win11、jdk17 前端: 技术:框架Vue.js;UI库:ElementUI; 开发工具&…...
Inpaint-Web:纯浏览器端实现的开源图像处理工具
之前在刷短视频的时候,经常看到一些情侣在景区拍照,结果被路人“抢镜”。有时男朋友会拿出手机,帮忙把那些路人“P”掉,简直是既贴心又有趣。最近我在逛 GitHub 时,发现了一个可以在浏览器端删除照片中部分内容的纯前端…...
浏览器访问 AWS ECS 上部署的 Docker 容器(监听 80 端口)
✅ 一、ECS 服务配置 Dockerfile 确保监听 80 端口 EXPOSE 80 CMD ["nginx", "-g", "daemon off;"]或 EXPOSE 80 CMD ["python3", "-m", "http.server", "80"]任务定义(Task Definition&…...
基于算法竞赛的c++编程(28)结构体的进阶应用
结构体的嵌套与复杂数据组织 在C中,结构体可以嵌套使用,形成更复杂的数据结构。例如,可以通过嵌套结构体描述多层级数据关系: struct Address {string city;string street;int zipCode; };struct Employee {string name;int id;…...
测试微信模版消息推送
进入“开发接口管理”--“公众平台测试账号”,无需申请公众账号、可在测试账号中体验并测试微信公众平台所有高级接口。 获取access_token: 自定义模版消息: 关注测试号:扫二维码关注测试号。 发送模版消息: import requests da…...
java_网络服务相关_gateway_nacos_feign区别联系
1. spring-cloud-starter-gateway 作用:作为微服务架构的网关,统一入口,处理所有外部请求。 核心能力: 路由转发(基于路径、服务名等)过滤器(鉴权、限流、日志、Header 处理)支持负…...
进程地址空间(比特课总结)
一、进程地址空间 1. 环境变量 1 )⽤户级环境变量与系统级环境变量 全局属性:环境变量具有全局属性,会被⼦进程继承。例如当bash启动⼦进程时,环 境变量会⾃动传递给⼦进程。 本地变量限制:本地变量只在当前进程(ba…...
vue3 定时器-定义全局方法 vue+ts
1.创建ts文件 路径:src/utils/timer.ts 完整代码: import { onUnmounted } from vuetype TimerCallback (...args: any[]) > voidexport function useGlobalTimer() {const timers: Map<number, NodeJS.Timeout> new Map()// 创建定时器con…...
C++八股 —— 单例模式
文章目录 1. 基本概念2. 设计要点3. 实现方式4. 详解懒汉模式 1. 基本概念 线程安全(Thread Safety) 线程安全是指在多线程环境下,某个函数、类或代码片段能够被多个线程同时调用时,仍能保证数据的一致性和逻辑的正确性…...
微软PowerBI考试 PL300-在 Power BI 中清理、转换和加载数据
微软PowerBI考试 PL300-在 Power BI 中清理、转换和加载数据 Power Query 具有大量专门帮助您清理和准备数据以供分析的功能。 您将了解如何简化复杂模型、更改数据类型、重命名对象和透视数据。 您还将了解如何分析列,以便知晓哪些列包含有价值的数据,…...
Mysql中select查询语句的执行过程
目录 1、介绍 1.1、组件介绍 1.2、Sql执行顺序 2、执行流程 2.1. 连接与认证 2.2. 查询缓存 2.3. 语法解析(Parser) 2.4、执行sql 1. 预处理(Preprocessor) 2. 查询优化器(Optimizer) 3. 执行器…...
C++课设:简易日历程序(支持传统节假日 + 二十四节气 + 个人纪念日管理)
名人说:路漫漫其修远兮,吾将上下而求索。—— 屈原《离骚》 创作者:Code_流苏(CSDN)(一个喜欢古诗词和编程的Coder😊) 专栏介绍:《编程项目实战》 目录 一、为什么要开发一个日历程序?1. 深入理解时间算法2. 练习面向对象设计3. 学习数据结构应用二、核心算法深度解析…...
