NAS光速部署MySQL:拥有自己的免费数据库

本文介绍了在私有云数据库的选择上,包括购买云服务商的数据库、云主机部署、家用电脑部署和使用Docker的NAS部署。作者选择了在绿联DX4600NAS设备上通过Docker部署MySQL服务,详细讲解了配置过程,并提到了使用数据库管理工具如Navicat、DBeaver等以及通过Python接口访问数据库。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、如何搞一个私有云数据库

前边老Q在爬虫专栏里给大家演示抓取了彩票、股票行情等数据,并且保存到了数据库中。当时就有朋友问,如何才能搞一个数据库来用。

一般来说,想要搭建一个数据库的话,有一些常见的选择。

  • 最简单、方便、可靠的方式就是花钱买云服务商提供的数据库,只不过这个方式比较费钱;
  • 第二种方式就是如果你有一台云主机,且容量够用,那么你可以选择在云主机上部署数据库服务;
  • 第三种方式就是利用家里的电脑,在家用电脑上部署数据库服务,并且把外网访问配置好,这种方式比较大的缺点就是费电;
  • 第四种就是利用一台支持Docker的NAS来部署数据库,NAS一般有着容量充足、省电的优点,缺点就是可能在复杂、大量的查询时会比较慢,毕竟NAS的CPU不以计算能力见长。

老Q选择了使用NAS来部署MySQL服务,毕竟老Q的NAS已经把内网穿透、域名访问等都配置得妥妥的了,再部署个MySQL服务,那简直是方便至极。

今天,老Q就以绿联DX4600为例,演示下如何部署并使用MySQL服务。

二、Docker部署MySQL服务

首先,我们在镜像仓库中搜索并下载MySQL的镜像。

下载完成后,在本地镜像中找到它,点击创建容器。勾选创建后启动容器。

配置下重启策略。

在NAS中创建一个目录,设置为读写模式,用于保存MySQL的配置和我们的数据,并与容器的/var/lib/mysql目录建立映射。

配置一下端口,这里本地端口指的是我们实际访问时要用到的端口,注意不要和其他服务的端口冲突。

在环境变量中,添加root用户的密码。MYSQL_ROOT_PASSWORD=your_password

点击下一步、点击完成即可。到这里,我们的MySQL服务就已经创建好了。

三、使用数据库

在命令行中,我么你可以使用类似这样的命令mysql -h192.168.31.46 -uroot -P3306 -p来登录并使用MySQL,当然,这里的Hostuserportpassword都要结合实际情况来替换。

我们还可以选择一些数据库管理工具,比如NavicatDBeaverphpMyAdmin或者官方的MySQL Workbench。老Q选择了通过Docker部署开源的DBGate工具,目前用起来虽然功能比较简单,但也基本满足了日常需求,毕竟老Q访问数据库时最主要的访问途径是通过Python接口。

### 部署AI大模型到NAS并建立本地数据库 #### 设备准备与环境配置 为了在 NAS 上成功部署大型 AI 机器学习模型,需确认所使用的 NAS 支持 Docker 或者虚拟机技术。这允许安装必要的依赖库而不影响现有系统稳定性[^1]。 #### 安装Docker容器服务 如果 NAS 已经支持 Docker,则可以直接跳过此步;如果不支持,则需要先启用该功能。具体操作方式取决于不同品牌型号的 NAS 设置界面,在 Synology DSM 中可以通过套件中心找到 Docker 并安装。 ```bash sudo apt-get update && sudo apt-get install docker.io -y ``` 对于 QNAP 用户来说,可以在 App Center 内搜索 "Container Station" 来获取相同的功能。 #### 获取预训练好的AI大模型镜像文件 利用官方提供的 TensorFlow/PyTorch 等框架下的公共仓库拉取已经完成训练的大规模人工智能算法作为基础版本: ```bash docker pull tensorflow/tensorflow:latest-gpu ``` 上述命令会下载最新版带有 GPU 加速特性的 Tensorflow 运行时环境至本地缓存区等待后续调用。 #### 创建持久化的存储卷用于保存权重参数及其他重要资料 考虑到每次重启容器都会丢失内部状态变化这一特性,建议提前规划好外部挂载路径以便长期维护项目成果: ```bash mkdir -p /volume1/docker_data/model_weights/ docker run -d \ --name ai_model_container \ -v /volume1/docker_data/model_weights/:/model_weights \ tensorflow/tensorflow:latest-gpu ``` 这里 `-v` 参数指定了宿主机上的目录映射关系,使得即使删除当前实例也能保留住之前积累下来的知识财富。 #### 构建适合特定应用场景的数据集结构体并与之交互 针对具体的业务需求收集整理相应的样本集合,并将其导入前述定义过的共享空间内供进一步加工处理。同时编写 Python 脚本读写接口方便日后扩展升级逻辑流程。 ```python import os from pathlib import Path data_dir = '/path/to/local/dataset' Path(data_dir).mkdir(parents=True, exist_ok=True) for file_name in ['train.csv', 'test.csv']: with open(os.path.join(data_dir, file_name), mode='w') as f: pass # Create empty files or populate them accordingly. ``` 以上代码片段展示了怎样快速搭建起一套简易但实用的小型文件系统来支撑整个实验周期内的各项活动开展。 #### 数据库的选择与集成 根据实际工作负载特点挑选合适的关系型或非关系型数据库产品进行耦合连接。例如 MySQL 是一种广泛应用于 Web 应用程序背后的传统解决方案之一;而对于 NoSQL 场景下 MongoDB 则更受青睐因为它能很好地适应半结构化文档式的表达形式[^3]。 假设选择了 SQLite 作为轻量级嵌入式 RDBMS 实现方案的话,那么只需要简单的几行 SQL 就可以建立起表单架构并且插入测试记录验证连通性良好与否: ```sql CREATE TABLE IF NOT EXISTS samples ( id INTEGER PRIMARY KEY AUTOINCREMENT, feature TEXT NOT NULL, label INT CHECK(label IN (0, 1)) ); INSERT INTO samples(feature, label) VALUES ('example_feature_value', 0); SELECT * FROM samples LIMIT 5; ``` 最后一步就是确保应用程序层面上能够顺利访问到底层基础设施所提供的各种服务能力了。这就涉及到 API 开发、前端展示等多个方面的工作内容不再赘述。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

量化祛魅官 老Q

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值