交互安装

交互安装以脚本实现数据库安装过程中的各种配置选择,如输入密码、选择路径等,简洁直观的辅助用户完成数据库的安装。

交互安装支持 实例化非实例化 两种模式:

  • 实例化:安装数据库,并进行初始化。
  • 非实例化:仅安装数据库所需的二进制文件,不进行数据库初始化。

本节以 实例化 为主要流程进行介绍,若选择 非实例化 安装,也可以根据本文介绍的内容单独初始化数据库。

说明

在进行数据库实例化安装时,数据库字符集编码会根据环境变量自动设置,参考顺序为:LC_ALL>LC_CTYPES>LANG,如以上环境变量都不存在,则默认为 en_US.utf8。

安装过程

步骤1:创建数据库安装用户和目录

  1. 以 root 用户登录操作系统。
    创建数据库安装用户(可自定义),设定初始密码(需要重复输入 2 次且完全一致)。自定义的操作系统用户名可用于安装数据库,文件属组和属主需要进行相应替换。
    useradd -m vexdb
    passwd vexdb
    

    建议安装数据库的操作系统用户名中包含的字母均使用小写。否则,在执行 SQL 时,指定含有大写字母的操作系统同名数据库初始化用户时,需要被双引号包裹才能被识别。
  2. (可选)创建数据库 coredump 目录。
    mkdir -p /home/vexdb/data/db_coredump
    chmod 770 /home/vexdb/data
    chown vexdb:vexdb /home/vexdb/data
    
  3. (可选)创建数据库数据目录(可自定义)。如果不执行,则安装数据库时将采用默认安装目录。
    mkdir -p /home/vexdb/data/vexdb
    chmod 700 /home/vexdb/data/vexdb
    chown -R vexdb:vexdb /home/vexdb/data/vexdb
    
  4. (可选)创建数据库软件目录(可自定义)。如果不执行,则安装数据库时将采用默认安装目录。
    mkdir -p /home/vexdb/local/vexdb
    chown -R vexdb:vexdb /home/vexdb
    

步骤2:修改资源限制

以 root 用户登录操作系统。

执行 vi /etc/security/limits.conf,在文件末尾添加如下内容,保存退出。

vexdb soft nproc unlimited
vexdb hard nproc unlimited
vexdb soft stack unlimited
vexdb hard stack unlimited
vexdb soft core unlimited
vexdb hard core unlimited
vexdb soft memlock unlimited
vexdb hard memlock unlimited
vexdb soft nofile 1024000
vexdb hard nofile 1024000

步骤3:解压安装包

以 root 用户登录操作系统。

创建目录(/soft/vb),解压安装包,以root用户赋予数据库安装用户 vexdb 操作的权限。

安装包以(本安装以 VexDB-Developer-Edition-3.0_Build0_commitid-Linux-x86_64-no_mot-datetime.tar.gz 为例,实际安装以获取安装包名称为准)和 license 文件上传到/soft/vb(路径可自定义,本安装步骤以 /soft/vb 为例)。

mkdir -p /soft/vb
cd /soft/vb
tar -xvf VexDB-Developer-Edition-3.0_Build0_commitid-Linux-x86_64-no_mot-datetime.tar.gz
chown -R vexdb:vexdb /soft/vb/
chmod -R 775 /soft/vb/
说明
  • root 用户对 soft 目录的权限至少设置为 755,否则切换到其他用户后,无法访问 soft 目录。
  • 二进制安装程序与安装包需放于同一路径。

步骤4:运行安装程序

执行安装脚本

  1. 切换到数据库安装用户 vexdb。
    安装程序不能由操作系统超级用户执行。
    su - vexdb
    
  2. 运行安装程序。
    cd /soft/vb/vexdb-installer/
    ./vexdb_installer
    

交互步骤

根据回显信息进行交互,直至安装程序完成。

  1. 安装环境检查。
  2. 系统配置信息。
  3. 依赖检查(检查服务器是否已经安装需要的依赖包)。
  4. IPC 参数检查。
    若检查通过,自动跳转下一步,否则根据提示进行设置即可。
  5. 选择是否进行实例化安装。
    若进行实例化安装则选 Y,若进行非实例化安装则选 N
  6. 选择安装类型(选 2 或按 Enter)。
    • 典型安装:使用默认参数配置初始化数据库。
    • 自定义安装:手动配置安装参数和功能。
  7. (非实例化安装无此步骤)设置超级管理员密码,需要输入密码,并再次输入密码确认(设置的密码最少包含 8 个字符,最多包含 16 个字符。密码由大小写字母加数字组成,例如:aA123***)。
  8. (非实例化安装无此步骤)设置密钥(选 1 或按 Enter)。
  9. 设置数据库安装路径(输入步骤2创建的数据库安装路径(/soft/vb),或者输入<回车>使用默认路径(默认路径:/home/vexdb/local/vexdb))。
    此处软件安装目录不能与数据库目录相同,目录相同时会自动创建子目录用于分开存放软件和数据。
  10. (非实例化安装无此步骤)磁盘 IO 调度算法检查。
    为避免影响数据库性能,生产环境建议采用 deadline 策略,若检查出非 deadline 策略,可按提示进行修改,再重新安装,也可以直接跳过继续安装。
  11. 初始化阶段。
  12. 安装数据库过程会生成随机口令作为管理员初始口令,显示信息如下(非实例化安装无此步骤):
  13. 选择是否添加许可。
    说明

    VexDB 开发版提供了时长为 1 年的临时许可。即使不添加正式许可,也可以在安装完成后免费试用 VexDB。
    临时许可即将过期前,在数据库管理员用户和数据库初始化用户使用 vsql 连接数据库时,VexDB 会提示许可期限的有关信息。提醒天数的阈值是通过参数 vb_license_expired_notify_time 控制的。默认值为 90 天。设置为 0 表示关闭提醒。

  14. 安装完成。

步骤5:初始化环境变量

  1. 以 vexdb 用户登录操作系统。
  2. 执行如下命令初始化数据库环境变量。
    source ~/.bashrc
    

步骤6:初始化数据库实例(可选)

运行安装程序后,在交互时若选择了非实例化安装,对于用户需要创建数据库实例的情况,应通过 vb_initdb 初始化数据库。

  1. 以 vexdb 用户登录操作系统。
  2. 使用 vb_initdb 工具初始化数据库。
    vb_initdb  -D /home/vexdb/data/vexdb --nodename vexdb -w Vbase@123
    

    上述语句的参数说明如下:
    参数名 说明
    -D 指定数据目录,后跟的 /home/vexdb/data/vexdb 为数据库目录,可自定义。注意:需存在且在 vexdb 用户下,需要 0700 权限。
    --nodename 指定初始化的节点名称。
    -w 指定管理员用户的密码。

步骤7:设置 Core_Pattern

为记录数据库异常停机信息,执行如下命令设定 Core_pattern 路径为 vexdb 组用户可写的路径:

  1. 以 root 用户登录操作系统。
  2. 执行如下操作完成设置。
    echo "/omTmp/corefile/core-%e-%p-%t" > /proc/sys/kernel/core_pattern
    
    • 本语句中/omTmp/corefile/为系统自动创建的默认coredump目录。
    • 用户可手动创建的 coredump 目录(此目录应提前创建,且 vexdb 组用户可写),此时需对应修改 echo 语句中路径:echo "自定义目录/core-%e-%p-%t" > /proc/sys/kernel/core_pattern。

卸载程序

卸载 VexDB 的过程包含卸载 VexDB 和对 VexDB 服务器的环境清理。

前提条件: 关闭数据库。

vb_ctl stop

卸载VexDB

步骤1 以数据库安装用户vexdb登录数据库节点。

su - vexdb

步骤2 进入安装程序所在目录。

cd /soft/vb/vexdb-installer/

步骤3 执行卸载命令。

./vexdb_installer --uninstall

卸载完成后,已安装的 VexDB 程序(即数据库安装目录 $GAUSSHOME 对应目录)和 VexDB 相关环境变量将被删除,仅保留数据库实例。

需要帮助?

扫码添加企业微信
获得专业技术支持

企业微信二维码
🎯 快速响应💡 专业解答