- 适用范围
- 方案概述
- 实施步骤
- 前置准备
- 前置准备
- 参考文档
适用范围
适用于linux平台下将简易安装配置的mogdb单机数据库扩展为一主一备集群数据库
方案概述
从源库将配置好的mogdb软件目录使用tar复制到备库服务器,直接使用命令行工具创建备库,实现单机扩展为主备集群数据库
实施步骤
前置准备
- 使用简易安装方式配置mogdb单机数据库
- 备库按照主库配置操作系统和创建数据库用户
1.使用tar打包数据库mogdb安装目录
tar cf mogdb.tar /app/mogdb
2.将mogdb.tar文件复制到备库主机
3.使用tar命令将mogdb.tar释放
tar xf mogdb.tar -C /app
4.将主库数据库用户omm配置文件.bashrc复制到备库omm用户下
su - omm
scp .bashrc 10.2.1.12:/home/omm
5.创建备库data目录和log目录
su - omm
mkdir -p /app/mogdata/{data,logs}
mkdir /app/mogdata/data/single_node
6.修改主库初始化参数
echo "listen_addresses = '0.0.0.0'" >> /app/mogdata/data/single_node/postgresql.conf
echo "password_encryption_type = 0" >> /app/mogdata/data/single_node/postgresql.conf
echo "log_directory = 'pg_log'" >> /app/mogdata/data/single_node/postgresql.conf
echo "remote_read_mode=non_authentication" >> /app/mogdata/data/single_node/postgresql.conf
echo "host all all 10.2.1.0/24 md5" >> /app/mogdata/data/single_node/pg_hba.conf
7.主库配置连接通道
echo "replconninfo1='localhost=10.2.1.11 localport=26001 localheartbeatport=26005 localservice=26004 remotehost=10.2.1.12 remoteport=26001 remoteheartbeatport=26005 remoteservice=26004'
" >> /app/mogdata/data/single_node/postgresql.conf
8.将源库以primary方式启动
gs_ctl start -D /app/mogdata/data/single_node -M primary
9.将主库配置文件传到备库
su - omm
cd /app/mogdata/data/single_node
scp pg_hba.conf postgresql.conf 10.2.1.12:/app/mogdata/data/single_node
10.修改备库连接通道
sed -i "/^replconninfo1/creplconninfo1='localhost=10.2.1.12 localport=26001 localheartbeatport=26005 localservice=26004 remotehost=10.2.1.11 remoteport=26001 remoteheartbeatport=26005 remoteservice=26004'" /app/mogdata/data/single_node/postgresql.conf
11.在备库执行如下命令构建主备关系
gs_ctl build -D /app/mogdata/data/single_node -b full -M standby
12.查询主备状态如下
主库
gs_ctl query -D /app/mogdata/data/single_node
gs_ctl query ,datadir is /app/mogdata/data/single_node
HA state:
local_role : Primary
static_connections : 1
db_state : Normal
detail_information : Normal
Senders info:
sender_pid : 1052
local_role : Primary
peer_role : Standby
peer_state : Normal
state : Streaming
sender_sent_location : 0/4000148
sender_write_location : 0/4000148
sender_flush_location : 0/4000148
sender_replay_location : 0/4000148
receiver_received_location : 0/4000148
receiver_write_location : 0/4000148
receiver_flush_location : 0/4000148
receiver_replay_location : 0/4000148
sync_percent : 100%
sync_state : Sync
sync_priority : 1
sync_most_available : Off
channel : 10.2.1.11:26001-->10.2.1.12:42750
Receiver info:
No information
备库
gs_ctl query -D /app/mogdata/data/single_node
gs_ctl query ,datadir is /app/mogdata/data/single_node
HA state:
local_role : Standby
static_connections : 1
db_state : Normal
detail_information : Normal
Senders info:
No information
Receiver info:
receiver_pid : 802
local_role : Standby
peer_role : Primary
peer_state : Normal
state : Normal
sender_sent_location : 0/4000268
sender_write_location : 0/4000268
sender_flush_location : 0/4000268
sender_replay_location : 0/4000268
receiver_received_location : 0/4000268
receiver_write_location : 0/4000268
receiver_flush_location : 0/4000268
receiver_replay_location : 0/4000268
sync_percent : 100%
channel : 10.2.1.12:42750<--10.2.1.11:26001
至此单机库扩展为主备库已配置完成
参考文档
https://docs.mogdb.io/zh/mogdb/v3.0/manual-installation
最后修改时间:2023-09-28 09:58:47
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。




