定制手机壳网站,工业互联网平台公司,足彩彩票网站建设,一个专做特卖的网站0 说明
业务科室提单需要在某台主机上部署多个单机磐维数据库#xff0c;用于业务测试。以下内容展示如何在单节点安装多个磐维数据库实例。
1 部署环境准备
1.1 IP 地址及端口
instipport实例1192.168.131.1717700实例2192.168.131.1727700
在131.17上分别安装两个实例用于业务测试。以下内容展示如何在单节点安装多个磐维数据库实例。
1 部署环境准备
1.1 IP 地址及端口
instipport实例1192.168.131.1717700实例2192.168.131.1727700
在131.17上分别安装两个实例端口号需要不一致。
1.2 文件规划存放
inst安装目录数据文件目录日志目录临时文件目录工具目录core文件目录实例1/data/database1/panweidb/app/data/database1/panweidb/data/data/database1/panweidb/log/data/database1/panweidb/tmp/data/database1/panweidb/tool/data/database1/panweidb/corefile实例2/data/database2/panweidb/app/data/database2/panweidb/data/data/database2/panweidb/log/data/database2/panweidb/tmp/data/database2/panweidb/tool/data/database2/panweidb/corefile
统一安装在/data目录下。
1.3 用户和组
inst用户名用户id组名组id实例1omm11101dbgrp1101实例2omm21102dbgrp1101
用户不同同组。
2 操作系统及平台要求
配置肯定是越大越好。
2.1 操作系统环境和平台信息
测试环境要求cpu起码2核。
[rootpwdb310 ~]# cat /etc/centos-release
CentOS Linux release 7.6.1810 (Core)[rootpwdb310 ~]# lscpu
Architecture: x86_64
CPU op-mode(s): 32-bit, 64-bit
Byte Order: Little Endian
CPU(s): 2
On-line CPU(s) list: 0,1
Thread(s) per core: 1
Core(s) per socket: 2
Socket(s): 1
NUMA node(s): 1
Vendor ID: GenuineIntel
CPU family: 6
Model: 154
Model name: 12th Gen Intel(R) Core(TM) i5-12500H
Stepping: 3
CPU MHz: 3110.403
BogoMIPS: 6220.80
Hypervisor vendor: VMware
Virtualization type: full
L1d cache: 48K
L1i cache: 32K
L2 cache: 1280K
L3 cache: 18432K
NUMA node0 CPU(s): 0,1cpu是2*2操作系统版本centos7.6。
2.2 硬件环境要求
测试环境内存建议4G以上磁盘空间100G千兆网。
# 内存
[rootpwdb310 ~]# freetotal used free shared buff/cache available
Mem: 3861508 127732 3553232 11804 180544 3496832
Swap: 4194300 0 4194300# 磁盘
[rootpwdb310 ~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/centos-root 15G 11G 4.2G 73% /
devtmpfs 3.8G 0 3.8G 0% /dev
tmpfs 3.9G 24K 3.9G 1% /dev/shm
tmpfs 3.9G 12M 3.8G 1% /run
tmpfs 3.9G 0 3.9G 0% /sys/fs/cgroup
/dev/sda1 197M 124M 74M 63% /boot
tmpfs 781M 0 781M 0% /run/user/0# 网卡
[rootpwdb310 ~]# ethtool ens33 | grep SpeedSpeed: 1000Mb/s2.2 软件环境要求
需要注意的是要有python3版本3.6以上不可以编译安装否则数据库预安装会失败。
2.3 软件依赖
需要安装的依赖包 BCLinux-for-Euler-21.10操作系统TF定制版安装libnsl软件会导致系统崩溃详见生产环境安装磐维数据库 panweidb 一装就崩
2.4 文件系统环境要求
文件系统环境所要求的扇区必须为 512bytes查看方法如下
[rootpwdb310 ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 20G 0 disk
├─sda1 8:1 0 200M 0 part /boot
└─sda2 8:2 0 19G 0 part ├─centos-root 253:0 0 15G 0 lvm /└─centos-swap 253:1 0 4G 0 lvm [SWAP]
sr0 11:0 1 4.3G 0 rom
[rootpwdb310 ~]#
[rootpwdb310 ~]#
[rootpwdb310 ~]# ll /dev/mapper/centos-root
lrwxrwxrwx 1 root root 7 Jul 1 10:52 /dev/mapper/centos-root - ../dm-0
[rootpwdb310 ~]#
[rootpwdb310 ~]# fdisk -l /dev/dm-0 Disk /dev/dm-0: 16.1 GB, 16106127360 bytes, 31457280 sectors
Units sectors of 1 * 512 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes3 数据库部署准备
3.1 环境准备
3.1.1 IP 地址及端口
instipport实例1192.168.131.1717700实例2192.168.131.1727700
3.1.2 文件规划存放
inst安装目录数据文件目录日志目录临时文件目录工具目录core文件目录实例1/data/database1/panweidb/app/data/database1/panweidb/data/data/database1/panweidb/log/data/database1/panweidb/tmp/data/database1/panweidb/tool/data/database1/panweidb/corefile实例2/data/database2/panweidb/app/data/database2/panweidb/data/data/database2/panweidb/log/data/database2/panweidb/tmp/data/database2/panweidb/tool/data/database2/panweidb/corefile
3.2 系统和环境配置
3.2.1 允许root 权限登录
检查主机的 sshd_config 文件内 PermitRootLogin 是否为 yes如果不是需要修改为 yes并重启 sshd 服务
# cat /etc/ssh/sshd_config | grep PermitRootLogin
PermitRootLogin yes# 重启 sshd 服务
systemctl restart sshd3.2.2 关闭防火墙
systemctl stop firewalld
systemctl disable firewalld3.2.3 selinux配置
setenforce 0
getenforcevi /etc/selinux/config
将 SELINUXenforcing 修改为 SELINUXdisabled3.2.4 时区
timedatectl3.2.5 系统内核参数配置
内存
[rootpwdb310 ~]# freetotal used free shared buff/cache available
Mem: 3861508 127732 3553232 11804 180544 3496832
Swap: 4194300 0 4194300[rootpwdb310 ~]# getconf PAGE_SIZE
4096根据内存设置以下参数
kernel.shmall : 3861508*0.8/4096 754kernel.shmmax : 3861508/2 1930754kernel.shmmni : 4096vm.dirty_background_bytes : 409600000
查看信号量
[rootpwdb310 ~]# ipcs -ls
------ Semaphore Limits --------
max number of arrays 128对应 SEMMNI
max semaphores per array 250对应 SEMMSL
max semaphores system wide 32000对应 SEMMNS
max ops per semop call 32对应 SEMOPM 根据信号量设置
kernel.sem 250 32000 250 128
该参数包含 4 个参数排序为 SEMMSL,SEMMNS,SEMOPM,SEMMNI
3.2.5 系统字符集
echo export LANGen_US.UTF-8 .bash_profile
. .bash_profile3.2.6 关闭透明大页
使用 root 用户通过配置如下系统服务实现永久关闭透明大页的目的:
vi /etc/systemd/system/disable-thp.service
#添加以下配置
[Unit]
DescriptionDisable Transparent Huge Pages (THP)
[Service]
Typesimple
ExecStart/bin/sh -c echo never /sys/kernel/mm/transparent_hugepage/enabled echo never /sys/kernel/mm/transparent_hugepage/defrag
[Install]
WantedBymulti-user.target修改完成后执行如下命令加载系统服务并设置开机自启动
systemctl daemon-reload
systemctl start disable-thp
systemctl enable disable-thp查看 THP 状态当返回结果均为 always madvise [never]时表示成功设置透明大页永久关闭
[rootpwdb310 ~]# cat /sys/kernel/mm/transparent_hugepage/enabled
always madvise [never]
[rootpwdb310 ~]# cat /sys/kernel/mm/transparent_hugepage/defrag
always madvise [never]3.2.7 IPC 参数配置
当 RemoveIPCyes 时操作系统会在用户退出时删除该用户的 IPC 资源共享内存段和信号量从而使得 PanWeiDB 服务器使用的 IPC 资源被清理可能引发数据库宕机所以需要设置 RemoveIPC 参数为 no。
echo RemoveIPCno /etc/systemd/logind.conf
echo RemoveIPCno /usr/lib/systemd/system/systemd-logind.service重新加载配置参数:
systemctl daemon-reload
systemctl restart systemd-logind检查修改是否生效由于 CentOS 操作系统环境的 removeIPC 默认为关闭则执行如下语句是无返回结果的
loginctl show-session | grep RemoveIPC
systemctl show systemd-logind | grep RemoveIPC3.2.8 安装数据库依赖
检查依赖情况
rpm -q libaio-devel flex bison ncurses-devel glibc-devel patch readline-devel python3 expect* bzip2 libnsl gcc gcc-c zlib-devel ncurses-devel expect bzip2 gcc将缺的包安装
yum install -y libaio-devel flex bison ncurses-devel glibc-devel patch readline-devel python3 expect* bzip2 libnsl gcc gcc-c zlib-devel ncurses-devel expect bzip2 gccBCLinux-for-Euler-21.10操作系统TF定制版安装libnsl软件会导致系统崩溃详见生产环境安装磐维数据库 panweidb 一装就崩
3.2.9 python3版本
[rootpwdb310 ~]# python3 --version
Python 3.6.83.2.10 配置ip主机名映射
vi /etc/hosts
192.168.131.17 pwdb3104 实例1安装
4.1 创建用户与用户组
创建dbgrp组和omm1用户并修改密码
groupadd -g 1101 dbgrp
useradd -g dbgrp -u 1101 -m omm1
passwd omm14.2 创建安装目录
创建安装目录归档目录和审计目录
mkdir -p /data/database1/panweidb
mkdir -p /data/database1/panweidb/archive
mkdir -p /data/database1/panweidb/pg_audit4.3 上传解压安装包
上传安装包到soft目录下
mkdir -p /data/database1/panweidb/soft
ls -lrt /data/database1/panweidb/soft
PanWeiDB_V2.0-S3.1.0_B01-install-centos_7-x86_64-no_mot.tar.gz解压数据库安装包
tar -zxvf PanWeiDB_V2.0-S3.1.0_B01-install-centos_7-x86_64-no_mot.tar.gz解压OM(Operation Manager操作管理器 )安装包
tar -zxvf PanWeiDB_V2.0-S3.1.0_B01-CentOS-64bit-om.tar.gz 4.4 配置 XML 文件
根据部署需求配置 cluster_config.xml 文件拷贝模板文件
cp /data/database1/panweidb/soft/script/gspylib/etc/conf/cluster_config_template.xml /data/database1/panweidb/soft/cluster_config.xml配置编辑
vi /data/database1/panweidb/soft/cluster_config.xml实例1配置
?xml version1.0 encodingutf-8?
ROOTCLUSTERPARAM nameclusterName valuepwdb310a /PARAM namenodeNames valuepwdb310/PARAM namegaussdbAppPath value/data/database1/panweidb/app /PARAM namegaussdbLogPath value/data/database1/panweidb/log /PARAM nametmpMppdbPath value/data/database1/panweidb/tmp/PARAM namegaussdbToolPath value/data/database1/panweidb/tool/PARAM namecorePath value/data/database1/panweidb/corefile/PARAM namebackIp1s value192.168.131.17//CLUSTERDEVICELISTDEVICE snpwdb310PARAM namename valuepwdb310/PARAM nameazName valueAZ1/PARAM nameazPriority value1/PARAM namebackIp1 value192.168.131.17/PARAM namesshIp1 value192.168.131.17/PARAM namedataNum value1/PARAM namedataPortBase value17700/PARAM namedataNode1 value/data/database1/panweidb/data//DEVICE/DEVICELIST
/ROOT4.5 预安装
root用户执行预安装脚本 gs_preinstall 可以协助自动完成如下的安装环境准备工作
自动设置 Linux 内核参数以达到提高服务器负载能力的目的。这些参数直接影响数据库系统的运行状态请仅在确认必要时调整。自动将 XML 配置文件、安装包拷贝到其他主机的相同目录下安装用户和- 用户组不存在时自动创建安装用户以及用户组。读取 XML 配置文件中的目录信息并创建将目录权限授予安装用户。
使用 root 用户为安装目录授权
chown -R omm1:dbgrp /data/database1/panweidb
chmod -R 755 /data/database1/panweidbroot执行 gs_preinstall 预安装脚本
cd /data/database1/panweidb/soft/script/
./gs_preinstall -U omm1 -G dbgrp -X ../cluster_config.xml --sep-env-file/home/omm1/pwdb310a.env指定用户和组并把环境变量输出到pwdb310a.env。
4.5 执行安装脚本
切换到安装用户 omm1并加载环境变量
su - omm1
cat pwdb310a.env .bash_profile
source .bash_profile运行安装脚本
gs_install -X /data/database1/panweidb/soft/cluster_config.xml \
--gsinit-parameter--encodingUTF8 \
--gsinit-parameter--lc-collateC \
--gsinit-parameter--lc-ctypeC \
--gsinit-parameter--dbcompatibilityB中途需要输入一次集群密码需要符合8位3种字符规则。
安装成功但是实例启动失败
[GAUSS-51607] : Failed to start instance. Error: Please check the gs_ctl log for failure details.
2025-06-30 03:02:56.233 68618de0.1 [unknown] 139926357943104 [unknown] 0 dn_6001 42809 0 [BACKEND] FATAL: the values of memory out of limit, the database failed to be started, max_process_memory (3072MB) must greater than 2GB cstore_buffers(512MB) (udf_memory_limit(200MB) - UDF_DEFAULT_MEMORY(200MB)) shared_buffers(716MB) preserved memory(3166MB) 6442MB, reduce the value of shared_buffers, max_pred_locks_per_transaction, max_connection, wal_buffers..etc will help reduce the size of preserved memory进入数据路径下编辑参数文件将max_process_memory 参数改到符合上述要求
[omm1pwdb310 data]$ grep max_process_memory postgresql.conf
max_process_memory 6.5GB重新启动实例1
[omm1pwdb310 data]$ gs_ctl start -D /data/database1/panweidb/data
...
.
[2025-07-01 13:45:52.728][28726][][gs_ctl]: done
[2025-07-01 13:45:52.728][28726][][gs_ctl]: server started (/data/database1/panweidb/data)4.6 查看实例状态
[omm1pwdb310 data]$ gs_ctl status
[2025-07-01 13:46:33.344][28882][][gs_ctl]: gs_ctl status,datadir is /data/database1/panweidb/data
gs_ctl: server is running (PID: 28729)
/data/database1/panweidb/app/bin/panweidb -D /data/database1/panweidb/data5 实例2安装
安装好实例1后面的实例2其实就简单了省去了环境配置步骤从XML文件配置开始操作。
主要与实例1的区分用户名和安装目录用omm2操作安装数据库部署在database2目录下。
5.1 创建用户与用户组
创建omm2用户并修改密码
useradd -g dbgrp -u 1102 -m omm2
passwd omm2组和omm1用户相同。
5.2 创建安装目录
mkdir -p /data/database2/panweidb
mkdir -p /data/database2/panweidb/archive
mkdir -p /data/database2/panweidb/pg_audit
mkdir -p /data/database2/panweidb/soft5.3 上传解压安装包
从实例1目录下拷贝安装包过来
cp /data/database2/panweidb/soft/script/gspylib/etc/conf/cluster_config_template.xml /data/database2/panweidb/soft/cluster_config.xmlls -lrt /data/database2/panweidb/soft
PanWeiDB_V2.0-S3.1.0_B01-install-centos_7-x86_64-no_mot.tar.gz解压数据库安装包
tar -zxvf PanWeiDB_V2.0-S3.1.0_B01-install-centos_7-x86_64-no_mot.tar.gz解压OM(Operation Manager操作管理器 )安装包
tar -zxvf PanWeiDB_V2.0-S3.1.0_B01-CentOS-64bit-om.tar.gz 5.4 配置 XML 文件
根据部署需求配置 cluster_config.xml 文件拷贝模板文件
cp /data/database2/panweidb/soft/script/gspylib/etc/conf/cluster_config_template.xml /data/database2/panweidb/soft/cluster_config.xml配置编辑
vi /data/database2/panweidb/soft/cluster_config.xml实例1配置
?xml version1.0 encodingutf-8?
ROOTCLUSTERPARAM nameclusterName valuepwdb310b /PARAM namenodeNames valuepwdb310/PARAM namegaussdbAppPath value/data/database2/panweidb/app /PARAM namegaussdbLogPath value/data/database2/panweidb/log /PARAM nametmpMppdbPath value/data/database2/panweidb/tmp/PARAM namegaussdbToolPath value/data/database2/panweidb/tool/PARAM namecorePath value/data/database2/panweidb/corefile/PARAM namebackIp1s value192.168.131.17//CLUSTERDEVICELISTDEVICE snpwdb310PARAM namename valuepwdb310/PARAM nameazName valueAZ1/PARAM nameazPriority value1/PARAM namebackIp1 value192.168.131.17/PARAM namesshIp1 value192.168.131.17/PARAM namedataNum value1/PARAM namedataPortBase value27700/PARAM namedataNode1 value/data/database2/panweidb/data//DEVICE/DEVICELIST
/ROOT5.5 预安装
root用户执行预安装脚本 gs_preinstall 可以协助自动完成如下的安装环境准备工作
自动设置 Linux 内核参数以达到提高服务器负载能力的目的。这些参数直接影响数据库系统的运行状态请仅在确认必要时调整。自动将 XML 配置文件、安装包拷贝到其他主机的相同目录下安装用户和- 用户组不存在时自动创建安装用户以及用户组。读取 XML 配置文件中的目录信息并创建将目录权限授予安装用户。
使用 root 用户为安装目录授权
chown -R omm2:dbgrp /data/database2/panweidb
chmod -R 755 /data/database2/panweidbroot执行 gs_preinstall 预安装脚本
cd /data/database2/panweidb/soft/script/
./gs_preinstall -U omm2 -G dbgrp -X ../cluster_config.xml --sep-env-file/home/omm2/pwdb310b.env5.5 执行安装脚本
切换到安装用户 omm2并加载环境变量
su - omm2
cat pwdb310b.env .bash_profile
source .bash_profile运行安装脚本
gs_install -X /data/database2/panweidb/soft/cluster_config.xml \
--gsinit-parameter--encodingUTF8 \
--gsinit-parameter--lc-collateC \
--gsinit-parameter--lc-ctypeC \
--gsinit-parameter--dbcompatibilityB中途需要输入一次集群密码需要符合8位3种字符规则。
安装成功但是实例启动失败处理办法和实例1一样
略过。
重新启动实例2
[omm2pwdb310 data]$ gs_ctl start -D /data/database2/panweidb/data
...
.
[2025-07-01 15:18:25.683][42080][][gs_ctl]: done
[2025-07-01 15:18:25.683][42080][][gs_ctl]: server started (/data/database2/panweidb/data)5.6 查看实例状态
[omm2pwdb310 ~]$ gs_ctl status
[2025-07-01 15:18:48.687][42156][][gs_ctl]: gs_ctl status,datadir is /data/database2/panweidb/data
gs_ctl: server is running (PID: 42083)
/data/database2/panweidb/app/bin/panweidb -D /data/database2/panweidb/data6 多实例区分
6.1 目录结构
数据库路径分别对应database1和database2
6.2 进程和端口
数据库进程 数据库端口
7 总结
磐维数据库单机多实例安装还是非常简单的只需要做好用户和安装目录的区分即可。通过上述步骤已在单节点主机131.17成功部署两个磐维数据库实例。实例 1 与实例 2 通过不同端口17700/27700、独立用户omm1/omm2及隔离目录结构实现区分确保了资源隔离与服务独立性。