自6月底开源以来,许多热心的社区用户都对StoneDB进行了编译和测试,也有一些用户询问StoneDB是否会支持Windows。虽然适配Windows版本的StoneDB尚未进入研发计划,但实际上我们也可以通过强大的docker在windows上体验StoneDB的性能。本文就从一个初学者角度,带大家一起在windows上用docker desktop安装部署StoneDB。
1、安装Docker desktop
因为是在Windows下安装docker,所以需要先安装windows版的docker环境。
1.1 下载
在官方网站(https://www.docker.com/products/docker-desktop/),找到Docker Desktop for windows版本的下载链接,点击下载。
文章图片
1.2 安装
【在windows上用docker desktop安装StoneDB】下载完成后后,打开安装包进行安装。
文章图片
默认会勾选安装WSL 2(WSL是windows推出的可让开发人员不需要安装虚拟机或者设置双系统启动,就可以原生支持运行GNU/Linux的系统环境,简称WSL子系统),按照默认设置进行安装。
文章图片
文章图片
安装完成后后,需要重启系统。
1.3 安装WSL 2核心
重启系统后,系统提示WSL 2的安装还未完成。于是按照系统提示,点击链接,下载WSL 2内核。
文章图片
文章图片
根据提示安装,然后重启系统。
1.4 安装Docker desktop完成
重启系统后,Docker desktop就自动打开了。
文章图片
现在还没有任何容器和镜像。
文章图片
1.5、配置镜像加速
据说docker镜像在国内下载很慢,所以需要配置一下国内大厂提供的免费docker镜像。
点击docker desktop右上角的小齿轮,进入settings,找到Docker Engine选项,就在这里填写镜像相关的设置:
文章图片
需要按照json规则,把镜像加速相关的地址,填写到设置里面:
"registry-mirrors": [
"https://hub-mirror.c.163.com",
"https://<你的ID>.mirror.aliyuncs.com",
"https://registry.docker-cn.com",
"https://mirror.ccs.tencentyun.com",
"https://mirror.baidubce.com"
],
请注意,阿里云的镜像加速地址,最好到阿里云后台的“容器镜像服务-镜像加速器”里面使用自己的加速器地址。
填写好以后是这样的:
文章图片
点击右下角的“Apply & Restart”,保存并重启docker。
这样,windows下面的docker环境就部署好了。
2、用docker安装StoneDB 下面终于可以在docker环境中安装StoneDB了。
2.1 拉取StoneDB镜像
StoneDB的镜像仓库,就在:https://hub.docker.com/r/stoneatom/stonedb
文章图片
先通过页面提供的官方拉取命令
docker pull stoneatom/stonedb
,在命令行尝试拉取。文章图片
拉取失败,没有最新的标签?于是看了一下官方的部署文档(https://stonedb.io/zh/docs/getting-started/quick-deploy-in-docker),原来需要指定拉取的镜像版本。
于是再次拉取
docker pull stoneatom/stonedb:v0.1
文章图片
这次没问题了。
文章图片
拉取完成后,也可以在docker desktop程序里面看到这个拉下来的镜像:
文章图片
2.2 创建容器
按照官方的部署文档(https://stonedb.io/zh/docs/getting-started/quick-deploy-in-docker),创建容器的参考命令是:
docker run -p 13306:3306 -v $stonedb_volumn_dir/data/:/stonedb56/install/data/ -it -d stoneatom/stonedb:v0.1 /bin/bash
参数说明:
-p:端口映射,把容器端口映射到宿主机端口上,前面是宿主机端口,后面是容器端口
-v:目录挂载,如果没有挂载的话,容器重启会进行初始化,前面是宿主机映射路径,后面是容器映射路径
-i:交互式操作
-t:终端
-d:启动不进入容器,想要进入容器需要使用指令 docker exec
按照说明,端口映射可以不用修改,但是目录挂载的参数,是需要修改的,因为windows的目录与linux的目录肯定是不一样的,这里设置了我本地D盘的目录作为持久化存储(D:\docker\stonedb0.1)。最后改好的运行容器命令行是:
docker run -p 13306:3306 -v D:\docker\stonedb0.1:/stonedb56/install/data/ -it -d stoneatom/stonedb:v0.1 /bin/bash
运行命令行:
文章图片
成功执行后,也可以在docker desktop的容器列表里面,看到新创建的容器:
文章图片
到这一步,StoneDB已经在Windows上面运行起来了。
2.3 连接StoneDB数据库
既然StoneDB数据库已经开始运行,就可以连接数据库进行操作了。连接的方法很多,可以进入容器用命令行进行操作,也可以使用所有MySQL兼容的客户端进行连接。我这里使用Navicat进行连接。
在Navicat添加本地服务器,设置端口号,连接账号与密码。这个镜像的默认登录账号为root,密码stonedb123。
文章图片
点连接测试,连接成功。于是点确定进行连接。
连接成功后,可以看到默认的7个数据表,这时候就可以对数据库进行操作了。
文章图片
在windows上用docker desktop安装StoneDB的流程介绍到此结束,希望每一个对HTAP感兴趣的用户都可以成功装上StoneDB进行测试。我的安装流程还算顺利,按照官方的docker部署文档进行操作,没有遇到太大问题。如果你有关于StoneDB的任何问题,包括安装和部署,都可以加我wx:
yangwilly
,我帮你摇人解决。后续我会继续在不同环境进行部署测试,以及测试StoneDB的具体性能。
推荐阅读
- 【StoneDB Class】入门第三课(StoneDB的编译安装)
- 【StoneDB Class】入门第一课(数据库知识科普)
- 【StoneDB技术解析】验证相关数据包是否需要解压缩
- 【StoneDB模块介绍】服务器模块
- 【StoneDB join 算法分析】查询模块
- 【StoneDB模块介绍】工具类
- 推荐 | 一体化实时 HTAP 数据库 StoneDB,如何替换 MySQL 并实现近百倍性能提升