• 【最佳实践】瀚高数据库企业版v6.0.2在Centos7.8安装过程


    (1)检查环境:

    卸载用不到的 pg 或其他 pg 系数据库。

    (2)开启防火墙端口:

    firewall-cmd --add-port=5866/tcp --permanent
    firewall-cmd --reload
    firewall-cmd --list-all
    
    • 1
    • 2
    • 3

    (3)安装数据库软件:

    首先校验安装包:

    md5sum -c hgdb6.0.2-enterprise-centos7-x86-64-20210222.rpm.md5
    
    • 1

    结果:hgdb6.0.2-enterprise-centos7-x86-64-20210222.rpm: OK

    这样的结果才可以继续安装,安装命令如下:

    rpm -ivh hgdb6.0.2-enterprise-centos7-x86-64-20210222.rpm
    
    • 1

    如果校验失败,请联系再次上传校验,或者联系瀚高工程师检查安装包。

    (4)创建相关目录:

    这里的/data目录一般是指大容量磁盘的挂载目录。如果目录名不是data,需要修改很多地方,详情咨询瀚高工程师,指导下进行修改。

    在/data目录下创建highgo目录,用于存储瀚高数据库数据等。在之下又创建了data和hgdbbak目录,分别用于数据库实例数据和备份数据。

    最后我们把数据的实际目录data在安装目录“/opt/HighGo6.0.2-cluster/”下做了一个软链接

    mkdir -p /data/highgo/data
    mkdir -p /data/highgo/hgdbbak/archive
    ln -sf /data/highgo/data /opt/HighGo6.0.2-cluster/data
    chown -R highgo.highgo /data/highgo
    chown -R highgo.highgo /opt/HighGo6.0.2-cluster/data
    chmod 0700 /data/highgo/data
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6

    注意:如果目录有所出入,请使用正确的路径修改一下。

    (5)配置环境变量:

    企业版 6.0.2 会自动创建用户 highgo 并配置环境变量,自动追加到文件“.bash_profile”最后一行,如:

    $ cat /home/highgo/.bash_profile

    .bash_profile


    export PATH
    source /opt/HighGo6.0.2-cluster/etc/highgodb.env

    如果没有,请手动追加。

    (6)初始化操作

    切换到操作系统用户 highgo 下执行以下命令进行初始化:

     initdb -A md5 -D $PGDATA -E 'UTF8' 
    
    • 1

    期间有两次输入密码的操作,要记牢密码。

    (7)密码文件:

    主要用于免密登录。

    创建文件 /home/highgo/.pgpass,输入以下内容:

    localhost:5866:highgo:highgo:Hello@123

    修改权限(必需)

    chmod 0600 /home/highgo/.pgpass
    
    • 1

    (8)配置客户端验证:

    允许所有IP的主机可以连接该数据库。

    修改文件 /opt/HighGo6.0.2-cluster/data/pg_hba.conf,添加 0.0.0.0/0 那一行,如:

    IPv4 local connections:
    
    host    all             all             127.0.0.1/32            md5
    
    host    all             all             0.0.0.0/0               md5
    
    • 1
    • 2
    • 3
    • 4
    • 5

    (9)启动实例:

    pg_ctl start
    
    • 1

    (10)标准参数:

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

    psql highgo highgo <<EOF
    alter system set listen_addresses = '*';
    alter system set port = 5866;
    alter system set max_connections = 3000;
    alter system set shared_buffers = '1GB';
    alter system set checkpoint_completion_target = 0.9;
    alter system set log_destination = 'stderr';
    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_truncate_on_rotation = on;
    alter system set log_rotation_age = '1d';
    alter system set log_rotation_size = 0;
    alter system set log_connections=off;
    alter system set log_disconnections=off;
    alter system set log_line_prefix = '%m [%p] %u %h %d ';
    alter system set log_statement = 'all';
    alter system set checkpoint_timeout='15min';
    alter system set maintenance_work_mem='2GB';
    alter system set min_wal_size ='800MB'; 
    alter system set max_wal_size ='3200MB';
    alter system set ssl=off;
    EOF
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23

    重启数据库生效:

    pg_ctl restart
    
    • 1

    (11)修改密码有效期为永久

    用户密码默认有效期是7天,如果不想改密码一直用,将有效期修改为永久即可,命令如下:

    psql highgo highgo <<EOF
    select set_secure_param('hg_idcheck.pwdvaliduntil','0');
    EOF
    
    • 1
    • 2
    • 3

    重启生效:

    pg_ctl restart
    
    • 1

    (12)自启动配置

    如果企业版是集群版本,需要按以下步骤操作才能自动启动,如:

    cd /opt/HighGo6.0.2-cluster/etc/
    cp hgdb-cluster-6.0.2.single hgdb-cluster-6.0.2.single.bak
    cp hgdb-cluster-6.0.2.cluster hgdb-cluster-6.0.2.bak
    ln -sf hgdb-cluster-6.0.2.single hgdb-cluster-6.0.2
    
    • 1
    • 2
    • 3
    • 4

    然后停掉数据库:

    [highgo@Node03 etc]$ pg_ctl stop
    
    • 1

    切换到 root 用户下,使用systemctl启动,如:

    [root@Node03 ~]# systemctl start hgdb-cluster-6.0.2.service 
    [root@Node03 ~]# systemctl status hgdb-cluster-6.0.2.service 
    ● hgdb-cluster-6.0.2.service - highgodb-6.0.2
       Loaded: loaded (/usr/lib/systemd/system/hgdb-cluster-6.0.2.service; enabled; vendor preset: disabled)
       Active: active (running) since Wed 2022-10-19 14:05:42 CST; 15s ago
      Process: 5014 ExecStart=/opt/HighGo6.0.2-cluster/etc/hgdb-cluster-6.0.2 start (code=exited, status=0/SUCCESS)
      Process: 5012 ExecStartPre=/usr/bin/sleep 30 (code=exited, status=0/SUCCESS)
     Main PID: 5023 (postgres)
       CGroup: /system.slice/hgdb-cluster-6.0.2.service
               ├─5023 /opt/HighGo6.0.2-cluster/bin/postgres -D /opt/HighGo6.0.2-cluster/data
               ├─5024 postgres: logger   
               ├─5026 postgres: checkpointer   
               ├─5027 postgres: background writer   
               ├─5028 postgres: walwriter   
               ├─5029 postgres: autovacuum launcher   
               ├─5030 postgres: stats collector   
               └─5031 postgres: logical replication launcher   
    
    Oct 19 14:05:11 Node03 systemd[1]: Starting highgodb-6.0.2...
    Oct 19 14:05:42 Node03 hgdb-cluster-6.0.2[5014]: Starting HighGo Database Server:
    Oct 19 14:05:42 Node03 systemd[1]: Started highgodb-6.0.2.
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
  • 相关阅读:
    NIO学习笔记
    使用WIX 进行商业智能OEM打包
    亲测一款超实用的在线制作产品册工具,一看就会
    在比特币上使用可检索性证明支付存储费用
    【二】2D测量 Metrology——get_metrology_object_result_contour()算子
    电脑系统重装后如何开启Win11实时辅助字幕
    Linux操作系统平台
    SPA项目之主页面--数据表格的增删改查
    NR 物理层 卷积
    KubeVela 插件指南:轻松扩展你的平台专属能力
  • 原文地址:https://blog.csdn.net/qiuchenjun/article/details/127407045