CockroachLabs公司的CockroachDB(简称CRDB)是一款适合于海量数据环境下高并发OLTP和OLAP场景的开源分布式NewSQL/HTAP数据库。它采用了新的架构和设计、新的分布式理论和算法,吸收了关系型数据库和NoSQL数据库各自的优点,无需应用级的分库分表,具有SQL模型的简单易用、水平弹性扩展、支持强一致性分布事务、异地多活的高可用、云原生等一系列特点。
“外部易用性”是CRDB的核心设计理念之一,它的所有功能都封装在一个二进制可执行程序文件中,可以做到最小化设置和没有外部依赖的简单、直接部署。我们可以非常简单地在Linux、Mac OS、Windows等多种操作系统环境下运行它;此外,CRDB还能够非常方便的在Docker和Kubernetes下运行。
典型地,CRDB支持标准X86/X86-64架构,也能支持ARM-64架构(例如:国产飞腾 + 银河麒麟Linux操作系统)。
本文将向大家分享如何基于开源CockroachDB编译在X86/X86-64架构下运行的版本。
- 编译环境说明
在这里,我们以CockroachDB 2.1.3版本的源码为例说明一般的编译方法。我们需要如下环境:
(1) 一个虚拟机(X86_64,4vCores/8G mem,20G本地存储)
(2) 操作系统:Ubuntu 16.04 LTS
(3) 需要的软件组件:
- git
- ncurses
- gcc-6.x 、gcc++-6.x
- make、cmake 3.8.1、autoconf
- go 1.10.7
- nodeJS、yarn
2. 编译环境安装和配置
(1) 安装操作系统(只需要安装基本的Ubuntu16.04 LTS即可,需要的包可以根据需要在随