单实例 MogDB 安装
本文介绍 MogDB 极简版安装流程,极简版安装主要针对高校和个人测试环境,相对企业安装流程更简单快捷。该软件包中不含 OM 工具,采用脚本就可以实现一键式安装部署。
准备软硬件安装环境
- 软件环境: 访问 MogDB 下载页面下载对应平台的安装包。解压标准安装包后得到的 MogDB-2.1.0-CentOS-64bit.tar.bz2 即为极简安装包。



- 硬件环境: 个人开发者最低配置2核4G,推荐配置4核8G。
- 说明:
极简版为了适应小内存机器,在部署时将部分重要内存参数设置较低,如:“shared_buffers = 32MB”、“cstore_buffers = 512MB”。另外,极简版安装的数据库字符集将原先默认的SQL_ACSII字符集改为en_US.UTF-8,同时初始用户密码不做强制修改,即modify_initial_password = false。
运行环境配置
- 关闭防火墙,selinux
systemctl disable firewalld.service
systemctl stop firewalld.service
setenforce=0
sed -i '/^SELINUX=/c'SELINUX=disabled /etc/selinux/config
- 安装依赖包
yum install bzip2 net-tools libaio-devel flex bison ncurses-devel glibc-devel patch redhat-lsb-core readline-devel -y
- 说明:
bzip2:用在解压安装包命令 tar -jxvf 上,不安装会报以下错误:

net-tools:用于执行安装脚本 install.sh,脚本中需要 netstat 命令获取端口信息,判断指定的端口是否被占用,不安装会报以下错误:

- 设置时区
rm -fr /etc/localtime ln -s /usr/share/zoneinfo/Asia/Shanghai /etc/localtime ll /etc/localtime
- openEuler操作系统需要关闭RemoveIPC,CentOS操作系统默认为关闭,可以跳过该步骤。
# 修改/etc/systemd/logind.conf文件中的“RemoveIPC”值为“no”。
vim /etc/systemd/logind.conf
RemoveIPC=no
# 修改/usr/lib/systemd/system/systemd-logind.service文件中的“RemoveIPC”值为“no”。
vim /usr/lib/systemd/system/systemd-logind.service
RemoveIPC=no
# 重新加载配置参数。
systemctl daemon-reload
systemctl restart systemd-logind
# 检查修改是否生效。
loginctl show-session | grep RemoveIPC
systemctl show systemd-logind | grep RemoveIPC
安装 MogDB
- 创建相关目录、用户、组,并授权。
groupadd dbgrp -g 2000 useradd omm -g 2000 -u 2000 mkdir -p /mogdb chown -R omm:dbgrp /mogdb
- 解压极简版安装包到安装目录
[root@mogdb1 ~]# su - omm
[omm@mogdb1 ~]$ tar -jxvf /opt/MogDB-2.1.0-CentOS-64bit.tar.bz2 -C /mogdb/
[omm@mogdb1 ~]$ ll /mogdb/
total 16
drwxr-xr-x. 3 omm dbgrp 4096 Jan 7 19:03 bin
drwxr-xr-x. 3 omm dbgrp 22 Jan 7 19:03 etc
drwxr-xr-x. 3 omm dbgrp 24 Jan 7 19:03 include
drwxr-xr-x. 4 omm dbgrp 95 Jan 7 19:03 jre
drwxr-xr-x. 5 omm dbgrp 4096 Jan 7 19:03 lib
drwxr-xr-x. 5 omm dbgrp 53 Jan 7 19:03 share
drwxr-xr-x. 2 omm dbgrp 78 Jan 7 19:03 simpleInstall
-rw-r--r--. 1 omm dbgrp 28 Jan 7 19:03 version.cfg
- 进入解压后目录下的simpleInstall
[omm@mogdb1 ~]$ cd /mogdb/simpleInstall/
[omm@mogdb1 simpleInstall]$ ll
total 56
-rw-r--r--. 1 omm dbgrp 10883 Jan 7 19:03 finance.sql
-rw-r--r--. 1 omm dbgrp 12842 Jan 7 19:03 install.sh
-rw-r--r--. 1 omm dbgrp 5167 Jan 7 19:03 README.md
-rw-r--r--. 1 omm dbgrp 19926 Jan 7 19:03 school.sql
- 执行 install.sh 脚本安装 MogDB
[omm@mogdb1 simpleInstall]$ sh install.sh -w Secretpassword@123
-
说明:
-w: 初始化数据库密码(gs_initdb指定),安全需要必须设置。
-p: 指定的 MogDB 端口号,如不指定,默认为5432。
-h|-help 打印使用说明。
安装后,数据库的名称为sgnode。
安装后,数据库目录安装路径 /mogdb/data/single_node,其中 /mogdb 为解压包路径,data/single_node 为新创建的数据库节点目录。 -
执行安装脚本遇到过以下错误:

查看脚本可以发现脚本中会检查内核参数 kernel.sem ,如果不满足条件就会退出安装

手动配置一下吧,顺便也加点其他内核参数:
[root@mogdb1 ~]# cat >> /etc/sysctl.conf << EOF
#for mogdb
kernel.shmall = 965378 # expr `free |grep Mem|awk '{print $2 *1024}'` / `getconf PAGE_SIZE`
kernel.shmmax = 8182046720 # free |grep Mem|awk '{print $2 *1024}'
kernel.shmmni = 4096
kernel.sem = 50100 64128000 50100 1280
fs.file-max = 7672460
net.ipv4.ip_local_port_range = 9000 65000
net.core.rmem_default = 1048576
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 1048576
net.ipv4.tcp_tw_recycle = 1
net.ipv4.tcp_max_syn_backlog = 4096
net.core.netdev_max_backlog = 10000
vm.overcommit_memory = 0
fs.aio-max-nr = 1048576
net.ipv4.tcp_timestamps = 0
EOF
[root@mogdb1 ~]# sysctl -p


检查及使用数据库
- 配置PATH
[omm@mogdb1 ~]$ echo "export PATH=/mogdb/bin:\$PATH" >> /home/omm/.bash_profile
[omm@mogdb1 ~]$ source ~/.bash_profile
-bash: ulimit: open files: cannot modify limit: Operation not permitted
(默认设置fd可用大小超过系统设置,可以忽略该设置)
- 登录数据库
[omm@mogdb1 ~]$ gsql -d postgres -p 5432 -r
gsql ((MogDB 2.1.0 build 56189e20) compiled at 2022-01-07 18:47:53 commit 0 last mr )
Non-SSL connection (SSL connection is recommended when requiring high-security)
Type "help" for help.
openGauss=#

- 创建用户测试连接
# 修改参数 password_encryption_type=1
[omm@mogdb1 ~]$ gs_guc set -D $GAUSSHOME/data/single_node -c "password_encryption_type=1"
# 修改参数 listen_addresses = '*'
[omm@mogdb1 ~]$ gs_guc set -D $GAUSSHOME/data/single_node -c "listen_addresses = '*'"
# 设置客户端认证策略
[omm@mogdb1 ~]$ vi /mogdb/data/single_node/pg_hba.conf
host all all 192.168.0.0/24 md5
# 重启数据库
[omm@mogdb1 ~]$ gs_ctl restart -D $GAUSSHOME/data/single_node -Z single_node
# 创建用户,omm用户不能用于远程登录
[omm@mogdb1 ~]$ gsql -d postgres
openGauss=# CREATE USER mogdb WITH PASSWORD "tpcc@1234";
CREATE ROLE
openGauss=# alter user mogdb sysadmin;
ALTER ROLE
openGauss=# GRANT ALL ON schema public TO mogdb;
GRANT

最后修改时间:2022-03-11 09:38:12
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。




