原作者:陈坤
适用范围
OS: centOS7
Mogdb:3.0.2
python: python3.6.5
ptk: ptk1.0
数据库安装用户:omm
cpu core:2
主机内存:8G
方案概述
使用ptk 安装mogdb一主一备架构。
主库
hostname :mogdb01
ip :192.168.182.154
备库
hostname :mogdb02
ip :192.168.182.155
因为是实验环境,就没有配置双网卡绑定bond0
ptk软件安装在主库上。
mogdb操作系统用户为 omm.
操作系统信息设置
安装主备的两台主机的操作系统都需要设置
关闭防火墙
systemctl stop firewalld.service
systemctl stop iptables.service
systemctl disable firewalld.service
systemctl disable iptables.service
确认修改
systemctl status firewalld.service
systemctl status iptables.service
优化系统服务
systemctl stop postfix.service
systemctl stop avahi-daemon.socket
systemctl stop avahi-daemon.service
systemctl stop atd.service
systemctl stop bluetooth.service
systemctl stop wpa_supplicant.service
systemctl stop accounts-daemon.service
systemctl stop atd.service cups.service
systemctl stop postfix.service
systemctl stop ModemManager.service
systemctl stop debug-shell.service
systemctl stop rtkit-daemon.service
systemctl stop rpcbind.service
systemctl stop rngd.service
systemctl stop upower.service
systemctl stop rhsmcertd.service
systemctl stop rtkit-daemon.service
systemctl stop ModemManager.service
systemctl stop mcelog.service
systemctl stop colord.service
systemctl stop gdm.service
systemctl stop libstoragemgmt.service
systemctl stop ksmtuned.service
systemctl stop brltty.service
systemctl stop avahi-dnsconfd.service
systemctl stop abrt-ccpp.service
systemctl stop abrtd.service
systemctl stop auditd && systemctl disable auditd
systemctl disable firewalld.service
systemctl disable postfix.service
systemctl disable avahi-daemon.socket
systemctl disable avahi-daemon.service
systemctl disable atd.service
systemctl disable bluetooth.service
systemctl disable wpa_supplicant.service
systemctl disable accounts-daemon.service
systemctl disable atd.service cups.service
systemctl disable postfix.service
systemctl disable ModemManager.service
systemctl disable debug-shell.service
systemctl disable rtkit-daemon.service
systemctl disable rpcbind.service
systemctl disable rngd.service
systemctl disable upower.service
systemctl disable rhsmcertd.service
systemctl disable rtkit-daemon.service
systemctl disable ModemManager.service
systemctl disable mcelog.service
systemctl disable colord.service
systemctl disable gdm.service
systemctl disable libstoragemgmt.service
systemctl disable ksmtuned.service
systemctl disable brltty.service
systemctl disable avahi-dnsconfd.service
systemctl disable abrt-ccpp.service
systemctl disable abrtd.service
关闭swap交换内存
修改/etc/fstab
#永久swap交换内存,删除SWAP mount信息
cp /etc/fstab /etc/fstab.bak
sed -i ‘/swap/s/^/#/’ /etc/fstab
cat /etc/fstab|grep -v ^#|grep -v ‘^$’
检查:
free -m
关闭selinux
setenforce 0
sed -i s/SELINUX=enforcing/SELINUX=disabled/g /etc/selinux/config
sed -i ‘s/^SELINUX=.*/SELINUX=disabled/’ /etc/selinux/config
内核参数配置
根据主机配置不同,有些参数可能不一样,安装前自检时会提示哪些参数有问题,并给出建议值。
修改配置文件,添加或修改以下内容
vi /etc/sysctl.conf
net.core.rmem_max=1048576
net.core.rmem_default=262144
net.ipv4.tcp_retries2=12
net.ipv4.tcp_syn_retries=5
net.ipv4.tcp_tw_recycle=1
net.ipv4.tcp_keepalive_intvl=30
net.ipv4.tcp_wmem=8192 250000 16777216
net.core.wmem_default=262144
net.ipv4.tcp_retries1=5
net.ipv4.tcp_max_syn_backlog=65535
net.core.somaxconn=65535
net.ipv4.tcp_rmem=8192 250000 16777216
net.core.wmem_max=1048576
vm.min_free_kbytes=399514
net.core.netdev_max_backlog=65535
net.ipv4.tcp_tw_reuse=1
net.ipv4.tcp_keepalive_time=30
kernel.sem=250 6400000 1000 25600
配置完成之后需要加载一下:
sysctl -p
limit.conf限制修改
echo “* soft nofile 1000000” >> /etc/security/limits.conf
echo “* hard nofile 1000000” >> /etc/security/limits.conf
echo “* soft nproc unlimited” >> /etc/security/limits.d/90-nproc.conf
关闭透明大页
chmod +x /etc/rc.d/rc.local
systemctl enable rc-local.service
cat >> /etc/rc.d/rc.local <<EOF
swapoff -a
if test -f /sys/kernel/mm/transparent_hugepage/enabled;
then
echo never > /sys/kernel/mm/transparent_hugepage/enabled
fi
if test -f /sys/kernel/mm/transparent_hugepage/defrag;
then
echo never > /sys/kernel/mm/transparent_hugepage/defrag
fi
EOF
参数配置完需要重启。
reboot
重启之后查看是否关闭成功。
cat /sys/kernel/mm/transparent_hugepage/enabled
返回如下结果说明关闭成功。
always madvise [never]
系统环境变量
修改系统环境变量
vi /etc/profile
在最后添加export LANG=en_US.UTF-8
保存并退出
系统时间设置
查看原始状态
timedatectl |grep “Time zone”
修改为上海时区
rm -f /etc/localtime
ln -s /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
设置时间同步
先设置一个错误的时间
date -s 2022-01-01
使用Chrony服务
检查是否安装
rpm -qa |grep chrony
安装
yum install chrony -y
客户端设置(添加服务器IP即可)
vi /etc/chrony.conf
server <NTP_SERVER_ADDR> iburst
server 10.168.10.10 iburst
pool 10.168.10.10 iburst 两种写法都可以
服务管理
systemctl start chronyd #启动chrony服务
systemctl stop chronyd #停止chrony服务
systemctl restart chronyd #重启chrony服务
systemctl enable chronyd #设置开机同步时间
systemctl status chronyd #查看服务状态
查看时间同步源:
chronyc sources -v
[root@db-pd ~]# chronyc sources -v
注意:如果是虚拟机安装,没有时间服务器,可以修改虚拟机上的时间同步设置。
数据库安装用户sudo 权限
给 数据库安装用户omm 添加sudo权限
vi /etc/sudoers
追加两行
omm ALL=(ALL)NOPASSWD: /sbin/ifconfig
omm ALL=(ALL)NOPASSWD: /bin/systemctl
编辑/etc/hosts
主备都要将对方的主机添加到/etc/hosts中,如果不添加,使用PTK安装时,ptk也会自动添加。
192.168.182.154 mogdb01
192.168.182.155 mogdb02
python3安装
因为mogdb数据库依赖python3,centOS操作系统自带的python是2.7.5,所以需要重新编译安装python3。其他操作系统如果python版本和数据库要去不一致,也需要重新安装
主备两台主机都需要安装。
数据库的python版本依赖:
以下仅适用于mogdb3.0.2,其他版本请查阅官网
Python- openEuler:支持Python 3.7.X- CentOS:支持Python 3.6.X- 麒麟:支持Python 3.7.X说明:python需要通过–enable-shared方式编译。
安装依赖包
rpm -q --qf ‘%{NAME}-%{VERSION}-%{RELEASE} (%{ARCH})\n’ libaio-devel
gcc
gcc-c++
zlib-devel
expect
numactl
flex
bison
ncurses-devel
patch
readline-devel
openssh
glibc
psmisc
bzip2
yum install -y libaio-devel gcc gcc-c++ zlib-devel expect numactl flex bison ncurses-devel patch readline-devel glibc psmisc bzip2
python 下载安装
https://www.python.org/ftp/python/
以python3.6.5为例
wget https://www.python.org/ftp/python/3.6.5/Python-3.6.5.tgz
创建python3的目录
mkdir -p /usr/local/python3
解压
tar -zxvf Python-3.6.5.tgz
进入解压后的目录
cd Python-3.6.5/
执行安装
./configure --prefix=/usr/local/python3 --enable-shared CFLAGS=-fPIC && make && make install
需要复制文件libpython3.6m.so.1.0 到 /usr/lib64/ 中
cp /usr/local/python3/lib/libpython3.6m.so.1.0 /usr/lib64/
创建软连接:
ln -s /usr/local/python3/bin/python3 /usr/bin/python3
ln -s /usr/local/python3/bin/pip3 /usr/bin/pip3
安装报错处理
如果报错
zipimport.ZipImportError: can’t decompress data; zlib not available
执行
yum install zlib-devel
之后,再执行python安装命令
./configure --prefix=/usr/local/python3 --enable-shared CFLAGS=-fPIC && make && make install
安装完成后执行python3 -V报错
python3: error while loading shared libraries: libpython3.6m.so.1.0: cannot open shared object file: No such file or directory
需要复制文件libpython3.6m.so.1.0 到 /usr/lib64/ 中
cp /usr/local/python3/lib/libpython3.6m.so.1.0 /usr/lib64/
卸载python3
如果安装了错误的版本,需要先卸载,再安装
1.rpm镜像安装方式卸载
1.卸载Python3(仅适合通过rpm安装的python)
rpm -qa|grep python3|xargs rpm -ev --allmatches --nodeps
2.删除残留文件
whereis python3 |xargs rm -frv
3.删除软链接
rm -rf /usr/bin/python3
rm -rf /usr/bin/pip3
2.解压方式安装卸载
1.直接删除python路径文件夹
rm -rf /usr/local/python3
2.删除软链接
rm -rf /usr/bin/python3
rm -rf /usr/bin/pip3
3.检查是否还存在Python
whereis python3
which python3
创建数据库安装用户和目录
创建omm用户
/usr/sbin/groupadd -g 54322 omm
/usr/sbin/useradd -u 54321 -g omm -G omm
设置密码
passwd xxxx
创建并授权数据库目录
mkdir -p /data/mogdb/app/3.0.2
mkdir -p /data/mogdb/data
mkdir -p /data/mogdb/data/pg_xlog
mkdir -p /data/mogdb/log
mkdir -p /data/mogdb/archive
mkdir -p /data/mogdb/backup
mkdir -p /opt/mogdb/mogha
mkdir -p /opt/software
mkdir -p /opt/software/ptk
mkdir -p /opt/software/brm
mkdir -p /data/mogdb/expimp
授权
chown -R omm:omm /data/mogdb/app/3.0.2
chown omm:omm /data/mogdb/data
chown omm:omm /data/mogdb/data/pg_xlog
chown omm:omm /data/mogdb/log
chown omm:omm /data/mogdb/archive
chown omm:omm /data/mogdb/backup
chown omm:omm /opt/mogdb/mogha
chown omm:omm /opt/software/ptk
chown omm:omm /opt/software/brm
chown omm:omm /data/mogdb/expimp
chown omm:omm /data/mogdb
chmod 700 /data/mogdb/data
chmod 700 /data/mogdb/data/pg_xlog
chmod 700 /data/mogdb/log
chmod 700 /data/mogdb/archive
chmod 770 /data/mogdb/backup
chmod 755 /data/mogdb/app/3.0.2
chmod 755 /opt/mogdb/mogha
chmod 755 /opt/software
chmod 755 /opt/software/ptk
chmod 755 /opt/software/brm
chmod 755 /data/mogdb/expimp
安装ptk工具
注意ptk需要在操作系统root用户下安装
参考:https://docs.mogdb.io/zh/ptk/v1.0/install/
在线安装
curl --proto ‘=https’ --tlsv1.2 -sSf https://cdn-mogdb.enmotech.com/ptk/install.sh | sh
离线安装
下载安装包:
第一步:先在个人电脑上下载你所要安装的机器的对应安装包,以下是不同系统架构的最新版的安装包下载链接:
MacOS ARM64: ptk_darwin_arm64.tar.gz
MacOS X86: ptk_darwin_x86_64.tar.gz
Linux ARM64: ptk_linux_arm64.tar.gz
Linux X86: ptk_linux_x86_64.tar.gz
Windows X86: ptk_windows_x86_64.tar.gz
第二步:下载好安装包以后,通过内网将安装包拷贝到目标服务器上解压;
第三步:解压后会得到一个名为 ptk 的二进制文件,该文件即为 PTK 的可执行文件,可以根据个人偏好,将该文件移动到合适的目录(推荐 $HOME/.ptk/bin/ 目录,需手动创建),然后将所在所在目录添加到 PATH 环境变量中即可;
安装mogdb数据库
使用ptk工具进行数据库安装,方便又省力
创建安装配置文件
创建config.yaml配置文件
一主一备参考以下配置,具体说明见官方文档
vi config.yaml
global:
cluster_name: “cluster_enmo”
user: “omm”
group: “omm”
user_password: “pTk6ZDg2Njk2ZTc8Qz5BPUI+PlNIQkdCbVJHalNnUTBIaGtNZDlxSGg2alJsaktSR09naVdDdXJ4bnRhZ0U=”
db_password: “pTk6ZDg2Njk2ZTc8Qz5BPUI+PkE5Z3dQcVZkRW95cUZheTM4bWd6QWZLOGxKWWFDYjVtXzVISzZ6U0NRUmc=”
db_port: 26000
base_dir: “/data/mogdb”
app_dir: “/data/mogdb/app/3.0.2”
log_dir: “/data/mogdb/log”
data_dir: “/data/mogdb/data”
tool_dir: “/data/mogdb/tool”
gs_initdb_opts:
- “–encoding=UTF-8”
- “–dbcompatibility=A”
ssh_option:
port: 22
user: root
password: “pTk6ZDg2Njk2ZTc8Qz5BPUI+PlNIQkdCbVJHalNnUTBIaGtNZDlxSGg2alJsaktSR09naVdDdXJ4bnRhZ0U=”
db_servers:
- host: 192.168.182.154
role: primary
- host: 192.168.182.155
role: standby
使用ptk安装,需要将密码不能明文写在config.yaml配置文件中,需要先加密
ptk encrypt ‘123456’
123456: pTk6ZDAxNTFlMjY8RD0+PT4/QHdHbV8xYmEyMGFpeHdwSzJ4UGN1S2ZRemlhX25ieUs0REprWi05R0d4RzQ=
安装数据库
安装前检查:
ptk checkos -i A --detail -f config.yaml
下载安装介质
所有版本:
https://www.mogdb.io/downloads/mogdb/all
3.0.2:
https://cdn-mogdb.enmotech.com/mogdb-media/3.0.2/MogDB-3.0.2-CentOS-x86_64.tar.gz
安装命令:
ptk install -y -f config.yaml --pkg /opt/software/MogDB-3.0.2-CentOS-x86_64.tar.gz
成功安装的完整日志:
[root@mogdb01 ~]# ptk install -y -f config.yaml --pkg /opt/software/MogDB-3.0.2-CentOS-x86_64.tar.gz
INFO[2023-07-25T16:50:21.294] PTK Version: 1.0.0 release
INFO[2023-07-25T16:50:21.295] load config from config.yaml
INFO[2023-07-25T16:50:21.423] start check os …
INFO[2023-07-25T16:50:21.449] prechecking dependent tools…
WARN[2023-07-25T16:50:21.628] [192.168.182.154][omm] device(sda) readahead value=8192, expect 16384.
WARN[2023-07-25T16:50:21.659] [192.168.182.155][omm] device(sda) readahead value=8192, expect 16384.
INFO[2023-07-25T16:50:21.718] [192.168.182.155][omm] check port 26000
INFO[2023-07-25T16:50:21.718] [192.168.182.154][omm] check port 26000
INFO[2023-07-25T16:50:21.728] [192.168.182.154][omm] port 26000 is free
INFO[2023-07-25T16:50:21.779] [192.168.182.155][omm] port 26000 is free
INFO[2023-07-25T16:50:21.783] [192.168.182.154][omm] kernel version: 3.10.0-957.el7.x86_64
INFO[2023-07-25T16:50:21.794] [192.168.182.155][omm] kernel version: 3.10.0-957.el7.x86_64
INFO[2023-07-25T16:50:21.800] [192.168.182.154][omm] timezone: +0800
INFO[2023-07-25T16:50:21.809] [192.168.182.155][omm] timezone: +0800
INFO[2023-07-25T16:50:21.815] [192.168.182.154][omm] swap memory 0kB, total memory 7990288kB
INFO[2023-07-25T16:50:21.825] [192.168.182.155][omm] swap memory 0kB, total memory 7990288kB
INFO[2023-07-25T16:50:21.953] [192.168.182.154][omm] check kernel.core_pattern
INFO[2023-07-25T16:50:21.960] [192.168.182.154][omm] check removeIPC value
INFO[2023-07-25T16:50:22.196] [192.168.182.155][omm] check kernel.core_pattern
INFO[2023-07-25T16:50:22.220] [192.168.182.155][omm] check removeIPC value
INFO[2023-07-25T16:50:22.277] [192.168.182.154][omm] locale: LANG=en_US.UTF-8
INFO[2023-07-25T16:50:22.283] [192.168.182.155][omm] locale: LANG=en_US.UTF-8
INFO[2023-07-25T16:50:22.394] [192.168.182.155][omm] platform: centos_7_64bit
INFO[2023-07-25T16:50:22.394] [192.168.182.154][omm] platform: centos_7_64bit
WARN[2023-07-25T16:50:22.400] [192.168.182.154][omm] device(sr0) ‘IO Request’=128, expect 256
WARN[2023-07-25T16:50:22.400] [192.168.182.154][omm] device(sda) ‘IO Request’=128, expect 256
WARN[2023-07-25T16:50:22.408] [192.168.182.155][omm] device(sda) ‘IO Request’=128, expect 256
WARN[2023-07-25T16:50:22.408] [192.168.182.155][omm] device(sr0) ‘IO Request’=128, expect 256
INFO[2023-07-25T16:50:31.309] all checkers finished
INFO[2023-07-25T16:50:31.309] time elapsed: 10s
INFO[2023-07-25T16:50:31.310] check os success
INFO[2023-07-25T16:50:31.310] start check distro …
INFO[2023-07-25T16:50:31.310] check distro success
INFO[2023-07-25T16:50:31.310] start check user …
INFO[2023-07-25T16:50:31.325] check user success
INFO[2023-07-25T16:50:31.325] start check port …
INFO[2023-07-25T16:50:31.458] check port success
INFO[2023-07-25T16:50:31.671] start prepare installation package …
INFO[2023-07-25T16:50:31.671] installation package is ready
INFO[2023-07-25T16:50:31.671] start validate installation package …
INFO[2023-07-25T16:50:34.261] db product: MogDB, version: 3.0.2, number: 92.605, commit_id: 9bc79be5
INFO[2023-07-25T16:50:34.261] validate installation package success
INFO[2023-07-25T16:50:34.261] start complete the configuration …
INFO[2023-07-25T16:50:34.262] complete the configuration success
INFO[2023-07-25T16:50:34.262] start distribute installation package …
To 192.168.182.154: 132.80 MiB / 132.80 MiB [----------------------------------------------------------------------------] 100.00% 23.75 MiB p/s 5.8s
To 192.168.182.155: 132.80 MiB / 132.80 MiB [----------------------------------------------------------------------------] 100.00% 23.75 MiB p/s 5.8s
INFO[2023-07-25T16:50:40.100] distrubite packages success
INFO[2023-07-25T16:50:40.101] start setup db …
INFO[2023-07-25T16:50:40.118] [192.168.182.154][omm] set user omm profiles
INFO[2023-07-25T16:50:40.126] [192.168.182.155][omm] set user omm profiles
INFO[2023-07-25T16:50:40.220] [192.168.182.154][omm] make user omm’s dir(s): /data/mogdb/tool,/data/mogdb/tool/ptk_tool/bin
INFO[2023-07-25T16:50:40.230] [192.168.182.155][omm] make user omm’s dir(s): /data/mogdb/tool,/data/mogdb/tool/ptk_tool/bin
INFO[2023-07-25T16:50:40.408] [192.168.182.154][omm] extract MogDB-3.0.2-CentOS-x86_64.tar.gz to dir /data/mogdb/tool
INFO[2023-07-25T16:50:40.416] [192.168.182.155][omm] extract MogDB-3.0.2-CentOS-x86_64.tar.gz to dir /data/mogdb/tool
INFO[2023-07-25T16:50:41.449] [192.168.182.154][omm] extract MogDB-3.0.2-CentOS-64bit-om.tar.gz to dir /data/mogdb/tool
INFO[2023-07-25T16:50:41.465] [192.168.182.155][omm] extract MogDB-3.0.2-CentOS-64bit-om.tar.gz to dir /data/mogdb/tool
INFO[2023-07-25T16:50:41.877] [192.168.182.154][omm] try to fix psutil python lib
INFO[2023-07-25T16:50:41.895] [192.168.182.155][omm] try to fix psutil python lib
WARN[2023-07-25T16:50:41.895] [192.168.182.154][omm]
Not found python3.6 or 3.7, skip fix psutil dynamic lib,
please install proper python and fix it manually or reinstall by ptk
if you don’t fix this, it will cause that gs_om and cm_ctl cannot run properly, but not ptk and database
INFO[2023-07-25T16:50:41.895] [192.168.182.154][omm] write file /data/mogdb/tool/ptk_tool/bin/README.md
WARN[2023-07-25T16:50:41.911] [192.168.182.155][omm]
Not found python3.6 or 3.7, skip fix psutil dynamic lib,
please install proper python and fix it manually or reinstall by ptk
if you don’t fix this, it will cause that gs_om and cm_ctl cannot run properly, but not ptk and database
INFO[2023-07-25T16:50:41.911] [192.168.182.155][omm] write file /data/mogdb/tool/ptk_tool/bin/README.md
INFO[2023-07-25T16:50:41.950] [192.168.182.154][omm] write file /data/mogdb/tool/ptk_tool/bin/pscp
INFO[2023-07-25T16:50:41.972] [192.168.182.155][omm] write file /data/mogdb/tool/ptk_tool/bin/pscp
INFO[2023-07-25T16:50:42.005] [192.168.182.154][omm] write file /data/mogdb/tool/ptk_tool/bin/pssh
INFO[2023-07-25T16:50:42.030] [192.168.182.155][omm] write file /data/mogdb/tool/ptk_tool/bin/pssh
INFO[2023-07-25T16:50:42.063] [192.168.182.154][omm] write file /data/mogdb/tool/ptk_tool/bin/task_pool.py
INFO[2023-07-25T16:50:42.093] [192.168.182.155][omm] write file /data/mogdb/tool/ptk_tool/bin/task_pool.py
INFO[2023-07-25T16:50:42.122] [192.168.182.154][omm] change /data/mogdb/tool owner to omm
INFO[2023-07-25T16:50:42.148] [192.168.182.154][omm] make user omm’s dir(s): /data/mogdb/app/3.0.2
INFO[2023-07-25T16:50:42.153] [192.168.182.155][omm] change /data/mogdb/tool owner to omm
INFO[2023-07-25T16:50:42.179] [192.168.182.155][omm] make user omm’s dir(s): /data/mogdb/app/3.0.2
INFO[2023-07-25T16:50:42.243] [192.168.182.154][omm] extract MogDB-3.0.2-CentOS-64bit.tar.gz to dir /data/mogdb/app/3.0.2
INFO[2023-07-25T16:50:42.271] [192.168.182.155][omm] extract MogDB-3.0.2-CentOS-64bit.tar.gz to dir /data/mogdb/app/3.0.2
INFO[2023-07-25T16:50:44.956] [192.168.182.154][omm] write file /data/mogdb/app/3.0.2/bin/transfer.py
INFO[2023-07-25T16:50:44.997] [192.168.182.155][omm] write file /data/mogdb/app/3.0.2/bin/transfer.py
INFO[2023-07-25T16:50:44.997] [192.168.182.154][omm] change /data/mogdb/app/3.0.2 owner to omm
INFO[2023-07-25T16:50:45.021] [192.168.182.154][omm] validate and try to fix ld library for gs_initdb
INFO[2023-07-25T16:50:45.038] [192.168.182.155][omm] change /data/mogdb/app/3.0.2 owner to omm
INFO[2023-07-25T16:50:45.044] [192.168.182.154][omm] validate and try to fix ld library for mogdb
INFO[2023-07-25T16:50:45.063] [192.168.182.155][omm] validate and try to fix ld library for gs_initdb
INFO[2023-07-25T16:50:45.067] [192.168.182.154][omm] change /data/mogdb/app/3.0.2 owner to omm
INFO[2023-07-25T16:50:45.087] [192.168.182.155][omm] validate and try to fix ld library for mogdb
INFO[2023-07-25T16:50:45.093] [192.168.182.154][omm] make user omm’s dir(s): /data/mogdb/log/gs_profile,/data/mogdb/log/pg_log,/data/mogdb/log/pg_audit,/data/mogdb/log/bin,/data/mogdb/log/pg_log/dn_6001,/data/mogdb/log/pg_audit/dn_6001
INFO[2023-07-25T16:50:45.114] [192.168.182.155][omm] change /data/mogdb/app/3.0.2 owner to omm
INFO[2023-07-25T16:50:45.138] [192.168.182.155][omm] make user omm’s dir(s): /data/mogdb/log/gs_profile,/data/mogdb/log/pg_log,/data/mogdb/log/pg_audit,/data/mogdb/log/bin,/data/mogdb/log/pg_log/dn_6002,/data/mogdb/log/pg_audit/dn_6002
INFO[2023-07-25T16:50:45.640] [192.168.182.154][omm] make user omm’s dir(s): /data/mogdb/tmp
INFO[2023-07-25T16:50:45.699] [192.168.182.155][omm] make user omm’s dir(s): /data/mogdb/tmp
INFO[2023-07-25T16:50:45.714] [192.168.182.154][omm] save version to upgrade_version
INFO[2023-07-25T16:50:45.777] [192.168.182.155][omm] save version to upgrade_version
INFO[2023-07-25T16:50:45.802] [192.168.182.154][omm] create file cluster_manual_start
INFO[2023-07-25T16:50:45.823] [192.168.182.154][omm] generate cluster_static_config file
INFO[2023-07-25T16:50:45.850] [192.168.182.154][omm] change /data/mogdb/app/3.0.2/bin/cluster_static_config owner to omm
INFO[2023-07-25T16:50:45.872] [192.168.182.155][omm] create file cluster_manual_start
INFO[2023-07-25T16:50:45.872] [192.168.182.154][omm] make user omm’s dir(s): /data/mogdb/data
INFO[2023-07-25T16:50:45.894] [192.168.182.155][omm] generate cluster_static_config file
INFO[2023-07-25T16:50:45.926] [192.168.182.155][omm] change /data/mogdb/app/3.0.2/bin/cluster_static_config owner to omm
INFO[2023-07-25T16:50:45.948] [192.168.182.155][omm] make user omm’s dir(s): /data/mogdb/data
INFO[2023-07-25T16:50:45.956] [192.168.182.154][omm] change /data/mogdb/data owner to omm
INFO[2023-07-25T16:50:45.978] [192.168.182.154][omm] the database is initializing, please wait a few minutes
INFO[2023-07-25T16:50:46.034] [192.168.182.155][omm] change /data/mogdb/data owner to omm
INFO[2023-07-25T16:50:46.056] [192.168.182.155][omm] the database is initializing, please wait a few minutes
INFO[2023-07-25T16:51:01.370] [192.168.182.154][omm] config postgresql.conf
INFO[2023-07-25T16:51:01.426] [192.168.182.154][omm] config pg_hba.conf
INFO[2023-07-25T16:51:05.999] [192.168.182.155][omm] config postgresql.conf
INFO[2023-07-25T16:51:06.048] [192.168.182.155][omm] config pg_hba.conf
INFO[2023-07-25T16:51:06.073] setup db success
INFO[2023-07-25T16:51:06.073] generate certification files
INFO[2023-07-25T16:51:06.796] download certification files
INFO[2023-07-25T16:51:07.132] upload certification files to omm@192.168.182.155
INFO[2023-07-25T16:51:07.518] certification files setup success
INFO[2023-07-25T16:51:07.518] genetate ptkc …
INFO[2023-07-25T16:51:07.996] start build ssh trust …
INFO[2023-07-25T16:51:08.276] ssh trust build success
INFO[2023-07-25T16:51:08.277] start launch db …
INFO[2023-07-25T16:51:08.277] [192.168.182.154][omm] start db using gs_ctl …
INFO[2023-07-25T16:51:08.277] [192.168.182.155][omm] start db using gs_ctl …
INFO[2023-07-25T16:51:08.277] [192.168.182.155][omm] the database is starting, please wait a few minutes
INFO[2023-07-25T16:51:08.277] [192.168.182.154][omm] the database is starting, please wait a few minutes
INFO[2023-07-25T16:51:11.363] [192.168.182.155][omm] start db success
INFO[2023-07-25T16:51:12.703] [192.168.182.154][omm] start db success
INFO[2023-07-25T16:51:13.703] [192.168.182.154][omm] start alter db initial password …
INFO[2023-07-25T16:51:13.811] [192.168.182.154][omm] alter db password success
INFO[2023-07-25T16:51:13.811] build standbys …
INFO[2023-07-25T16:51:13.811] [192.168.182.155][omm] start build db …
INFO[2023-07-25T16:51:13.811] [192.168.182.155][omm] the database is building from upstream, please wait a few minutes
INFO[2023-07-25T16:51:22.600] [192.168.182.155][omm] build db success
INFO[2023-07-25T16:51:22.600] standbys build success
INFO[2023-07-25T16:51:22.600] launch db success
INFO[2023-07-25T16:51:22.600] clear temp dirs …
INFO[2023-07-25T16:51:22.662] clear temp dirs success
INFO[2023-07-25T16:51:22.663] time elapsed: 1m2s
cluste_name | host | user | port | status | message
---------------±----------------±-----±------±--------------±---------
cluster_enmo | 192.168.182.154 | omm | 26000 | start_success | success
| 192.168.182.155 | omm | 26000 | start_success | success
安装问题排查
明文密码安装报错:
[PTK-4036] password field [global.user_password] must be encrypted with ptk, raw password in config is not allowed
Please type “ptk encrypt -h” for more help
config中不能存放明文密码,必须要加密
目录权限问题
[PTK-50000] execute error: mkdir /data/mogdb/tool: [exited status: 1] Command: “bash -c “if test -d /data/mogdb/tool; then cd /data/mogdb/tool; else mkdir -p /data/mogdb/tool && chown omm:$(id -g -n omm) /data/mogdb/tool && chmod 755 /data/mogdb/tool && echo ok; fi””: mkdir: cannot create directory ‘/data/mogdb/tool’: Permission denied
表示没有创建omm用户没有 /data/mogdb/tool的权限,需要给 /data/mogdb 目录的权限
chown omm:omm /data/mogdb
注意安装报错后,重新安装时,需要将主备两个节点的 /data/mogdb/tool/ 目录清空,/data/mogdb/data/ 目录清空。否则会报错
tool 目录没清空的报错:
ERRO[2023-07-25T16:47:13.474] [192.168.182.155][omm] task execute failed
Host: 192.168.182.155
Task: extract MogDB-3.0.2-CentOS-x86_64.tar.gz to dir /data/mogdb/tool
Error: Process exited with status 2: tar: MogDB-3.0.2-CentOS-64bit-Libpq.tar.gz: Cannot open: File exists
tar: MogDB-3.0.2-CentOS-64bit-tools.tar.gz: Cannot open: File exists
tar: MogDB-3.0.2-CentOS-64bit.sha256: Cannot open: File exists
tar: MogDB-3.0.2-CentOS-64bit.tar.gz: Cannot open: File exists
tar: upgrade_sql.sha256: Cannot open: File exists
tar: upgrade_sql.tar.gz: Cannot open: File exists
tar: MogDB-3.0.2-CentOS-64bit-om.sha256: Cannot open: File exists
tar: MogDB-3.0.2-CentOS-64bit-om.tar.gz: Cannot open: File exists
tar: MogDB-3.0.2-CentOS-64bit-cm.sha256: Cannot open: File exists
tar: MogDB-3.0.2-CentOS-64bit-cm.tar.gz: Cannot open: File exists
tar: Exiting with failure status due to previous errors
data目录没清空的报错:
gs_initdb: directory “/data/mogdb/data” exists but is not empty
If you want to create a new database system, either remove or empty
the directory “/data/mogdb/data” or run gs_initdb
with an argument other than “/data/mogdb/data”.
python版本的问题报错:
类似这样的报错,提示组件是用python3.6编译的,所以需要卸载当前python3,然后重新安装指定版本的python3。
Traceback (most recent call last):
File “/data/mogdb/tool/script/gspylib/threads/SshTool.py”, line 62, in
import paramiko
File “/data/mogdb/tool/script/domain_utils/sql_handler/…/…/…/lib/paramiko/init.py”, line 22, in
from paramiko.transport import SecurityOptions, Transport
File “/data/mogdb/tool/script/domain_utils/sql_handler/…/…/…/lib/paramiko/transport.py”, line 89, in
from paramiko.dsskey import DSSKey
File “/data/mogdb/tool/script/domain_utils/sql_handler/…/…/…/lib/paramiko/dsskey.py”, line 37, in
from paramiko.pkey import PKey
File “/data/mogdb/tool/script/domain_utils/sql_handler/…/…/…/lib/paramiko/pkey.py”, line 31, in
import bcrypt
File “/data/mogdb/tool/script/domain_utils/sql_handler/…/…/…/lib/bcrypt/init.py”, line 25, in
from . import _bcrypt # type: ignore
ImportError: this module was compiled for Python 3.6
安装完成后确认数据库状态
root执行
ptk ls
]# ptk ls
cluster_name | id | addr | user | data_dir | db_version | create_time | comment
---------------±-----±----------------------±-----±-----------------±-----------------------------±--------------------±------- –
cluster_enmo | 6001 | 192.168.182.154:26000 | omm | /data/mogdb/data | MogDB 3.0.2 (build 9bc79be5) | 2023-07-25T16:50:34 |
| 6002 | 192.168.182.155:26000 | omm | /data/mogdb/data | | |
进入omm 用户
su - omm
gs_om -t status --detail
登录数据库
gsql -r
查看数据库进程
ps -ef|grep mogdb
确认数据库状态正常
安装完毕!**




