docker-compose 一键生成 openGauss 极简版 master slave 主从测试环境

目录

说明

1、源码获取

2、运行

A.快速运行

B.编译运行

3、使用方式

系统基本信息

1.登录pgAdmin4

2.创建服务器链接

4、同步测试

1.进入容器系统

2.进入数据库

3.创建数据库和测试表

4.生成测试数据

5.查看同步情况 

5、常用命令

主机模式启动:

从机模式启动:

停止主机:

停止从机: 

主从切换:

状态查看:

下一版本添加 haproxy 读写负载均衡: 


说明

容器基于  openeuler/openeuler:20.03 系统,由于官方的Data Studio无法链接容器中的数据库,为方便管理集成了 pgadmin4 6.0。

1、源码获取

获取源码并进入源码目录

github

git clone --branch 主备版本 https://github.com/CyrusZhou-CN/openGauss_master_slave.git
cd openGauss_master_slave

或 gitee

git clone --branch 主备版本 https://gitee.com/CyrusZHou/openGauss_master_slave.git
cd openGauss_master_slave

2、运行

步骤 A B 选一个就行 

A.快速运行

直接使用hub.docker.com容器运行

docker-compose up -d

 

B.编译运行

docker-compose -f "docker-compose-build.yml" up -d --build

3、使用方式

系统基本信息

浏览器打开 http://localhost:9980/

可以看到系统基本信息

1.登录pgAdmin4

pgAdmin4 6.0http://localhost:9980/pgadmin4

默认管理员 / 密码:admin@domain.com / admin

2.创建服务器链接

General->名称:master 【可随便填写】

链接->主机名称/地址: master

链接->用户名:gauss

链接->用户名:Gauss666

点保存完成主库链接,从库链接配置雷同,修改主机名称为 slave01 、slave02

 

 

4、同步测试

1.进入容器系统

docker exec -it master bash

2.进入数据库

gsql -d postgres

或者使用指定用户登录

gsql -d postgres -Ugauss -WGauss666

3.创建数据库和测试表

CREATE DATABASE test1 WITH ENCODING = 'UTF8' CONNECTION LIMIT = -1;

  

切换数据库

\c test1

  

创建测试表

CREATE TABLE public.table1(id integer NOT NULL,name nvarchar2,PRIMARY KEY (id));

4.生成测试数据

开启执行sql的时间

\timing on

生成100万条数据 

insert into table1(id,name) select i, 'name:' || i from generate_series(1,1000000) i;

5.查看同步情况 

 先用 \q 退出数据库

用命令行查询slave01同步情况

gsql -dtest1 -hslave01 -Ugauss -WGauss666 -c"SELECT ID,NAME FROM table1 ORDER BY id DESC;"

 参数说明:

-d 指定数据库

-h 指定主机

-U 指定用户

-W 用户密码

-c SQL语句

 也可到pgadmin4环境查看同步情况  

注:pgadmin4 使用中程停止slave容器有可能会导致界面卡死情况,退出重新登录,或者重新启动slave容器就可解决。

5、常用命令

主机模式启动:

gs_ctl start -D $GAUSSHOME/data -M primary

从机模式启动:

gs_ctl build -D $GAUSSHOME/data -b full

停止主机:

gs_ctl stop -D $GAUSSHOME/data -M primary

停止从机: 

gs_ctl stop -D $GAUSSHOME/data -M standby

主从切换:

在需要切换为主机的容器中执行

gs_ctl switchover -D $GAUSSHOME/data

如:设置slave01为主机 

docker exec -it slave01 bash

状态查看:

gs_ctl query -D $GAUSSHOME/data

下一版本添加 haproxy 读写负载均衡: 

docker-compose 一键生成 openGauss 极简版 数据库haproxy 读写负载均衡 测试环境_CyrusZhou的专栏-CSDN博客https://blog.csdn.net/lsqtzj/article/details/121154944

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值