翰高4.5.7centos版本安装
1 环境准备
产品包:hgdb4.5.7-see-centos7-x86-64-20210804.rpm
环境:10.1.5.172 root/sh@88861158
操作系统安装完成后,执行常规操作:修改hosts、关闭防火墙、关闭senliunx
2 安装步骤
2.1 安装前准备
2.1.1 创建用户组、用户等
[root@gwqhighgo home]# groupadd -g 5866 highgo
[root@gwqhighgo home]# useradd -u 5866 -g highgo highgo
[root@gwqhighgo home]# passwd highgo sh@88861158
2.1.2 创建安装包上传路径
[root@gwqhighgo home]# mkdir -p /home/highgo/databases/4.5.7
[root@gwqhighgo home]# chmod -R 775 /home/highgo/databases/4.5.7
[root@gwqhighgo home]# chown -R highgo:highgo /home/highgo/databases/4.5.7
2.1.3 上传并解压
##解压(会在opt目录下生成安装目录)
[root@gwqhighgo 4.5.7]# rpm -ivh hgdb4.5.7-see-centos7-x86-64-20210804.rpm .
2.2 环境变量配置
翰高安装会生成一个highgodb.env的环境变量配置文件
##查看安装后目录的环境变量
[root@gwqhighgo 4.5.7]# cat /opt/HighGo4.5.7-see/etc/highgodb.env
export HG_BASE=/opt/HighGo4.5.7-see
export HGDB_HOME=/opt/HighGo4.5.7-see
export PGPORT=5866
export PGDATABASE=highgo
export PGDATA=$HGDB_HOME/data
export PATH=$HGDB_HOME/bin:$PATH
##编辑配置-可忽略
[root@gwqhighgo etc]# vim highgodb.env
[root@gwqhighgo etc]# source highgodb.env
[root@gwqhighgo etc]# echo $PGDATA
/opt/HighGo4.5.7-see/data
##复制环境变量信息到系统的环境变量
[root@gwqhighgo 4.5.7]# vim /etc/profile
[root@gwqhighgo 4.5.7]# source /etc/profile
2.3 初始化数据库
2.3.1 创建数据库文件夹
##创建data目录
[root@gwqhighgo HighGo4.5.7-see]# mkdir /opt/HighGo4.5.7-see/data
2.3.2 初始化数据库,执行命令
##初始化
[root@gwqhighgo HighGo4.5.7-see]# initdb
2.3.3 设置登录密码
sysdba.syssao.syssso此三个用户的密码。可以在数据库安装完成后进行密码修改
成功后
2.4 配置文件修改
2.4.1 远程登录配置修改
##配置远程登录
[root@gwqhighgo data]# cp pg_hba.conf pg_hba.conf_bak20241127
[root@gwqhighgo data]# vim pg_hba.confhost all all 0.0.0.0/0 sm3
2.4.2 关闭SSL
证书在etc目录下,但启动的时候会报未找到server.crt,两种方案:①把server.crt、server.key移动到data目录②把SSL关闭后启动正常
[root@gwqhighgo data]# cp postgresql.conf postgresql.conf_bak20241127
listen_addresses = '*'
ssl = off
3 数据库使用
3.1 数据库基础操作
##重启数据库
[root@gwqhighgo bin]# pg_ctl restart
##连接数据库
psql highgo sysdba
##切换用户
\c - syssso
##退出
\q
##查看数据库编码格式
select datname, pg_encoding_to_char(encoding) from pg_database;
##数据库状态查看
[root@gwqhighgo bin]# netstat -anp | grep 5866
tcp 0 0 0.0.0.0:5866 0.0.0.0:* LISTEN 91840/postgres
tcp6 0 0 :::5866 :::* LISTEN 91840/postgres
unix 2 [ ACC ] STREAM LISTENING 418522 91840/postgres /tmp/.s.PGSQL.5866
[root@gwqhighgo bin]# pg_ctl status
pg_ctl: 正在运行服务器进程(PID: 91840)
/opt/HighGo4.5.7-see/bin/postgres
[root@gwqhighgo bin]#
3.1.1 连接数据库
3.1.2 密码修改
3.1.3 卸载数据库
#卸载数据库
[root@gwqhighgo bin]# rpm -qa | grep hgdb
hgdb-see-4.5.7-1.el7.centos.x86_64
[root@gwqhighgo bin]# rpm -e hgdb-see-4.5.7-1.el7.centos.x86_64
3.2 数据库配置修改
注意以下配置均需重启生效,建议一个用户设置完成后,就重启一次数据库
3.2.1 性能配置
##性能配置-syssso用户修改
select set_secure_param('hg_macontrol','min');
select set_secure_param('hg_rowsecure','off');
select set_secure_param('hg_showlogininfo','off');
select set_secure_param('hg_clientnoinput','0');
select set_secure_param('hg_idcheck.pwdpolicy','low');
###密码复杂度设置--low表示密码不受限制,mediun表示密码长度至少为8位,必须包含字母和数字;high表示密码长度至少为8位,必须包含字母、数字、特殊字符;highest包含常用密码、保留字、关键字等所有密码规则。
3.2.2 标准参数配置
sysdba登录修改
alter system set listen_addresses = '*';
alter system set max_connections = 2000; ##最大连接数
alter system set work_mem='16MB';
alter system set shared_buffers = '5GB'; ##根据实际内存,修改为物理内存的的1/4
alter system set checkpoint_completion_target = 0.8;
alter system set log_destination = 'csvlog';
alter system set logging_collector = on; ##涉及到log的为日志的开关以及命名等内容
alter system set log_directory = 'hgdb_log';
alter system set log_filename = 'highgodb_%d.log';
alter system set log_rotation_age = '1d';
alter system set log_rotation_size = 0;
alter system set log_truncate_on_rotation = on;
alter system set log_statement = 'ddl';
alter system set log_connections=on;
alter system set log_disconnections=on;
alter system set checkpoint_timeout='30min';
alter system set maintenance_work_mem='1GB';
alter system set archive_mode = on;
alter system set archive_timeout = '30min';##此目录要创建,可以提前创建/data/highgo/hgdbbak/archive/
alter system set archive_command = 'cp %p /data/highgo/hgdbbak/archive/%f';
alter system set log_line_prefix = '%m [%p] %a %u %d %r %h';
3.2.3 修改密码及有效期
syssao登录数据库,修改用户密码,有效期
[root@gwqhighgo bin]# psql -d highgo -U syssao
select set_secure_param('hg_idcheck.pwdvaliduntil','0'); ##0代表永久有效
alter user current_user password 'sh@88861158' valid until 'infinity';
alter user current_user password 'sh@88861158';
sed -i 's/Hello@123/sh@88861158/g' ~/.pgpass
3.2.4 关闭审计功能
##syssso修改
select set_audit_param('hg_audit','off');
3.2.5 授权
上传 license并复制到 data目录修改名称为 hgdb.lic
检查 license
[root@gwqhighgo bin]# check_lic -D $PGDATA############## HIGHGODB LICENSE ###################
License状态:正常
License有效期:无限制
数据库版本:Highgo Database 4.5.7 正式版
###################################################