Spawn使用

Spawn使用1 介绍官网 https spawn cc 日常学习或开发时 遇到需要使用到数据库 如果在公司 数据库肯定不能随便用来测试 即便是测试的库 拿来做自己学习测试用那也不特别合适 就更别说在家了 正常来说我们肯定是要在本地安装自己需要的数据库 那么有没有可以不在本地安装数据库就可以呢 那么接下来的 Spawn 就可以完美的解决这个问题 Spawn 使提供远程的数据库副本 供我们学习开发或测试使用 Spawn 的数据库副本是托管在云上 因此不需要在本地安装数据库服务器了 Spawn 需要用到 GitHub 账

1、介绍

官网:https://spawn.cc/

日常学习或开发时,遇到需要使用到数据库,如果在公司(数据库肯定不能随便用来测试,即便是测试的库,拿来做自己学习测试用那也不特别合适),就更别说在家了。正常来说我们肯定是要在本地安装自己需要的数据库。那么有没有可以不在本地安装数据库就可以呢?那么接下来的Spawn就可以完美的解决这个问题。
Spawn使提供远程的数据库副本,供我们学习开发或测试使用。Spawn的数据库副本是托管在云上,因此不需要在本地安装数据库服务器了。
Spawn需要用到GitHub账号授权使用。没有GitHub的可以先去注册。
Spawn目前支持如下的数据库引擎:






  • MSSQL
  • PostgreSQL
  • MySQL
  • MongoDB
  • Redis

Spawn数据库副本的存储结构与Docker类似,也有imagecontainer,使用时先创建image,再创建container

2、安装Spawn

安装路径:https://docs.spawn.cc/getting-started/installation

安装过程很简单,我这里选择的window安装,下载spawnctl.ext文件到本地,然后将下载的文件放到自己定义的文件目录,官网建议的是放在C:\Program Files\Spawn,这个可以根据自己的喜好调整。然后将对应的目录配置到path环境变量。
检查是否安装成功:

spawnctl version --输出: Client Version: 0.32.26204 Latest Client Version: 0.35 Server Version: 0.0.4.0 A new version of the spawnctl CLI is available! Visit https://www.spawn.cc/docs/getting-started#download-and-install-spawn to install. 

使用Spawn之前,必须先使用GitHub创建账户,成功后使用如下命令进行授权。

spawnctl auth 

执行命令后会在打开浏览器,然后点提交后,控制台输出结果。

Please wait, authenticating... Authenticated successfully. A new version of the spawnctl CLI is available! Visit https://www.spawn.cc/docs/getting-started#download-and-install-spawn to install. 

到这里安装Spawn就已经完成了。

3、使用Spawn

首次使用Spawn时,需要执行spawnctl onboard命令。

3.1、数据镜像

操作数据镜像命令如下:

命令 说明
create data-image 创建镜像
get data-image 获取镜像
delete data-image 删除镜像
update data-image 更新镜像

3.1.1 创建数据镜像

创建数据镜像之前,先创建配置development.yaml文件,文件内容如下:

sourceType: empty name: th-test engine: mysql tag: v1.0 version: 8.0.25 lifetiime: 24h 

配置文件内容解释:

  • sourceType:Spawn支持emptyscriptsbackup
  • name:数据镜像名称
  • engine:数据库引擎
  • tag:数据镜像标签
  • version:数据库版本
  • lifetiime:数据镜像存活时间 不配置默认永久

进入到建好的配置文件目录下,使用命令:

spawnctl create data-image -f .\development.yaml 这里也可以使用绝对路径 spawnctl create data-image -f D:\test\development.yaml 结果: Data image 'th-test' (14410) created! 

3.1.2 获取数据镜像

spawnctl get data-images 或 spawnctl get data-image 
   
  

其中spawnctl get data-image后面可以跟镜像名称或镜像ID,如果不跟效果与spawnctl get data-images一致

3.1.3 更新数据镜像

--添加数据镜像团队 spawnctl update data-image 
  
    --team 
   
     --team 
    
      --删除数据镜像团队 spawnctl update data-image 
     
       --team 
      
        --remove --添加数据镜像标签 spawnctl update data-image 
       
         --tag 
        
          --tag 
         
           --删除数据镜像标签 spawnctl update data-image 
          
            --tag 
           
             --remove --添加数据镜像有效时间 spawnctl update data-image 
            
              --lifetime 2h --修改数据镜像名称 spawnctl update data-image 
             
               --name 
               
               
              
             
            
           
          
         
        
       
      
     
    
  

3.1.4 删除数据镜像

spawnctl delete data-image 
   
  

命令后面可以跟数据镜像名称或ID,可以跟一个或多个,多个空格隔开,例如:

spawnctl delete data-image dev test spawnctl delete data-image 1001 1002 

注意:如果数据镜像里面存在数据容器,则删除失败,必须要先将里面的容器删除。

3.2、数据容器

操作数据容器命令如下:

命令 说明
create data-container 创建数据容器
get data-container 获取数据容器
update data-container 更新数据容器
delete data-container 删除数据容器
save data-container 保存数据容器
reset data-container 重置数据容器
load data-container 加载数据容器
logs data-container 查看数据容器日志
proxy data-container 代理数据容器
graduate data-container 通过数据容器创建数据镜像

3.2.1 创建数据容器

spawnctl create data-container --image 
  
    --lifetime 
    
    
  

--image 基于那个数据镜像创建数据容器
--lifetime 数据容器的存活时间
--name 数据容器的名称
使用如下:






spawnctl create data-container --image th-test --lifetime 1h --name crm-test 创建结果: Data container 'crm-test' () created! -> Server=instances.spawn.cc;Port=31956;User Id=root;Database=mysql;Password=doVLwdfDmW4tKiA4 Use 'spawnctl get data-container crm-test -o yaml' to see these connection details again. 

从结果可以看出数据库的用户名、密码、服务器、端口信息。

3.2.2 获取数据容器

获取数据容器命令与获取数据镜像命令差不多,也是有两个。

spawnctl get data-containers 或 spawnctl get data-container 
   
  

spawnctl get data-container后面不跟容器名称或ID,列出所有容器,与spawnctl get data-containers效果一样。命令后面跟-o wide 或 json,可以查看数据容器更详细信息,json方式结果以JSON格式展现。

spawnctl get data-containers -o json 结果: [{"id":,"imageId":12975,"name":"flyway-container","revision":"rev.0","engine":"PostgreSQL","engineVersion":"11.0","statusMessage":"Running data container 'flyway-container' ()","connectionString":"Host=instances.spawn.cc;Port=31443;Username=spawn_admin_uBsj;Database=foobardb;Password=GFOSBDDbU03rIxtc","host":"instances.spawn.cc","port":31443,"user":"spawn_admin_uBsj","password":"GFOSBDDbU03rIxtc","createdAt":,"expiresAt":0,"status":"Completed"},{"id":,"imageId":14283,"name":"test-container","revision":"rev.0","engine":"PostgreSQL","engineVersion":"11.0","statusMessage":"Running data container 'test-container' ()","connectionString":"Host=instances.spawn.cc;Port=31362;Username=spawn_admin_JraG;Database=postgres;Password=va1O34QqlQAXPydy","host":"instances.spawn.cc","port":31362,"user":"spawn_admin_JraG","password":"va1O34QqlQAXPydy","createdAt":,"expiresAt":0,"status":"Completed"},{"id":,"imageId":14411,"name":"oms","revision":"rev.0","engine":"MySQL","engineVersion":"8.0.25","statusMessage":"Running data container 'oms' ()","connectionString":"Server=instances.spawn.cc;Port=30467;User Id=root;Database=mysql;Password=20iDhEEUgVi1Blax","host":"instances.spawn.cc","port":30467,"user":"root","password":"20iDhEEUgVi1Blax","createdAt":,"expiresAt":0,"status":"Completed"},{"id":,"imageId":14411,"name":"crm-test","revision":"rev.0","engine":"MySQL","engineVersion":"8.0.25","statusMessage":"Running data container 'crm-test' ()","connectionString":"Server=instances.spawn.cc;Port=31956;User Id=root;Database=mysql;Password=doVLwdfDmW4tKiA4","host":"instances.spawn.cc","port":31956,"user":"root","password":"doVLwdfDmW4tKiA4","createdAt":,"expiresAt":,"status":"Completed"}] 

3.2.3 更新数据容器

--更新数据容器存活时间 spawnctl update data-container 
  
    --lifetime 
   
     --更新数据容器名称 spawnctl update data-container 
    
      --name 
      
      
     
    
  

3.2.4 删除数据容器

spawnctl delete data-container 
   
  

与删除数据镜像一样,后面可以跟多个容器名称或ID,使用空格隔开。

3.2.4 保存数据容器

spawnctl save data-container 
   
  

将指定的数据容器保存升级新的版本,如下:

spawnctl save data-container crm-test 结果: Successfully saved data container 'crm-test' New revision is 'rev.1' 

从结果可以看出,创建出来的数据容器版本默认为rev.0,保存后的版本升级为rev.1

3.2.5 重置数据容器

spawnctl reset data-container 
   
  

重置命令后面也可以跟多个数据容器名称或ID,也是以空格隔开。常用的命令就介绍到这里,其他命令就不一一列出来了,使用方式都差不多。

至于怎么去连接数据库使用,这里就不做介绍了。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/204243.html原文链接:https://javaforall.net

(0)
上一篇 2026年3月19日 下午8:40
下一篇 2026年3月19日 下午8:40


相关推荐

  • 在bash中export命令作用是什么_bash:no such file or directory

    在bash中export命令作用是什么_bash:no such file or directoryexport  export命令将会使得被export的变量在运行的脚本(或shell)的所有的子进程中都可用.  不幸的是,没有办法将变量export到父进程(就是调用这个脚本或shell的进程)中.  关于export命令的一个重要的使用就是用在启动文件中,启动文件是用来初始化并且设置环境变量,让用户进程可以存取环境变量脚本不能export(导出)变量到它的父进程(p

    2025年9月4日
    8
  • 怎样快速在线将pdf文件转换成word

    怎样快速在线将pdf文件转换成word免费pdf转word在线转换器在办公环境下如何将PDF转换成Word,是不少上班族普遍需要了解的问题之一。面对上百份需要处理的文档,其实否不用安装专业的PDF转Word转换器,借助免费PDF转Word在线转换器就能轻松帮你搞定PDF转Word问题。pdf在线转换成wordhttp://app.xunjiepdf.com   pdf word在线转换器最新发布的迅捷免费pdf转word

    2022年6月4日
    40
  • c++反编译工具_pc下载软件

    c++反编译工具_pc下载软件  昨天在逆向某App的时候,发现有个加密工具类中的native方法是用C语言编写的,隐藏在so文件中。某大佬推荐逆向工具unidbg,能在pc端直接调用so文件中的函数,最终成功解决了问题。逆向工具之unidbg目录一、`unidbg`引入二、`unidbg`概述三、`unidbg`使用姿势1、下载`unidbg`项目2、导入到IDEA中①、解压压缩包②、打开`IDEA`,导入解压的项目3、测试`unidbg`4、运行自己的`so`文件①、编写`EncryptUtilsJni`类②、参数说明③、执行结果

    2026年1月21日
    6
  • JS实现图片循环滚动

    JS实现图片循环滚动之前在前端的时候有遇到这样一个问题,实现JS图片的循环滚动,然后鼠标移入的时候停止滚动,鼠标移开继续滚动,这里无非就是设置了一个定时器,鼠标移上时清除定时器达到滚动停止的目的,鼠标移开时重设定时器,代码如下:<!DOCTYPE><html> <head> <metacharset=”UTF-8″> <title>JS实…

    2022年7月18日
    16
  • 关于如何将多个Cpp文件关联起来

    关于如何将多个Cpp文件关联起来一 C 编译模式 C 程序中 只包含两类文件 cpp 文件和 h 文件 其中 cpp 文件被称作 C 源文件 里面放的都是 C 的源代码 而 h 文件则被称作 C 头文件 里面放的也是 C 的源代码 C 语言支持 分别编译 separatecomp 一个程序所有的内容 可以分成不同的部分分别放在不同的 cpp 文件里 cpp 文件里的东西都是相对独立的 在

    2026年3月20日
    2
  • windowServer_windowsserver是什么

    windowServer_windowsserver是什么本文转载自https://msdn.microsoft.com/zh-cn/library/ff384253.aspx,主要内容是对msdn中对AppFabric介绍内容的整合以及一些自己的理解。简介AppFrabic托管功能解决的问题特性与功能体系结构IIS和WASASPNETWCF和WF运行时数据库暂留持久化托管承载监控监视管理APIIISManage托管功能应用

    2022年10月17日
    4

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号