1、防火墙设置
1.1 关闭防火墙和selinux
1.1.1 关闭防火墙
systemctl status firewalld.service
systemctl stop firewalld.service
systemctl disable firewalld
1.1.2 关闭selinux
vim /etc/selinux/config
1.2 修改hosts文件,添加实际的IP地址和主机名
vi /etc/hosts
1.3 重启系统
reboot
2、设置网卡MTU值
echo "8192" > /sys/class/net/eth0/mtu
3、设置IPC参数
3.1 修改logind.conf文件
vi /etc/systemd/logind.conf
echo "RemoveIPC=no" >> /etc/systemd/logind.conf
3.2 修改systemd-logind文件
vi /usr/lib/systemd/system/systemd-logind.service
echo "RemoveIPC=no" >> /usr/lib/systemd/system/systemd-logind.service
systemctl daemon-reload
systemctl stop systemd-logind
systemctl start systemd-logind
4、设置内核参数
4.1 修改sysctl.conf
文件
vi /etc/sysctl.conf
fs.aio-max-nr=1048576
fs.file-max= 76724600
kernel.sem=4096 2097152000 4096 512000
kernel.shmall=26843545 #该参数用于控制共享内存页数,等于系统内存(建议设置为80%,单位:byte)/PAGE_SIZE(getconf PAGE_SIZE获取),该参数设置太小有可能导致数据库启动报错
kernel.shmmax=68719476736 #该参数表示最大单个共享内存段大小(建议为大于shared_buffer值), 等于系统内存*0.5,单位:byte
kernel.shmmni = 4096 #该参数系统范围内共享内存段的最大数量,默认值:4096
net.core.netdev_max_backlog = 10000
net.core.rmem_default = 262144
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 4194304
net.core.somaxconn = 4096
net.ipv4.tcp_fin_timeout = 5
vm.dirty_background_bytes = 409600000
vm.dirty_expire_centisecs = 3000
vm.dirty_ratio = 80
vm.dirty_writeback_centisecs = 100
vm.overcommit_memory = 0
vm.swappiness= 60
net.ipv4.ip_local_port_range = 40000 65535
fs.nr_open = 20000000
4.2 重载配置,使其生效。
sysctl -p
5、创建用户与目录
5.1 创建数据库用户
useradd -m vastbase
passwd vastbase
5.2 创建数据库coredump目录
mkdir -p /home/vastbase/data/vdb_coredump
chmod 770 /home/vastbase/data
chown vastbase.vastbase /home/vastbase/data
5.3 创建数据库数据目录
mkdir -p /home/vastbase/data/vastbase
chmod 700 /home/vastbase/data/vastbase
chown -R vastbase.vastbase /home/vastbase/data/vastbase
5.4 创建数据库软件目录
mkdir -p /home/vastbase/local/vastbase
chown -R vastbase.vastbase /home/vastbase
6、修改资源限制
6.1 修改limits.conf文件
vi /etc/security/limits.conf
6.2 执行以下操作
vastbase soft nproc unlimited
vastbase hard nproc unlimited
vastbase soft stack unlimited
vastbase hard stack unlimited
vastbase soft core unlimited
vastbase hard core unlimited
vastbase soft memlock unlimited
vastbase hard memlock unlimited
vastbase soft nofile 10240000
vastbase hard nofile 10240000
7、设置Core_Pattern
echo "/home/vastbase/data/vdb_coredump/core-%e-%p-%t" > /proc/sys/kernel/core_pattern
8、预装依赖
yum install -y readline python libicu cracklib libxslt tcl perl openldap pam systemd-libs bzip2 gettext libaio ncurses-libs
9、安装数据库
9.1 创建/soft/vb目录,上传安装包,解压,赋予权限
9.1.1 创建/soft/vb目录
mkdir -p /soft/vb
cd /soft/vb
9.1.2 上传安装包,解压
tar -xvf Vastbase-G100-installer-2.2_Build12(12214)-centos_7-x86_64-no_mot-20230320.tar.gz
9.1.3 授权
chown -R vastbase:vastbase /soft/vb/
chmod -R 775 /soft/vb/
9.2 切换到vastbase用户
su - vastbase
9.3 执行安装程序
cd /soft/vb/vastbase-installer/
./vastbase_installer
9.3.1 安装环境检查
9.3.2 系统配置信息
9.3.3 依赖检查(检查服务器是否已经安装需要的依赖包)
9.3.4、IPC参数检查(若检查通过,自动跳转下一步,否则根据提示进行设置即可)
9.3.5、安装数据库选项(选Y)
9.3.6、选择安装类型(选2)
-
典型安装:使用默认参数配置初始化数据库。
-
自定义安装:手动配置安装参数和功能。
9.3.7、设置超级管理员密码,需要输入密码,并再次输入密码确认(设置的密码最少包含8个字符,最多包含16个字符。密码由大小写字母加数字组成,例如:aA123**)
9.3.8、设置密钥(选1)
9.3.9、设置数据库安装路径(输入步骤2创建的数据库安装路径(/soft/vb),或者输入<回车>使用默认路径(默认路径:/home/vastbase/local/vastbase))
注:此处软件安装目录不能能数据库目录相同,目录相同时会自动创建子目录用于分开存放软件和数据。
9.3.10、参数配置
-
监听端口:默认5432
-
最大连接数:默认500
-
共享内存:默认为系统内存的1/4
9.3.11、磁盘IO调度算法检查
注:为避免影响数据库性能,生产环境建议采用deadline策略,若检查出非deadline策略,可按提示进行修改,再重新安装,也可以直接跳过继续安装。
9.3.12、安装概要查看,核对信息
9.3.13、安装数据库(提示安装完成)
注:如果您的数据库版本大于V2.2 Build 5(Patch No.75)(版本可通过安装包installer和Build后面的数字按顺序组合后得出版本号。
示例:安装包名称:Vastbase-G100-installer-2.2_Build_5.39-centos_7-x86_64-2021**.tar.gz,则版本号:V2.2 Build 5(Patch No.39),安装数据库过程会生成随机口令作为管理员初始口令,当您首次登录数据库执行sql命令时系统会强制要求您修改用户密码,修改方法请参见使用vsql连接数据库章节。显示信息如下:
10、初始化数据库运行环境
10.1 以vastbase用户登录操作系统
su vastbase
10.2 初始化数据库
source ~/.bashrc
10.3 将license路径写入postgresql.conf配置文件,以确定license文件的位置(license文件路径为绝对路径,且需要指定到文件名级别,可自定义路径,但需要确保vastbase用户对license文件目录有读权限)
echo "license_path='/soft/vb/vastbase_license' " >> $PGDATA/postgresql.conf
数据库安装后会自动生成临时许可文件,当没有license文件时,无需配置postgresql.conf,可直接启动数据库。临时许可文件有效期90天。