docker 集群搭建SequoiaDB 巨杉数据库
2022/9/16 2:19:48
本文主要是介绍docker 集群搭建SequoiaDB 巨杉数据库,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
SequoiaDB的更多信息和软件下载,请访问 http://www.sequoiadb.com
第一步:下载 SequoiaDB Docker 镜像
docker pull sequoiadb/sequoiadb:v5.0.1
docker pull sequoiadb/sequoiasql-mysql:v5.0.1
第二步:查看一镜像:docker images
搭建单副本单机集群
我们首先在容器中创建单副本 SequoiaDB 集群(该集群部署在单一容器中,且不提供数据冗余功能)。高可用集群的搭建方案,将在后面章节进行描述。
- 集群配置
本Docker 镜像示范中,将采用单台服务器搭建一个SequoiaDB 数据库集群,其中包括:MySQL 实例和SequoiaDB 存储引擎。配置如下:
主机名 | IP | 部署软件 | 服务 |
---|---|---|---|
sdbmysql | 192.168.1.10 | SequoiaSQL-MySQL | MySQL实例 |
sdbserver | 192.168.1.11 | SequoiaDB | SequoiaDB存储引擎 |
- 环境变量
变量名 | 样例 | 说明 |
---|---|---|
SDB_DEPLOY | true | 是否进行集群部署 |
SDB_CATALOG | sdbserver1:11800,... | 集群编目节点列表(以逗号分隔) |
SDB_COORD | sdbserver1:11810,... | 集群协调节点列表(以逗号分隔) |
SDB_DATA | group1=sdbserver1:11820,sdbserver2:11820;... | 集群数据节点列表(以逗号分隔,不同组用分号分隔) |
SDB_STP_SERVER | sdbserver1:9622,... | 集群时序服务端节点列表(以逗号分隔) |
SDB_STP_CLIENT | sdbserver2:9622,... | 集群时序客户端节点列表(以逗号分隔) |
MYSQL_SDB_COORD | sdbserver1:11810,... | MySQL协调节点列表(以逗号分隔) |
cat > docker-compose.yml <<EOF version: "3" services: sdbserver: image: sequoiadb/sequoiadb:v5.0.1 container_name: sdbserver hostname: "sdbserver" ports: - "11810:11810" - "11814:11814" restart: always environment: SDB_DEPLOY: "true" SDB_CATALOG: "sdbserver:11800" SDB_COORD: "sdbserver:11810" SDB_DATA: "group1=sdbserver:11820;group2=sdbserver:11830" SDB_STP_SERVER: "sdbserver:9622" networks: sdb-net: ipv4_address: "192.168.1.11" extra_hosts: - "sdbmysql:192.168.1.10" - "sdbserver:192.168.1.11" dns: - 223.5.5.5 - 223.6.6.6 sdbmysql: image: sequoiadb/sequoiasql-mysql:v5.0.1 container_name: sdbmysql hostname: "sdbmysql" ports: - "3306:3306" restart: always environment: MYSQL_SDB_COORD: "sdbserver:11810" networks: sdb-net: ipv4_address: "192.168.1.10" extra_hosts: - "sdbmysql:192.168.1.10" - "sdbserver:192.168.1.11" dns: - 223.5.5.5 - 223.6.6.6 depends_on: - sdbserver networks: sdb-net: ipam: config: - subnet: 192.168.1.0/16 EOF
第四步:启动 SequoiaDB 集群
docker-compose -f docker-compose.yml up -d
出现done的字样就是安装好了
注意:如果启动时报以下的错误,请重启docker服务:service docker restart
如果报错 listen tcp 0.0.0.0:3306: bind: address already in use ,说明宿主机的相应端口被占用,需要修改上述 docker-compose.yml 文件中 ports 部分的内容, 将前面的 3306 修改为其他端口,例如改为下面所示 3307
ports: - "3307:3306"
- 查看 MySQL 服务状态,直到输出 " Your sequoiadb-mysql service started successfully ! "
docker logs -f sdbmysql
测试部署的集群
- 连接 SequoiaSQL-MySQL
mysql -h127.0.0.1 -P3306 -uroot -p 默认没有设置密码,输入以上命令后,回车即可进入 MySQL shell
如果没有 mysql 客户端,可以使用 yum 安装
yum -y install mysql
- 创建测试库 test,并切换到 test
CREATE DATABASE test; USE test;
- 在 test数据库中创建测试表 test
CREATE TABLE test ( empno INT AUTO_INCREMENT PRIMARY KEY, ename VARCHAR(128), age INT ); 注意:如果创建不了表报Got error 40179 from storage engine,
创建表的时候请指定相应的引擎:ENGINE=InnoDB DEFAULT CHARSET=utf8
- 在表 test 中插入数据
INSERT INTO test (ename, age) VALUES ("Jacky", 36); INSERT INTO test (ename, age) VALUES ("Alice", 18);
- 查询 test 表中的数据
SELECT * FROM test;
- 退出mysql
quit
这篇关于docker 集群搭建SequoiaDB 巨杉数据库的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-12-20Docker部署资料:新手入门教程
- 2024-12-19Docker部署实战:新手入门教程
- 2024-12-19Docker部署教程:新手入门详解
- 2024-12-09云原生周刊:在Docker上部署大语言模型
- 2024-12-05Docker教程:新手快速入门指南
- 2024-12-05Docker项目实战:新手教程与案例解析
- 2024-12-04Docker入门教程:快速掌握基础操作
- 2024-12-04Docker入门教程:轻松搭建你的第一个容器化应用
- 2024-12-04Docker-Compose 入门教程:全面解析基础命令与应用场景
- 2024-12-04Docker入门:新手必读的简单教程