<article class=“article fmt article-content”><p><strong>MatrixOne是一款高度兼容MySQL语法的HTAP数据库,在大部分场景下能够间接实现对MySQL的替换。</strong></p><p>作为一款开源数据库,MatrixOne 选用对开发者敌对的<strong>Apache-2.0 License</strong>,反对在支流的 Linux 和 MacOS 零碎中间接进行物理部署。在部署形式上,<strong>MatrixOne反对源码编译部署、二进制包部署和Docker容器部署</strong>。各种部署形式均操作简略,疾速部署后即可领有单机不输MySQL的数据分析和事务处理能力。</p><p>以MatrixOne最新的Release版本1.0.1为例,MatrixOne提供了4类二进制包,别离用于在x86架构和arm架构的MacOS零碎与Linux零碎部署。</p><ul><li>mo-v1.0.1-darwin-arm64.zip</li><li>mo-v1.0.1-darwin-x86_64.zip</li><li>mo-v1.0.1-linux-arm64.zip</li><li>mo-v1.0.1-linux-x86_64.zip</li></ul><p>区别于MySQL在不同操作系统下部署时的繁琐和不对立,MatrixOne的二进制包单机部署开箱即用。</p><p>例如在任意x86架构的Linux零碎中,咱们能够通过wget命令获取MatrixOne的二进制包:</p><pre><code class=“text”>wget https://github.com/matrixorigin/matrixone/releases/download/v1.0.1/mo-v1.0.1-linux-x86_64.zip</code></pre><p>而后创立指标的部署目录:</p><pre><code class=“text”>mkdir /opt/matrixone</code></pre><p>解压安装包至目标目录:</p><pre><code class=“text”>unzip mo-v1.0.1-linux-x86_64.zip -d /opt/matrixone</code></pre><p>解压实现后切换目录,启动MatrixOne服务:</p><pre><code class=“text”>cd /opt/matrixone./mo-service –daemon –launch ./etc/launch/launch.toml &> test.log &</code></pre><p>MatrixOne将所有的服务都打包在了mo-service包中,启动命令执行后,可通过查看服务或查看6001端口监听状况来确认服务启动状况:</p><pre><code class=“text”>ps -ef | grep mo-servicenetstat -nlap | grep 6001</code></pre><p><strong>须要留神的是,MatrixOne没有自带客户端工具,咱们能够应用mysql client或DBeaver、Navicat、SQLYog等可视化工具将MatrixOne视为MySQL来进行拜访。</strong></p><p>MatrixOne启动后提供查问服务的端口为6001,默认启用的用户为root,初始密码为111,例如咱们应用mysql client拜访时的命令可写为:</p><pre><code class=“mysql”>mysql -h127.0.0.1 -P6001 -uroot -p111</code></pre><p>当看到如下信息即示意拜访胜利,咱们就能够像应用MySQL个别进行库表创立或数据查问/写入:</p><pre><code class=“text”>Server version: 8.0.30-MatrixOne-v1.0.1 MatrixOne</code></pre><p>除手动部署外,MatrixOne还提供了晋升易用性的mo_ctl工具,mo_ctl不单能疾速部署,还可一键式的进行MatrixOne服务的启动进行或github commitid级的版本升降级,残缺的介绍可参考官网文档:</p><ul><li>https://docs.matrixorigin.cn/1.0.1/MatrixOne/Get-Started/install-on-linux/install-on-linux-method2/</li><li>https://docs.matrixorigin.cn/1.0.1/MatrixOne/Maintain/mo_ctl/</li></ul><p><strong>MatrixOne目前没有binlog性能,以后也未反对“主从架构”的部署,这个能力会在后续版本和大家见面,补齐本地模式下的高可用能力。</strong></p><p>对于习惯应用Docker进行容器部署的同学,MatrixOne已将各版本的镜像上传至Docker Hub,咱们同样能够通过两行命令疾速实现MatrixOne的镜像获取和服务启动:</p><pre><code class=“docker”>docker pull matrixorigin/matrixone:1.0.1docker run -d -p 6001:6001 –name matrixone matrixorigin/matrixone:1.0.1</code></pre><ul><li>与MySQL的TP定位不同,MatrixOne是一款汇合TP和AP能力的“超交融云原生分布式数据库”,这也示意基于K8s的集群部署能力充分发挥MatrixOne极致的剖析性能。</li></ul><p>MatrixOne在架构上实现了三个独立的层级,每个层级都有本人的对象单元和分工。不同类型的节点能够自在伸缩,不受到其余层的制约。</p><p>这三个层级是:</p><ul><li><strong>计算层</strong>:以计算节点 Compute Node(简称 CN)为单位,实现了计算和事务处理的 Serverless 化,具备本人的缓存,能够任意重启和扩缩容。</li><li><strong>事务层</strong>:以数据库节点 Transaction Node(简称 TN )和日志节点 Log Service 为单位,提供残缺的日志服务和元数据信息,内置 Logtail 用于保留最近的数据。</li><li><strong>存储层</strong>:全量数据保留在对象存储中,以 S3 为代表,实现了低成本的有限伸缩存储形式。对立的文件操作服务 File Service 实现了不同节点对底层存储的无感知操作。</li></ul><p></p><p>MatrixOne基于K8s的集群部署操作能够参考官网文档集群部署指南章节,MatrixOne中的CN节点是无状态的,在K8s中能够依据负载进行任意的弹性扩缩,保障集群持续保持较低的SQL执行耗时。</p><p>MatrixOne在K8s中的部署是绝对繁琐的,若您想体验MatrixOne集群的卓越性能,欢送试用MatrixOne Cloud。MatrixOne Cloud 是一个全托管云原生数据平台,它提供了 HSTAP 数据库 MatrixOne 的云上服务,极大简化了 MatrixOne 的部署和运维老本。并且,MatrixOne Cloud 所提供的 Serverless 实例反对计算资源的主动弹性伸缩以及按 SQL 用量计费,让咱们不需再关注数据库部署运维的复杂性,而能够仅关注业务利用或SQL自身。</p><p>以后MatrixOne Cloud正在全面公测,新用户注册每月赠送500元的收费额度,欢送大家前来试用和反馈。</p></article>