From a1637c8675c19814d31b0b71cbad8e681bb84534 Mon Sep 17 00:00:00 2001
From: zhang_xubo <2578876417@qq.com>
Date: Thu, 18 Feb 2021 14:43:44 +0800
Subject: [PATCH 001/105] start cluster on one node
---
.../zh/post/xingchen/cluster_on_one_node.md | 220 ++++++++++++++++++
1 file changed, 220 insertions(+)
create mode 100644 content/zh/post/xingchen/cluster_on_one_node.md
diff --git a/content/zh/post/xingchen/cluster_on_one_node.md b/content/zh/post/xingchen/cluster_on_one_node.md
new file mode 100644
index 00000000..7b796c7c
--- /dev/null
+++ b/content/zh/post/xingchen/cluster_on_one_node.md
@@ -0,0 +1,220 @@
++++
+title = "在一台服务器上安装主备集群"
+date = "2021-02-18"
+tags = ["在一台服务器上安装主备集群"]
+archives = "2021-02-18"
+author = "xingchen"
+summary = "在一台服务器上安装主备集群"
+img = "/zh/post/xingchen/title/img1.png"
+times = "14:30"
++++
+
+
+默认使用openGauss的OM工具去安装主备集群,是要求主备分别在不同的服务器上的,即一台服务器只能安装一个数据库实例。
+可以在一台服务器上安装多个单机数据库,通过修改配置建立主备关系,以达到一个服务器上安装数据库集群的效果。
+
+***这种方式下,是不能通过OM工具来管理集群的。只能使用数据库内部工具操作。***
+
+以下步骤以一主一备为例,一主多备类似。
+
+### 安装两个单机数据库
+
+可以通过使用OM工具安装两个单机数据库,保证两个数据库端口不同,数据目录不同。
+
+或者直接使用编译安装的方式,启动两个不同端口和数据目录的数据库。
+
+***注意: 两个数据库的端口不要挨得太近。***
+
+如下面,启动两个数据库,端口分别是12000和22000
+
+```
+[opengauss@ecs-761c dn_22000]$ ps -ef | grep gauss | grep -v grep
+root 9789 9532 0 10:49 pts/1 00:00:00 su - opengauss
+opengau+ 17649 1 2 11:06 pts/1 00:00:02 /usr/local/opengauss/1.1.0/bin/gaussdb -D /home/opengauss/datanode/dn_12000
+opengau+ 18357 1 2 11:08 pts/1 00:00:01 /usr/local/opengauss/1.1.0/bin/gaussdb -D /home/opengauss/datanode/dn_22000
+```
+
+```
+[opengauss@ecs-761c dn_22000]$ netstat -nap | grep gauss
+(Not all processes could be identified, non-owned process info
+ will not be shown, you would have to be root to see it all.)
+tcp 0 0 127.0.0.1:12000 0.0.0.0:* LISTEN 17649/gaussdb
+tcp 0 0 127.0.0.1:12001 0.0.0.0:* LISTEN 17649/gaussdb
+tcp 0 0 127.0.0.1:22000 0.0.0.0:* LISTEN 18357/gaussdb
+tcp 0 0 127.0.0.1:22001 0.0.0.0:* LISTEN 18357/gaussdb
+tcp6 0 0 ::1:12000 :::* LISTEN 17649/gaussdb
+tcp6 0 0 ::1:12001 :::* LISTEN 17649/gaussdb
+tcp6 0 0 ::1:22000 :::* LISTEN 18357/gaussdb
+tcp6 0 0 ::1:22001 :::* LISTEN 18357/gaussdb
+udp6 0 0 ::1:49528 ::1:49528 ESTABLISHED 17649/gaussdb
+udp6 0 0 ::1:45521 ::1:45521 ESTABLISHED 18357/gaussdb
+unix 2 [ ACC ] STREAM LISTENING 56069 18357/gaussdb /tmp/.s.PGSQL.22000
+unix 2 [ ACC ] STREAM LISTENING 56072 18357/gaussdb /tmp/.s.PGSQL.22001
+unix 2 [ ACC ] STREAM LISTENING 54146 17649/gaussdb /tmp/.s.PGSQL.12000
+unix 2 [ ACC ] STREAM LISTENING 54149 17649/gaussdb /tmp/.s.PGSQL.12001
+
+```
+
+### 以主机或备机模式分别启动数据库
+
+选择一个实例作为主机,以primary方式重启数据库。
+
+以dn_12000为例,作为主机,重启:
+
+```
+gs_ctl restart -D /home/opengauss/datanode/dn_12000 -M primary
+```
+启动完成后查询:
+```
+gs_ctl query -D /home/opengauss/datanode/dn_12000
+```
+```
+[2021-02-18 11:11:14.687][19947][][gs_ctl]: gs_ctl query ,datadir is /home/opengauss/datanode/dn_12000
+ HA state:
+ local_role : Primary
+ static_connections : 0
+ db_state : Normal
+ detail_information : Normal
+
+ Senders info:
+No information
+ Receiver info:
+No information
+```
+local_role为Primary,即以primary方式启动成功。该机器作为主机。
+
+同理,将另外一个实例dn_22000作为备机启动:
+```
+gs_ctl restart -D /home/opengauss/datanode/dn_22000 -M standby
+```
+查询状态:
+```
+gs_ctl query -D /home/opengauss/datanode/dn_22000
+
+[2021-02-18 11:15:57.003][21884][][gs_ctl]: gs_ctl query ,datadir is /home/opengauss/datanode/dn_22000
+ HA state:
+ local_role : Standby
+ static_connections : 0
+ db_state : Need repair
+ detail_information : Disconnected
+
+ Senders info:
+No information
+ Receiver info:
+No information
+```
+
+### 修改主备实例的配置
+
+使用如下命令,分别修改主备实例的配置:
+```
+gs_guc set -D {dn} -c "replconninfo1='localhost={localhost} localport={localport} localheartbeatport={localeHeartPort} localservice={localservice} remotehost={remoteNode} remoteport={remotePort} remoteheartbeatport={remoteHeartPort} remoteservice={remoteservice}'"
+gs_guc set -D {dn} -c 'remote_read_mode=off';
+gs_guc set -D {dn} -c 'replication_type=1';
+```
+{dn} 数据目录
+{localhost} 本地数据库绑定的ip地址
+{localport} 一般为port地址+1
+{localeHeartPort} 设置为port+4,不冲突即可
+{localservice} 设置为port+5,不冲突即可
+{remoteNode} 远端数据库绑定的ip地址。因为同一台机器,地址与localhost相同
+{remotePort} 远端port地址+1
+
+示例:
+主机实例dn_12000设置:
+```
+gs_guc set -D /home/opengauss/datanode/dn_12000 -c "replconninfo1='localhost=127.0.0.1 localport=12001 localheartbeatport=12004 localservice=12005 remotehost=127.0.0.1 remoteport=22001 remoteheartbeatport=22004 remoteservice=22005'"
+gs_guc set -D /home/opengauss/datanode/dn_12000 -c 'remote_read_mode=off';
+gs_guc set -D /home/opengauss/datanode/dn_12000 -c 'replication_type=1';
+```
+备机实例dn_22000设置:
+```
+gs_guc set -D /home/opengauss/datanode/dn_22000 -c "replconninfo1='localhost=127.0.0.1 localport=22001 localheartbeatport=22004 localservice=22005 remotehost=127.0.0.1 remoteport=12001 remoteheartbeatport=12004 remoteservice=12005'"
+gs_guc set -D /home/opengauss/datanode/dn_22000 -c 'remote_read_mode=off';
+gs_guc set -D /home/opengauss/datanode/dn_22000 -c 'replication_type=1';
+```
+
+### 重建备机
+
+重启备机:
+```
+gs_ctl restart -D /home/opengauss/datanode/dn_22000 -M standby
+```
+
+重建备机:
+```
+gs_ctl build -D /home/opengauss/datanode/dn_22000 -M standby
+```
+重建成功后,主备安装成功。
+
+### 查询主备状态
+
+使用gs_ctl指定主机的数据库目录查询状态:
+```
+gs_ctl query -D /home/opengauss/datanode/dn_12000
+```
+如下,表示主备建立成功:
+```
+[2021-02-18 11:58:29.295][54782][][gs_ctl]: gs_ctl query ,datadir is /home/opengauss/datanode/dn_12000
+ HA state:
+ local_role : Primary
+ static_connections : 0
+ db_state : Normal
+ detail_information : Normal
+
+ Senders info:
+ sender_pid : 44560
+ local_role : Primary
+ peer_role : Standby
+ peer_state : Normal
+ state : Streaming
+ sender_sent_location : 0/4001720
+ sender_write_location : 0/4001720
+ sender_flush_location : 0/4001720
+ sender_replay_location : 0/4001720
+ receiver_received_location : 0/4001720
+ receiver_write_location : 0/4001720
+ receiver_flush_location : 0/4001720
+ receiver_replay_location : 0/4001720
+ sync_percent : 100%
+ sync_state : Sync
+ sync_priority : 1
+ sync_most_available : Off
+ channel : 127.0.0.1:12001-->127.0.0.1:51698
+
+ Receiver info:
+No information
+```
+
+### 验证
+
+登录主机并建立表:
+```
+[opengauss@ecs-761c dn_12000]$ gsql -d postgres -p 12000 -r
+gsql ((openGauss 1.1.0 build 392c0438) compiled at 2020-12-31 20:08:06 commit 0 last mr )
+Non-SSL connection (SSL connection is recommended when requiring high-security)
+Type "help" for help.
+
+postgres=# create table t1(id int);
+CREATE TABLE
+postgres=# \q
+
+```
+
+登录备机查询表是否存在:
+```
+[opengauss@ecs-761c dn_12000]$ gsql -d postgres -p 22000 -r
+gsql ((openGauss 1.1.0 build 392c0438) compiled at 2020-12-31 20:08:06 commit 0 last mr )
+Non-SSL connection (SSL connection is recommended when requiring high-security)
+Type "help" for help.
+
+postgres=# \d
+ List of relations
+ Schema | Name | Type | Owner | Storage
+--------+------+-------+-----------+----------------------------------
+ public | t1 | table | opengauss | {orientation=row,compression=no}
+(1 row)
+
+postgres=#
+
+```
\ No newline at end of file
--
Gitee
From 00c0bd6f3baa1e7bfa8697ab916e141cad9907d9 Mon Sep 17 00:00:00 2001
From: zhang_xubo <2578876417@qq.com>
Date: Tue, 23 Feb 2021 19:56:38 +0800
Subject: [PATCH 002/105] add gcc compile note
---
content/zh/post/xingchen/gcc_compile.md | 164 +++++++++++
.../zh/post/xingchen/images/compile/1.3.1.png | Bin 0 -> 9884 bytes
.../zh/post/xingchen/images/compile/1.3.2.png | Bin 0 -> 44697 bytes
.../zh/post/xingchen/images/compile/2.1.1.png | Bin 0 -> 5398 bytes
.../zh/post/xingchen/images/compile/2.2.1.png | Bin 0 -> 5118 bytes
.../zh/post/xingchen/images/compile/2.2.2.png | Bin 0 -> 14012 bytes
.../zh/post/xingchen/images/compile/2.2.3.png | Bin 0 -> 21691 bytes
.../zh/post/xingchen/images/compile/2.3.1.png | Bin 0 -> 10750 bytes
.../zh/post/xingchen/images/compile/2.3.2.png | Bin 0 -> 2415 bytes
.../post/xingchen/images/compile/gcc_conf.png | Bin 0 -> 6312 bytes
.../post/xingchen/images/compile/gcc_mpp1.png | Bin 0 -> 8049 bytes
.../post/xingchen/images/compile/gcc_mpp2.png | Bin 0 -> 9027 bytes
content/zh/post/xingchen/opengauss_compile.md | 265 ++++++++++++++++++
13 files changed, 429 insertions(+)
create mode 100644 content/zh/post/xingchen/gcc_compile.md
create mode 100644 content/zh/post/xingchen/images/compile/1.3.1.png
create mode 100644 content/zh/post/xingchen/images/compile/1.3.2.png
create mode 100644 content/zh/post/xingchen/images/compile/2.1.1.png
create mode 100644 content/zh/post/xingchen/images/compile/2.2.1.png
create mode 100644 content/zh/post/xingchen/images/compile/2.2.2.png
create mode 100644 content/zh/post/xingchen/images/compile/2.2.3.png
create mode 100644 content/zh/post/xingchen/images/compile/2.3.1.png
create mode 100644 content/zh/post/xingchen/images/compile/2.3.2.png
create mode 100644 content/zh/post/xingchen/images/compile/gcc_conf.png
create mode 100644 content/zh/post/xingchen/images/compile/gcc_mpp1.png
create mode 100644 content/zh/post/xingchen/images/compile/gcc_mpp2.png
create mode 100644 content/zh/post/xingchen/opengauss_compile.md
diff --git a/content/zh/post/xingchen/gcc_compile.md b/content/zh/post/xingchen/gcc_compile.md
new file mode 100644
index 00000000..85994adb
--- /dev/null
+++ b/content/zh/post/xingchen/gcc_compile.md
@@ -0,0 +1,164 @@
++++
+title = "gcc编译指导"
+date = "2021-02-23"
+tags = ["gcc编译指导"]
+archives = "2021-02-23"
+author = "xingchen"
+summary = "gcc编译指导"
+img = "/zh/post/xingchen/title/img1.png"
+times = "19:30"
++++
+
+## 概述
+
+openGauss的编译依赖gcc,目前官方推荐使用gcc7.3版本来编译。 但是三方库中未给出gcc的编译指导。本文档介绍如何编译gcc。
+
+
+## 步骤
+
+以openEuler20.03 LTS系统,arm架构,gcc7.3版本为例 (其他版本的gcc也与此相同)。
+Gcc的编译依赖 `gmp` `isl` `mpc` `mpfr` ,需要先编译这四个库。
+
+三方库依赖以及下载地址如下:
+
+
+
+
+ gcc7.3 |
+ http://ftp.gnu.org/gnu/gcc/gcc-7.3.0/ |
+
+
+ gmp |
+ http://ftp.gnu.org/gnu/gmp/gmp-6.1.1.tar.xz |
+
+
+ mpc |
+ http://ftp.gnu.org/gnu/mpc/mpc-1.1.0.tar.gz |
+
+
+ isl |
+ https://gcc.gnu.org/pub/gcc/infrastructure/isl-0.18.tar.bz2 |
+
+
+
+
+将这几个三方库上传到服务器上面,按照如下顺序进行编译:
+
+## 1. 编译gmp
+
+解压:`tar -xf gmp-6.1.1.tar.xz`
+
+编译:
+***prefix路径可以自己指定,表示编译结果存放路径。***
+
+```
+./configure --prefix=/usr2/zxb/compile/target/gmp
+make –j
+make install –j
+```
+
+## 2. 编译mpfr
+
+解压: `tar –xf mpfr-4.0.2.tar.gz`
+
+编译:
+***--prefix路径自己指定,--with-gmp路径为上一步gmp编译的prefix路径。下面与此相同。***
+
+```
+./configure --prefix=/usr2/zxb/compile/target/mpfr --with-gmp=/usr2/zxb/compile/target/gmp
+make –j
+make install -j
+```
+
+## 3. 编译mpc
+
+解压: `tar –xf mpc-1.1.0.tar.gz`
+
+编译:
+
+```
+./configure --prefix=/usr2/zxb/compile/target/mpc --with-gmp=/usr2/zxb/compile/target/gmp --with-mpfr=/usr2/zxb/compile/target/mpfr
+make –j
+make install -j
+```
+
+## 4. 编译isl
+
+解压: `tar –xf isl-0.18.tar.bz2`
+
+编译:
+
+```
+./configure --prefix=/usr2/zxb/compile/target/isl --with-gmp-prefix=/usr2/zxb/compile/target/gmp
+make –j
+make install -j
+```
+
+## 5. 编译gcc
+
+1. 先安装编译gcc需要的依赖
+
+```
+yum install gcc-c++ glibc-devel
+```
+
+2. 注释 `sys/ustat.h `相关信息
+
+在 `glibc>=2.28` 的系统,去掉了 `ustat.h` 文件,gcc源码需要删除相关信息。(可以通过 `yum list | grep glibc` 查看当前系统的 `glibc` 版本)
+
+```
+vim ./libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cc
+```
+
+注释掉如下内容:
+
+```
+第157行 //#include
+第250行 //unsigned struct_ustat_sz = sizeof(struct ustat);
+```
+
+
+(参照: https://stackoverflow.com/questions/56096060/how-to-fix-the-gcc-compilation-error-sys-ustat-h-no-such-file-or-directory-i)
+
+3. 导入环境变量
+
+```
+export LD_LIBRARY_PATH=/usr2/zxb/compile/target/gmp/lib:/usr2/zxb/compile/target/mpfr/lib:/usr2/zxb/compile/target/mpc/lib:/usr2/zxb/compile/target/isl/lib:${LD_LIBRARY_PATH}
+export C_INCLUDE_PATH=/usr2/zxb/compile/target/gmp/include:/usr2/zxb/compile/target/mpfr/include:/usr2/zxb/compile/target/mpc/include:/usr2/zxb/compile/target/isl/include:${C_INCLUDE_PATH}
+```
+
+***环境变量中的路径,为上面编译的几个三方库各自的prefix路径。***
+
+4. 编译gcc
+
+***环境变量中的路径,为上面编译的几个三方库各自的prefix路径。***
+
+```
+./configure CFLAGS='-fstack-protector-strong -Wl,-z,noexecstack -Wl,-z,relro,-z,now ' --prefix=/usr2/zxb/compile/target/gcc --with-gmp=/usr2/zxb/compile/target/gmp --with-mpfr=/usr2/zxb/compile/target/mpfr --with-mpc=/usr2/zxb/compile/target/mpc --with-isl=/usr2/zxb/compile/target/isl --disable-multilib --enable-languages=c,c++
+make –j
+make install –j
+```
+
+
+## 6. 编译cmake
+
+下载cmake源码 `https://github.com/Kitware/CMake/releases`
+
+解压后进入到源码根目录
+
+```
+./configure --prefix=/usr2/zxb/compile/cmake3.18 ##prefix为编译结果路径
+make –j
+make install -j
+```
+
+
+## 拷贝gcc到三方库中
+
+编译完后,将 `/usr2/zxb/compile/target` 下的 `gmp mpfr mpc isl gcc` 拷贝到三方库二进制的 `buildtools/${platform}/gcc7.3` 下面,即可用来编译openGauss数据库。
+
+
+
+
+
+
diff --git a/content/zh/post/xingchen/images/compile/1.3.1.png b/content/zh/post/xingchen/images/compile/1.3.1.png
new file mode 100644
index 0000000000000000000000000000000000000000..2b9d45b7458e70ba6df096efaa0cd6407db0305f
GIT binary patch
literal 9884
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
literal 0
HcmV?d00001
diff --git a/content/zh/post/xingchen/images/compile/1.3.2.png b/content/zh/post/xingchen/images/compile/1.3.2.png
new file mode 100644
index 0000000000000000000000000000000000000000..10812f71b06c38987b9afafbcbbe80669b6c9614
GIT binary patch
literal 44697
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%0A;Dzh!yP
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