【最佳实践】瀚高数据库安全版v4.5.8安装

瀚高数据库安全版v4.5.8已发布,功能和安装方式都有所不同。下面先跟我一起安装上吧。

操作系统环境:Centos7.9,处理器:x86_64

(说明:以下每一节的命令操作,均可以复制粘贴直接执行)

1. 安装软件

将软件包上传到root用户的目录下,执行以下命令校验安装包完整性,然后执行安装:

md5sum -c hgdb-see-4.5.8-db43858.x86_64.rpm.md5
rpm -ivh hgdb-see-4.5.8-db43858.x86_64.rpm

2. 创建相关目录

创建额外的数据目录“/data/highgo/data”,在安装目录下做个软链接即可,命令如下:

mkdir -p /data/highgo/data
mkdir -p /data/highgo/hgdbbak/archive
ln -sf /data/highgo/data /opt/highgo/hgdb-see-4.5.8/data

3. 创建初始化用的过渡密码文件

便于快速无交互初始化,初始化完成后,就不再使用,可以删除也可以保留便于重新初始化。

echo "Hello@123456"  > /opt/highgo/hgdb-see-4.5.8/etc/5866
echo "Hello@123456" >> /opt/highgo/hgdb-see-4.5.8/etc/5866
echo "Hello@123456" >> /opt/highgo/hgdb-see-4.5.8/etc/5866

4. 配置环境变量

root用户下安装软件,需要手动配置环境变量,命令如下:

cat >> /root/.bash_profile <<EOF

################################ add by Highgo at `date +%Y-%m-%d_%H:%M:%S` for hgdb start ################################
export HG_BASE=/opt/highgo
export HGDB_HOME=/opt/highgo/hgdb-see-4.5.8
export PGPORT=5866
export PGDATABASE=highgo
export PATH=\$HGDB_HOME/bin:\$PATH
export PGDATA=\$HGDB_HOME/data
################################ add by Highgo at `date +%Y-%m-%d_%H:%M:%S` for hgdb end ##################################

EOF

source /root/.bash_profile

5. 初始化数据库

安全版v4.5支持国密算法sm3、sm4,如果要支持国密算法,可以按照以下命令执行:

initdb -A sm3 -e sm4 -c "echo 12345678" -D $PGDATA --pwfile=/opt/highgo/hgdb-see-4.5.8/etc/5866 -E 'UTF8'

如果不想使用国密算法,则执行以下命令来初始化:

initdb -A md5 -D $PGDATA --pwfile=/opt/highgo/hgdb-see-4.5.8/etc/5866 -E 'UTF8'

6. 创建ssl所需要的证书

初始化完数据库,最后面会有创建ssl证书的命令,如下:

hg_sslkeygen.sh /opt/highgo/hgdb-see-4.5.8/data

7. 创建数据库用户免密登录使用的密码文件

为了方便备份恢复或着psql命令,我们可以创建免密登录:

cat > /root/.pgpass <<EOF
# host:port:database:user:password
localhost:5866:*:sysdba:Hello@123456
localhost:5866:*:syssao:Hello@123456
localhost:5866:*:syssso:Hello@123456
EOF
# 修改权限(必需)
chmod 0600 /root/.pgpass

8. 配置客户端验证

其他主机客户端想连接到数据库服务,则需要配置客户端验证文件pg_hba.conf,命令如下:

# 允许所有IP的主机可以连接该数据库。
cat >> /opt/highgo/hgdb-see-4.5.8/data/pg_hba.conf <<EOF

################################ add by Highgo at `date +%Y-%m-%d_%H:%M:%S` for hgdb start ################################
# IPv4 local connections:
host    all             all             0.0.0.0/0               sm3
################################ add by Highgo at `date +%Y-%m-%d_%H:%M:%S` for hgdb end ##################################

EOF

注意:如果前面初始化用的是md5校验密码,需要将sm3改为md5,如果要生效,需要重启数据库服务,切记。

9. 启动数据库

接下来,我们就可以启动数据库了,命令如下:

pg_ctl start

10. 配置标准参数

# 注意:根据实际物理内存,修改shared_buffers为物理内存的1/4。

psql highgo sysdba <<EOF
alter system set listen_addresses = '*';
alter system set max_connections = 2000;
alter system set work_mem='16MB';
alter system set shared_buffers = '1GB';
alter system set checkpoint_completion_target = 0.8;
alter system set log_destination = 'csvlog';
alter system set logging_collector = on;
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';
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';
alter system set nls_length_semantics = 'char'; 
EOF

11. 修改密码默认有效期为永久

安装完,默认密码有效期是7天,三权用户的有效期也是7天,需要执行以下命令来改为永久:

psql highgo syssso <<EOF
select set_secure_param('hg_idcheck.pwdvaliduntil','0');
alter user current_user password 'Hello@123' valid until 'infinity';
\c - sysdba
alter user current_user password 'Hello@123';
\c - syssao
alter user current_user password 'Hello@123';
EOF

# 同时将免密文件中的旧密码也替换了
sed -i 's/Hello@123456/Hello@123/g' /root/.pgpass
pg_ctl restart

 12. 关闭一些影响性能的安全参数

以下参数影响数据库性能,执行命令如下:

psql highgo syssso <<EOF
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','high');
EOF

pg_ctl restart

13. 关闭审计功能

需要提前沟通好(等保分保需要开启审计):

psql highgo syssao <<EOF
select set_audit_param('hg_audit','off');
EOF

pg_ctl restart

14. 使用服务启动数据库

数据库安装过程会自动配置好数据库服务文件,单机环境可以直接使用,改用服务启动:

pg_ctl stop
systemctl start hgdb-see-4.5.8.service

15. 授权文件操作

安装完后,默认是一个月的试用期,如果需要延长,请联系瀚高商务人员申请更长的授权。安全版v4.5.8的授权文件操作与以往版本完全不一样,操作命令如下:

# 将授权文件 hgdb.lic 传到服务器上,执行以下命令修改权限。
chmod 0600 hgdb.lic
# 查看授权信息
hg_lic -c -F hgdb.lic
# 加载授权文件
hg_lic -l -F hgdb.lic 

16. 结束

到此,安装可以暂告一段落,可以满足适配测试。如果需要提供技术支持,请联系瀚高商务人员进行对接。电话:400-708-8006。

  • 3
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值