新闻详情

新闻详情

首页 / 资讯中心 / 详情

Prisma 本地集群 MySQL 直连实战:使用 Docker 与 SQL 直接访问数据库

发布时间:2026/11/4 6:32:03来源:尧图网络
Prisma 本地集群 MySQL 直连实战:使用 Docker 与 SQL 直接访问数据库
后端数据库GraphQL【免费下载链接】prisma1 Database Tools incl. ORM, Migrations and Admin UI (Postgres, MySQL MongoDB) [deprecated]项目地址https://gitcode.com/gh_mirrors/pr/prisma1点击查看免费下载导读本篇指南围绕 Prisma 1.x 本地开发集群中直接以 SQL 访问底层 MySQL 数据库这一场景展开。当你通过prisma local start启动本地 Prisma 服务后实际会有prismaPrisma 服务本身与prisma-db承载数据的 MySQL 5.7 服务器两个容器在运行。读完本文你将掌握如何定位prisma-db容器、如何通过docker exec进入 MySQL 客户端、如何识别并切换 Prisma 生成的数据库、如何直接执行SELECT/use/show tables等 SQL 命令排查或修改数据以及这些数据库命名与rawAccess配置背后的源码依据。背景本地 Prisma 集群中的两个容器如果你使用prisma local start启动了本地 Prisma 集群那么 Docker 中会运行两个容器prisma运行 Prisma 主服务对外暴露 GraphQL API默认端口见 docker-compose为4466prisma-db运行 MySQL 服务器真正存储你的业务数据。这套容器编排正是由prisma init生成的 docker-compose.yml 定义的prisma-db使用mysql:5.7镜像通过卷db-persistence:/var/lib/mysql持久化数据并将${DB_PORT}映射到容器内3306端口用于临时/调试时从宿主机访问。此外EndpointDialog.ts 中的数据库服务定义也确认了 MySQL 场景默认采用mysql:5.7镜像并设置MYSQL_ROOT_PASSWORD: prisma。下文假设你已经有一个正在运行的本地 Prisma 服务。第一步获取运行 MySQL 数据库的容器名首先列出正在运行的 Prisma 相关 Docker 容器docker ps --filter nameprisma请确认输出中存在一个名为prisma-db、镜像为mysql:5.7的容器。该容器名与 docker-compose.yml 中services.prisma-db.container_name: prisma-db的声明一致后续所有直连命令都依赖这个名字。第二步打开 MySQL 客户端确认容器存在后执行以下命令打开 MySQL 客户端prisma-db即上一步列表中的容器名docker exec -it prisma-db mysql -u root --host 127.0.0.1 --port 3306 --passwordgraphcool各参数含义参数作用docker exec -it prisma-db在prisma-db容器内以交互式终端运行命令mysql调用容器内置的 MySQL 客户端-u root使用 root 用户登录对应prisma init生成的 docker-compose 中MYSQL_ROOT_PASSWORD环境变量所设的用户--host 127.0.0.1 --port 3306连接到 MySQL 默认端口 3306--passwordgraphcool早期版本的内置密码注意文档写作时默认密码为graphcool该密码已在后续版本中变更为prisma见 EndpointDialog.ts 中MYSQL_ROOT_PASSWORD: prisma以及 prisma.yml 中的password: prisma。如果登录失败请优先尝试--passwordprisma或查看你所用版本对应的 docker-compose 环境变量。第三步向数据库发送 SQL 查询列出可用数据库MySQL 客户端打开后先查看当前可用的数据库show databases;输出类似--------------------------- | Database | --------------------------- | information_schema | | prisma | | logs | | mysql | | performance_schema | | sys | | service-id | ---------------------------其中与你的服务相关的有两个service-id该数据库名是服务名service name与阶段stage的组合形如servicestage例如my-servicedev。它保存了用于生成 GraphQL schema 的服务元信息。这一服务阶段编码规则与部署端实现一致在 MigrationsSpec.scala 中服务标识正是通过projectIdEncoder.toEncodedString(name, stage)生成的。prisma保存 Prisma 服务定义相关的元信息。其余如information_schema、mysql、performance_schema、sys为 MySQL 系统库logs用于内部日志日常直连排查一般无需关注。切换到你的服务数据库使用use命令选中你的服务数据库例如当你的service-id为my-servicedev时use my-servicedev;列出表切换后查看该数据库下的数据表show tables;输出示例以my-appdev为例---------------------- | Tables_in_my-appdev | ---------------------- | Post | | _RelayId | ----------------------其中Post对应你在数据模型datamodel中定义的类型_RelayId是 Prisma 用于 Relay 全局 ID 管理的内部表。直接编写查询现在就可以直接执行 SQL 了例如查询所有帖子SELECT * FROM Post;输出示例--------------------------------------------------------------------------------------------------------------------------------------------------------- | id | createdAt | updatedAt | isPublished | title | text | --------------------------------------------------------------------------------------------------------------------------------------------------------- | cjc82o6cg000b0135wpxgybf6 | 2018-01-09 20:12:02 | 2018-01-09 20:12:02 | 1 | Hello World | This is my first blog post ever! | | cjc82o6mo000d013599yzlwls | 2018-01-09 20:12:02 | 2018-01-09 20:12:02 | 1 | My Second Post | My first post was good, but this one is better! | | cjc82o6n4000f01350jortmv2 | 2018-01-09 20:12:02 | 2018-01-09 20:12:02 | 0 | Solving World Hunger | This is a draft... | ---------------------------------------------------------------------------------------------------------------------------------------------------------可以看到isPublished布尔字段在 MySQL 中以0/1存储而id/createdAt/updatedAt等由 Prisma 自动生成的字段也都在这里可见——这正适合用于核对 Prisma 自动生成的 ID、时间戳等数据或在 GraphQL API 之外做临时数据修正。查询完毕后退出 MySQLexit;进阶理解直连背后的配置与权限直接连入 MySQL 之所以可行除了容器间端口可达之外还依赖服务配置中的rawAccess开关。在 prisma.yml 中port: 4466 databases: default: connector: mysql host: 127.0.0.1 port: 3306 user: root password: prisma rawAccess: truerawAccess: true表示允许对该数据库连接开启原始访问能力。该选项在服务端配置加载器 ConfigLoader.scala 中被显式解析且默认值为falserawAccess rawAccess.getOrElse(false)。这意味着在本地开发 / 调试场景如prisma init生成的配置默认开启rawAccess允许你绕过 GraphQL 直接操作数据库在生产环境的配置中若未显式设置rawAccess: true则默认关闭不应再依赖本文所述方式直连而应通过 Prisma 的 GraphQL API 进行数据访问。小结本文给出了本地 Prisma 集群中直接使用 SQL 访问 MySQL 的完整路径docker ps定位prisma-db容器 →docker exec -it prisma-db mysql打开客户端 →show databases/use service-id/show tables/SELECT执行查询。同时结合仓库源码说明了prisma-db容器的来源docker-compose.yml、servicestage数据库命名规则MigrationsSpec.scala以及rawAccess配置的默认行为ConfigLoader.scala帮助你在本地开发时既能快速定位数据问题也清楚何时不该绕开 GraphQL 直接操作数据库。赞分享后端数据库GraphQL【免费下载链接】prisma1 Database Tools incl. ORM, Migrations and Admin UI (Postgres, MySQL MongoDB) [deprecated]项目地址https://gitcode.com/gh_mirrors/pr/prisma1点击查看免费下载相关推荐Prisma 数据库直连指南用 SQL 直接访问本地 Prisma 集群的 MySQL 数据库Prisma 数据库直连指南用 SQL 直接访问本地 Prisma 集群的 MySQL 数据库 导读 在本地开发 Prisma 服务时你通常通过 Graph后端数据库GraphQLPrisma 数据库直接访问指南使用 SQL 连接本地 MySQL 集群Prisma 数据库直接访问指南使用 SQL 连接本地 MySQL 集群 导读 本文面向使用 Prisma CLI 在本地开发环境中运行 Prisma 集群的后端数据库GraphQL使用 SQL 直接访问本地 Prisma 集群的 MySQL 数据库Docker 实战指南使用 SQL 直接访问本地 Prisma 集群的 MySQL 数据库Docker 实战指南 本指南面向通过 prisma local start 启动本地 P后端数据库GraphQL创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
网站建设高端定制企业官网
RELATED

相关资讯

更多精彩内容,欢迎继续阅读

较早相关资讯

最新相关资讯

【外设】之大彩串口显示屏 2026/11/3 7:07:39

【外设】之大彩串口显示屏

大彩串口屏初步使用 1 .官网下载 STM32 屏幕 GUI 设计资料 http://www.gz-dc.com/category/typeid/4112 找到 STM32 Keil 工程,移植相关代码因项目而异进行移植,由于项目简单,本人只对用到的指令接口进行修改。 比如:注意事项&…

阅读更多 →
无法下载Windows系统iso文件 2026/11/3 12:09:35

无法下载Windows系统iso文件

当我遇到这个问题的时候,我打开了一个网站: 登录 然后我打算下载的时候: 突然那个官方的连接就可以下载了:

阅读更多 →
【清华代码熊】DeepSeek V4.1 Flash 后训练详解 2026/11/3 12:09:38

【清华代码熊】DeepSeek V4.1 Flash 后训练详解

📌 上期解析了 DeepSeek V4.1 Flash 模型架构改进,本期解析 DeepSeek V4.1 Flash 预训练/后训练技术: 🌟 预训练:45T 文本 多模态混合语料、直接训练 sparse attention(取消 DeepSeek V4 的 dense 冷启动&…

阅读更多 →
Shuffle-R1: Efficient RL framework for Multimodal Large Language Models via Data-centric Dynamic ... 2026/11/3 12:09:41

Shuffle-R1: Efficient RL framework for Multimodal Large Language Models via Data-centric Dynamic ...

文章主要内容和创新点 主要内容 本文聚焦于多模态大语言模型(MLLM)强化学习(RL)训练中的效率问题,提出了一个名为Shuffle-R1的框架。研究发现,当前RL训练存在两个关键缺陷: 优势值坍缩(Advantage Collapsing):批次中大多数优势值集中在零附近,导致有效梯度信号被淹…

阅读更多 →
PRvL: Quantifying the Capabilities and Risks of Large Language Models for PII Redaction 2026/11/4 1:25:31

PRvL: Quantifying the Capabilities and Risks of Large Language Models for PII Redaction

一、文章主要内容总结 本文聚焦于利用大型语言模型(LLMs)实现个人身份信息(PII)脱敏的研究,旨在解决传统脱敏方法(如基于规则的系统、领域特定命名实体识别(NER)模型)泛化能力差、跨格式/跨语境适应性弱的问题。 研究通过全面评估多种LLM架构(包括密集型LLM(D-LLM…

阅读更多 →
LLaVA-RE: Binary Image-Text Relevancy Evaluation with Multimodal Large Language Model 2026/11/4 3:51:11

LLaVA-RE: Binary Image-Text Relevancy Evaluation with Multimodal Large Language Model

文章主要内容和创新点 主要内容 本文聚焦于二进制图像-文本相关性评估任务(判断图像与文本“相关”或“不相关”),针对该任务中文本格式多样、相关性定义随场景变化等挑战,提出了基于多模态大语言模型(MLLM)的解决方案LLaVA-RE。 模型设计:LLaVA-RE基于LLaVA 1.5架构,…

阅读更多 →

今日资讯

本周资讯

本月资讯

看完文章仍有疑问?

联系尧图顾问,获取一对一建站咨询

立即免费咨询 📞 400-888-8888
📞 ✉