手工安装部署openGauss3.0一主一备(非om工具安装)
手工安装部署 openGauss3.0 一主一备(非 om 工具安装)
本文出处:https://www.modb.pro/db/425385
一、操作系统配置(centos7.6)
1.关闭防火墙
systemctl stop firewalld systemctl disable firewalld
2.关闭 selinux 服务
setenforce 0 vim /etc/selinux/config SELINUX=disabled
3.关闭透明大页
echo never > /sys/kernel/mm/transparent_hugepage/enabled cat /sys/kernel/mm/transparent_hugepage/enabled
4.安装依赖包
yum install libaio-devel -y
二、安装环境准备
1.创建相关目录、用户和组
创建数据库初始化用户组和用户
groupadd dbgrp -g 1000
useradd omm -u 1000 -g 1000
echo "*@" | passwd --stdin omm
创建安装包存放目录
mkdir -p /opt/software/openGauss3.0
创建数据库初始化数据目录
mkdir -p /data/openGauss3.0
chown omm.dbgrp /data/openGauss3.0
2.下载安装包
cd /opt/software/openGauss3.0
wget https://opengauss.obs.cn-south-1.myhuaweicloud.com/3.0.0/x86/openGauss-3.0.0-CentOS-64bit-all.tar.gz
依次解压
tar -zxvf openGauss-3.0.0-CentOS-64bit-all.tar.gz
tar -jxvf openGauss-3.0.0-CentOS-64bit.tar.bz2
3.配置 omm 用户环境变量
su - omm
vim .bashrc
export GAUSSHOME=/opt/software/openGauss3.0
export LD_LIBRARY_PATH=$GAUSSHOME/lib:$LD_LIBRARY_PATH
export PATH=$GAUSSHOME/bin:$PATH
加载使配置生效
source .bashrc
以上所有操作在两台主机上均要操作。
三、开始搭建主库(在 OG1 上操作)
1.初始化数据库
su - omm
gs_initdb -D /data/openGauss3.0 --nodename=primary -E UTF-8 -w *@
cd /data/openGauss3.0
编辑postgresql.conf配置文件,将相关信息添加到最后一行
vim postgresql.conf
port=26000
listen_addresses = '...'
log_directory = 'pg_log'
remote_read_mode=non_authentication
replconninfo1='localhost=10.0.0.100 localport=26001 localheartbeatport=26005 localservice=26004 remotehost=10.0.0.101 remoteport=26001 remoteheartbeatport=26005 remoteservice=26004'
localhost为主库IP,remotehost为备库IP
编辑pg_hba.conf配置文件,将相关信息添加到最后一行
vim pg_hba.conf
host all all .../0 sha256
2.以 primary 方式启动数据库
gs_ctl start -D /data/openGauss3.0/ -M primary
四、操作备库
1.将主库的 postgresql.conf 文件传到备库,编辑连接通道信息
[omm@OG1 /data/openGauss3.0]$ scp postgresql.conf 10.0.0.101:/data/openGauss3.0
然后在备库上操作
cd /data/openGauss3.0
vim postgresql.conf
replconninfo1='localhost=10.0.0.101 localport=26001 localheartbeatport=26005 localservice=26004 remotehost=10.0.0.100 remotepo
rt=26001 remoteheartbeatport=26005 remoteservice=26004'
localhost为备库IP,remotehost为主库IP
2.构建主备关系
gs_ctl build -D /data/openGauss3.0/ -b full -M standby
3.查看主库信息
[omm@OG1 /data/openGauss3.0]$ gs_ctl query -D /data/openGauss3.0/
[2022-06-28 12:42:24.316][8790][][gs_ctl]: gs_ctl query ,datadir is /data/openGauss3.0
HA state:
local_role : Primary
static_connections : 1
db_state : Normal
detail_information : Normal
Senders info:
sender_pid : 8784
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.0.0.100:26001-->10.0.0.101:51926
Receiver info:
No information
查看备库状态信息:
[omm@OG2 /data/openGauss3.0]$ gs_ctl query -D /data/openGauss3.0/
[2022-06-28 12:43:10.070][8469][][gs_ctl]: gs_ctl query ,datadir is /data/openGauss3.0
HA state:
local_role : Standby
static_connections : 1
db_state : Normal
detail_information : Normal
Senders info:
No information
Receiver info:
receiver_pid : 8465
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.0.0.101:51926<--10.0.0.100:26001
五、验证主备关系
1.主库中创建表
gsql -d postgres-p 26000 create table test(id int);
2.备库中查看
gsql -d postgres -p 26000
openGauss=# \dt
List of relations
Schema | Name | Type | Owner | Storage
--------+------+-------+-------+----------------------------------
public | test | table | omm | {orientation=row,compression=no}
(1 row)
说明主备状态正常,操作到此结束。
手工安装部署openGauss3.0一主一备(非om工具安装)的更多相关文章
- (七) Docker 部署 MySql8.0 一主一从 高可用集群
参考并感谢 官方文档 https://hub.docker.com/_/mysql y0ngb1n https://www.jianshu.com/p/0439206e1f28 vito0319 ht ...
- MongoDB副本集(一主一备+仲裁)环境部署-运维操作记录
MongoDB复制集是一个带有故障转移的主从集群.是从现有的主从模式演变而来,增加了自动故障转移和节点成员自动恢复.MongoDB复制集模式中没有固定的主结点,在启动后,多个服务节点间将自动选举产生一 ...
- 转 DataGuard环境搭建 (一主一备一级联)
DataGuard环境搭建 (一主一备一级联) http://blog.itpub.net/30130773/viewspace-2116985/ 1.--------- primary_role / ...
- Docker部署Mysql8.0.20并配置主从复制
1. Linux安装Mysql8.0.20并配置主从复制(一主一从,双主双从) Linux安装Mysql8.0.20并配置主从复制(一主一从,双主双从) 2. 前提准备 # 创建主从数据库文件夹 ...
- iis 部署 webapi2.0 访问报错解决
本机安装的VS2013 开发环境,在IIS部署WebApi2.0时,应用程序池并没有.NET4.5的选项. 网上搜索一番得知: 1..NET 4.5本质上还是4.0,属于递增式的更新,所以对IIS 来 ...
- iis7 部署mvc4.0
虽然用多了iis 但是很少重新去部署iis支持mvc4的环境,搞得每次需要的时候都要去百度, 所以现在自己写篇随笔来记录一下方便下次使用 建议先安装iis,再安装.net framework4.0, ...
- centos 7 部署 open-falcon 0.2.0
=============================================== 2017/12/06_第2次修改 ccb_warlock 更 ...
- js中的0就是false,非0就是true及案例
在处理js代码判断真假时经常会这么写. 但fun()可能得到的是数字0,这可不是表示的没有值,但是!js中的数字0就是false,非0就是true. 于是0就被无情的当做false了. 已经被这个坑过 ...
- 使用yum源的方式单机部署MySQL8.0.13
使用yum源的方式单机部署MySQL8.0.13 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 基本上开源的软件都支持三种安装方式,即rmp方式安装,源码安装和二进制方式安装.在 ...
- 使用二进制安装包的方式单机部署MySQL8.0.13
使用二进制安装包的方式单机部署MySQL8.0.13 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 关于MySQL的介绍我这里就不多做赘述了,如何下载MySQL详情请参考:MySQ ...
随机推荐
- 【Azure Service Bus】使用Spring Cloud integration示例代码,为多个 Service Bus的连接使用 ConnectionString 方式
问题描述 查看Service Bus的Java示例代码,发现使用Spring Cloud Integration,配置 Application.yaml 可以连接到两个Service Bus. 但代码 ...
- 【Azure 应用服务】Azure Function 部署槽交换时,一不小心把预生产槽上的配置参数交换到生产槽上,引发生产错误
问题描述 部署Function代码先到预生产槽中,进行测试后通过交换方式,把预生产槽中的代码交换到生产槽上,因为在预生产槽中的设置参数值与生产槽有不同,但是在交换的时候,没有仔细检查.导致在交换的时候 ...
- 7、mysql的缓存优化
概述 开启Mysql的查询缓存,当执行完全相同的SQL语句的时候,服务器就会直接从缓存中读取结果,当数据被修改,之前的缓存会失效,修改比较频繁的表不适合做查询缓存. 操作流程 客户端发送一条查询给服务 ...
- XWAF安装遇到的坑
存在的问题:需要的编译环境没有安装配置好的话出现下面的问题: 1.error: Microsoft Visual C++ 14.0 or greater is required. Get it wit ...
- React函数式组件使用@emotion时一定要注意的问题!
怎么说呢,一个坑,踩了两天,总觉得是useSate和input的传值方法问题 在useMemo和useCallback反复测试问题 最后没办法,通过最傻方式,一点点注释代码,发现了问题 const C ...
- 使用svgo-loader只对部分文件生效
svgo-loader配合svg-sprite-loader使用,网上教程很多,不赘述 const svgRule = config.module.rule("svg-sprite" ...
- WPF开源的一款免费、开箱即用的翻译、OCR工具
前言 今天大姚给大家分享一款由WPF开源的.免费的(MIT License).即开即用.即用即走的翻译.OCR工具:STranslate. WPF介绍 WPF 是一个强大的桌面应用程序框架,用于构建具 ...
- CYQ.Data 操作 Redis 性能测试:对比 StackExchange.Redis
前言: 前几天,点开自己的博客,看了一下 CYQ.Data V5系列 都有哪些文章, 发现了一篇2019年写的:CYQ.Data 对于分布式缓存Redis.MemCache高可用的改进及性能测试,于是 ...
- 在运行程序是出现sh: 行 1: cls: 未找到命令
在运行程序是出现sh: 行 1: cls: 未找到命令 原因是system("cls");--这是在程序中调用系统命令,但是linux识别不了.功能是清除当前的终端显示数据.找到l ...
- c语言中int和char之间的转换实例解析
壹: 经常用到c,积累一些小函数,免得下次还要重新写,极大的提升工作效率啊. 贰: 代码很简单,直接上源码: #include <stdio.h> typedef unsig ...