一、单机安装部署
(一)安装之前的情况检查和预备(本次安装以官网最新版本3.5.1为例)
1.检查情况和操纵系统和安装包是否匹配
gbase8s数据库一样平常以是以CPU架构为紧张区分点,紧张分为x86架构和arm架构两种:
- X86:Intel(centos)、兆芯和海光
- arm:鲲鹏和飞腾
- --检查操作系统
- --本次操作系统是x86的,使用uname -a检查,结果后面会有x86的关键词
- uname -a
- Linux VM-8-4-centos 3.10.0-1160.92.1.el7.x86_64 #1 SMP Tue Jun 20 11:48:01 UTC 2023 x86_64 x86_64 x86_64 GNU/Linux
- --检查安装包,安装包后缀,一般会有x86,arm等标识,需要和操作系统相互对应
- [root@node01 install]# ls -l GBase8sV8.8_TL_3.5.1_x86_64.tar
- -rwxr-xr-x. 1 gbasedbt gbasedbt 346388480 3月 21 15:32 GBase8sV8.8_TL_3.5.1_x86_64.tar
复制代码
2.检查操纵系统安装数据库的根本两个软件(unzip和java)
检查:可以通过tab键补全的方式检查是否有相应的软件,如果双击没有反应,表现没有插件,需要安装。
- unzip双击tab键,如果存在则会出现unzip的命令;
- java双击,如果存在则会出现java、javac等指令
- --本次为例,没有java,所以需要安装,本次是压缩包的方式直接解压使用。
- --压缩包已经提供,将压缩包放在指定位置,然后root下配置环境变量即可。
- --假设放在位置如下
- [root@VM-8-4-centos gbase] ls -l |grep jdk
- drwxrwxr-x 9 gbasedbt gbasedbt 4096 Nov 3 17:15 jdk
- [root@VM-8-4-centos gbase] pwd
- /home/gbasedbt/gbase
- #使用root用户配置环境变量,在/etc/profile文件下追加以下内容
- cat /etc/profile
- export JAVA_HOME=/home/gbasedbt/gbase/jdk
- export PATH=$JAVA_HOME/bin:$PATH
- export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
- #然后生效环境变量
- source /etc/profile
- #java双击tab,检查是否java环境存在
复制代码 3.检查数据库资源
数据库安装最小的资源需求:
- CPU资源数量:2
- 内存数量:4G
- 硬盘资源:10G
- --检查CPU资源
- [root@iZ2ze2nmdlhki0ezcrioayZ ~] lscpu
- Architecture: x86_64
- CPU op-mode(s): 32-bit, 64-bit
- Byte Order: Little Endian
- CPU(s): 2
- --检查内存资源
- [root@iZ2ze2nmdlhki0ezcrioayZ ~] free -m
- total used free shared buff/cache available
- Mem: 1723 228 179 618 1315 728
- Swap: 0 0 0
- --检查硬盘资源
- [root@iZ2ze2nmdlhki0ezcrioayZ ~] df -h
复制代码 4.预备用户
gbase8s数据库和其他国产数据库一样需要自己独有的操纵系统用户gbasedbt,所以安装前需要创建数据库用户
- useradd -U -m gbasedbt
- --明文配置密码
- echo '密码'|passwd --stdin gbasedbt
- --上述执行失败,可以passwd交互配置
- passwd gbasedbt
复制代码 5.确定安装路径
gbase8s安装路径下不允许文件夹有777权限,否则安装的是否会出现security关键词安全问题出现
- --假设此次需要安装的路径为/opt/GBASE/gbase,可以先创建前两级目录,第三级在安装的时候自己会创建
- [root@node01 install]# mkdir /opt/GBASE
- [root@node01 install]# chown -R gbasedbt:gbasedbt /opt/GBASE
- [root@node01 install]# chmod 755 /opt/GBASE
- --检查/opt和/opt/GBASE两个文件夹的权限,不允许777
- [root@node01 install]# ls -l /|grep opt
- drwxr-xr-x. 4 root root 29 3月 29 14:54 opt
- [root@node01 install]# ls -l /opt/
- 总用量 0
- drwxr-xr-x. 2 gbasedbt gbasedbt 6 3月 29 14:54 GBASE
复制代码 (二)脚本安装数据库
1.预备好安装包和脚本
本脚本是公司大佬写的,如果没有,软件安装乐成后,在/opt/GBASE/gbase/etc/GBaseInit_gbasedbt.sh下会有一个自带的脚本,有些差别但是大体上是一致的
- [root@node01 install]# ls -l
- -rwxr-xr-x. 1 gbasedbt gbasedbt 346388480 3月 21 15:32 /home/gbasedbt/install/GBase8sV8.8_TL_3.5.1_x86_64.tar
- -rwxr-xr-x. 1 gbasedbt gbasedbt 36030 3月 21 15:35 /home/gbasedbt/install/GBaseInit_gbasedbt_V1.17.sh
复制代码 2.解压压缩包
解压完压缩包,会出现以下文件,此中ids_install是安装程序
- [root@node01 install]# tar -xvf GBase8sV8.8_TL_3.5.1_x86_64.tar
- ids_install
- onsecurity
- doc/
- doc/ids_machine_notes_12.10.txt
- doc/ids_unix_relnotes_12.10.html
- ids.properties
- .gbase.properties
复制代码 3.安装gbase数据库软件
- 安装软件时必须使用root用户,否则会出现问题!!!!!!
- 执行安装
- --执行安装,前面为协议,一直回车然后输入y即可
- [root@node01 install]# ./ids_install
- Preparing to install...
- Extracting the JRE from the installer archive...
- Unpacking the JRE...
- Extracting the installation resources from the installer archive...
- Configuring the installer for this system's environment...
- Launching installer...
- ===============================================================================
- GBase Software Bundle (created with InstallAnywhere)
- -------------------------------------------------------------------------------
- Preparing CONSOLE Mode Installation...
- ===============================================================================
- Getting Started
- ---------------
- This application will guide you through the installation of GBase Software
- Bundle.
- Copyright General Data Corporation 2014, 2024. All rights reserved.
- 1. Release Notes
- The Release Notes can be found in
- /home/gbasedbt/install/doc/ids_unix_relnotes_12.10.html.
- 2. Launch Information Center
- Access the GBase Information Center at http://www.gbase.cn.
- To Begin Installation, respond to each prompt to proceed to the next step in
- the installation.
- If you want to change something on a previous step, type 'back'.
- You may cancel this installation at any time by typing 'quit'.
- PRESS <ENTER> TO CONTINUE:
- ……
- ……
- All trademarks and registered trademarks mentioned herein are the property of
- their respective owners.
- DO YOU ACCEPT THE TERMS OF THIS LICENSE AGREEMENT? (Y/N): Y
复制代码
- --冒号后面为输入的路径,按照自己设定的输入,此次演示为演示路径,并输入后输入Y确定路径
- ===============================================================================
- Installation Location
- ---------------------
- Choose location for software installation.
- Default Install Folder: /opt/GBASE/gbase
- ENTER AN ABSOLUTE PATH, OR PRESS <ENTER> TO ACCEPT THE DEFAULT
- : /opt/GBASE/gbase
- INSTALL FOLDER IS: /opt/GBASE/gbase
- IS THIS CORRECT? (Y/N): Y
复制代码
- --接着为安装的插件选择,默认选择典型安装即可,1
- ===============================================================================
- Installation or Distribution
- ----------------------------
- Select the installation type.
- Typical: Install the database server with all features and a database server
- that
- is configured with default values. Includes:
- ** Client Software Development Kit (CSDK)
- ** Java Database Connectivity (JDBC)
- Minimum disk space required: 700-800MB
- Custom: Install the database server with specific features and software that
- you need.
- Optionally install a configured database server instance.
- Minimum disk space required: 75 MB (without a server instance)
- ->1- Typical installation
- 2- Custom installation
- 3- Extract the product files (-DLEGACY option)
- 4- Create a RPM package for redistribution
- ENTER THE NUMBER FOR YOUR CHOICE, OR PRESS <ENTER> TO ACCEPT THE DEFAULT:: 1
复制代码
- 数据库实例的初始化:gbase8s数据库的软件和数据库数据存放的文件是分开的,所以可以先安装软件,后续举行初始化实例,而且本安装程序初始化的实例大概不符合需求,所以正常情况下是后续自定义初始化实例
- --选择2,不初始化实例,因为默认初始化的实例可能不符合我们的需求,后期进行定制初始化
- ===============================================================================
- Server Instance Creation
- ------------------------
- Create a server instance?
- ->1- Yes - create an instance
- 2- No - do not create an instance
- ENTER THE NUMBER FOR YOUR CHOICE, OR PRESS <ENTER> TO ACCEPT THE DEFAULT:: 2
复制代码
4.初始化数据库实例
- 初始化实例必须使用gbasedbt用户举行初始化!!!!
- 本次为脚本举行初始化,所以执行脚本安装即可,脚本用户和属组属于gbasedbt,且有执行权限
- [root@VM-8-4-centos ~] mv /root/GBaseInit_gbasedbt_V1.17.sh /home/gbasedbt/install/
- [root@VM-8-4-centos ~] chown -R gbasedbt:gbasedbt /home/gbasedbt/install/GBaseInit_gbasedbt_V1.17.sh
- [root@VM-8-4-centos ~] chmod +x /home/gbasedbt/install/GBaseInit_gbasedbt_V1.17.sh
- [root@VM-8-4-centos ~] ls -l /home/gbasedbt/install/GBaseInit_gbasedbt_V1.17.sh
- -rwxr-xr-x 1 gbasedbt gbasedbt 36030 Jan 9 21:06 /home/gbasedbt/install/GBaseInit_gbasedbt_V1.17.sh
复制代码
- [root@VM-8-4-centos ~] su - gbasedbt
- Last login: Tue Jan 9 21:05:45 CST 2024 on pts/0
- [gbasedbt@VM-8-4-centos ~]$ cd install
- [gbasedbt@VM-8-4-centos install]$./GBaseInit_gbasedbt_V1.17.sh
复制代码
- 执行过程-确定实例名称,实例名称在后续的连接和调试需要使用,请记住
- --第一步选择实例名称,一台服务器可以安装部署多个数据库服务,此名称用于识别各个数据库服务
- --本次命名为gbase_cp
- Initializing Program...OK
- ENTER THE INSTANCE INFORMATION or PRESS <ENTER> TO ACCEPT THE DEFAULT.
- ENTER GBASE INSTANCE NAME (GBASEDBTSERVER) [Default:gbaseserver]: node1
复制代码
- --此位置是上述内容安装数据库软件时指定的位置,一般会列出,如果不正确需要手动输入,检查正确回车即可
- GBASE INSTALL FOLDER LIST:
- 1) /home/gbasedbt/gbase
- CHOOSE GBASE INSTALL FOLDER(GBASEDBTDIR) [Default:/home/gbasedbt/gbase]: /opt/GBASE/gbase
- --选择服务器的IP地址,一般选择自己服务器的ip地址,如果没有网卡,可以输入127.0.0.1或者0.0.0.0,如果默认可以,选择回车
- CHOOSE SERVICE IP ADDRESS FROM THE LIST:
- 1) 192.168.6.6
- 2) 127.0.0.1
- 3) 192.168.122.1
- ENTER THE NUMBER FOR YOUR CHOICE [Default:192.168.6.6]: 1
- --选择自己数据库使用的端口号,默认为9088,如果和其他软件冲突,可以选择其他端口,本次设置为默认,直接回车
- SPECIFY THE PORT NUMBER FOR GBASE [Default:9088]:
复制代码
- --后续初始化数据库主要是初始化各个数据空间的大小,此次为自定义和典型,一般选择自定义
- INITIALIZE TYPE:
- 1) TYPICAL -- Initialize the instance with all features configured with default values.
- 2) CUSTOM -- Initialize the instance with specific features that you need.
- ENTER THE NUMBER FOR YOUR CHOICE [Default:1]: 2
- --选择数据库的字符集编码,按照所需进行选择,一般为UTF8,因为UTF8支持中文
- GBASE CHARACTER SET LIST:
- GBASE CHARACTER SET LIST:
- 1) en_US.8859-1
- 2) zh_CN.GB18030-2000
- 3) zh_CN.utf8
- ENTER THE NUMBER FOR YOUR CHOICE [Default:1]:
- --选择数据库实例位置,此位置为数据存放目录,存放前请检查大盘的位置
- --默认位置为数据库软件安装路径下,如有特殊情况请选择指定位置,注意指定位置前一层的权限
- --本次为默认
- ENTER THE DATA SPACE PATH [Default:/opt/GBASE/gbase/node1_dbs]:
复制代码
- 执行过程-数据库化初始空间的大小,本次为演练,大小任意设置
- --下面的大小都是MB为单位
- --初始化逻辑日志空间
- --逻辑日志大小设置主要考虑数据库一天的日志记录大小,最起码满足一天的日志记录
- --如果无法计算,可以按照下列大小进行添加,后续进行更改
- ENTER THE LOGICAL LOG DBSPACE SIZE(MB) [Default:4400]: 300
- --初始化物理日志大小,物理日志可以设置为总数据空间的5%左右
- ENTER THE PHYSICAL LOG DBSPACE SIZE(MB) [Default:4400]: 300
- --初始化数据存放的数据空间,按照自己的数据量等情况可以进行设置
- ENTER THE DEFAULT DATA DBSPACE SIZE(MB) [Default:910]: 300
- --初始化智能大对象的数据空间
- ENTER THE SMART LOB DBSPACE SIZE(MB) [Default:910]: 300
- --初始化临时数据存放的数据空间大小
- ENTER THE TEMPORARY DBSPACE SIZE(MB) [Default:910]: 300
- --上述配置完成之后,进行二次确认,选择Y是确认上述配置
- ENTER "Y" TO START DATABASE ADVANCED SETTINGS, OR ENTER "N" TO ACCEPT DEFAULT VALUES: [Default:N]:Y
- --确定存放数据的数据空间初始数量,如果存在分片表或者可能需要不同数据空间的需求可以设置,大小按照上述配置,如果配置3,则会初始化3个上述大小的数据空间
- ENTER THE NUMBER OF DATA DBSPACES [Default:1]:
- --确定存放临时数据的数据空间数量,如果配置3,则会初始化3个上述大小的数据空间
- ENTER THE NUMBER OF TEMP DBSPACES [Default:1]:
- --二次确定是否接受上述配置,Y为接受
- Enter "Y" TO ENABLE ENVIRONMENT GL_USEGLU, OR ENTER "N" TO DISABLE: [Default:N]:Y
- --列出上述配置的全部内容,再次检查确定,正确选择Y
- INSTANCE SUMMARY:
- Instance name: node1
- GBase install directory: /opt/GBASE/gbase
- IP address & port: 192.168.6.6:9088
- Character set: zh_CN.utf8
- Logical log space size: 300 MB
- Physical log space size: 300 MB
- Data space size: 1000 MB
- Smart LOB space size: 300 MB
- Temp DBSpace size: 300 MB
- Data path: /opt/GBASE/gbase/node1_dbs
- Data path free size: 43578 MB
- The number of data DBSpace: 1
- The number of temp DBSpace: 1
- Environment GL_USEGLU: 1
- Enter "Y" to Start database initializing, or Enter "N" to Edit Again:Y
- --配置文件参数,下面会弹出一个选项,是否需要配置参数文件,此处选择Y配置,选择Y回车会进入到一个文件内
- --文件内主要是改动一个参数,ROOTSIZE 204800,此文件大小一般设置3~5G,即改为 ROOTSIZE 3072000,也可以选择n不设置
- --进入到文件内输入/ROOTSIZE,进行查找参数
- --改动结束保存即可,后续将会自动初始化
- Touching Chunks...OK
- Create sqlhosts File: /opt/GBASE/gbase/etc/sqlhosts.gbase_cp ...OK
- Setting Parameters in /opt/GBASE/gbase/etc/onconfig.gbase_cp :
- ROOTPATH.ROOTSIZE.DBSERVERNAME.FULL_DISK_INIT.SBSPACENAME.SYSSBSPACENAME.IFX_FOLDVIEW.DBSPACETEMP.LOGFILES.MULTIPROCESSOR.VPCLASS.NETTYPE.NUMFDSERVERS.CLEANERS.DEF_TABLE_LOCKMODE.DIRECT_IO.LOCKS.TAPEDEV.LTAPEDEV.CKPTINTVL.DS_MAX_QUERIES.DS_TOTAL_MEMORY.DS_NONPDQ_QUERY_MEM.PHYSBUFF.LOGBUFF.AUTO_TUNE.MSGPATH.SERVERNUM.ALLOW_NEWLINE.TEMPTAB_NOLOG.DUMPSHMEM.USEOSTIME.STACKSIZE.ON_RECVRY_THREADS.OFF_RECVRY_THREADS.SHMVIRTSIZE.SHMADD.GBASEDBTCONTIME.BUFFERPOOL2K.BUFFERPOOL16K.AUTO_CKPTS.AUTO_REPREPARE.ENABLE_NULL_STRING.MSG_DATE...OK
- YOU CAN CUSTOMIZE DATABASE CONFIG FILE NOW,
- --询问是否初始化以上空间,选择Y是
- ENTER "Y" TO EDIT ONCONFIG FILE BY vi , OR ENTER "N" TO USE DEFAULT VALUES: [Default:N]:Y
复制代码
- --一般初始化完毕后,会回车退车,会弹出Killed的结尾,中文为杀死进程,一般如此为安装成功
- Database restarting.......Your evaluation license will expire on 2025-03-29 00:00:00
- OK
- Creating database: gbasedb...OK
- Now you can use this URL to connect to gbasedb:
- jdbc:gbasedbt-sqli://192.168.6.6:9088/gbasedb:GBASEDBTSERVER=node1;DB_LOCALE=zh_CN.utf8;CLIENT_LOCALE=zh_CN.utf8;NEWCODESET=UTF8,utf8,57372;GL_USEGLU=1
- Version:
- Your evaluation license will expire on 2025-03-29 00:00:00
- On-Line -- Up 00:00:15 -- 1650580 Kbytes
- Build Number: 3.5.1_3_6a4e30
- GBase Initializing Finished!
- Initialize log file : ./InitGBaseDB_202403291514.log
- Press <ENTER> to Exit and Logout...
- 已杀死
复制代码
- --以下命令会查看当前服务器上的所有实例的状态
- [root@node01 install]# su - gbasedbt
- 上一次登录:五 3月 29 15:14:32 CST 2024pts/0 上
- [gbasedbt@node01 ~]$ onstat -g dis
- Your evaluation license will expire on 2025-03-29 00:00:00
- On-Line -- Up 00:01:20 -- 1650580 Kbytes
- There are 1 servers found
- Server : node1
- Server Number : 196
- Server Type : IDS
- Server Status : Up
- Server Version: GBase Database Server Version 12.10.FC4G1TL
- Shared Memory : 0x44000000
- GBASEDBTDIR : /opt/GBASE/gbase
- ONCONFIG : /opt/GBASE/gbase/etc/onconfig.node1
- SQLHOSTS : /opt/GBASE/gbase/etc/sqlhosts.node1
- Host : node01
- --关于环境变量
- --由于刚安装完成,数据库关于时间存储的格式为:2024年3月28日。这种中文格式,如果改为常见的2024-03-28,需要更改环境变量文件
- --以上面初始化的实例为例,环境变量文件为/home/gbasedbt/profile.gbase_cp,即profile后面以实例名称结尾,往里面加入两个变量并生效
- echo 'export GL_DATE="%Y-%m-%d"' >> /home/gbasedbt/profile.gbase_cp
- echo 'export GL_DATETIME="%Y-%m-%d %H:%M:%S"' >> /home/gbasedbt/profile.gbase_cp
复制代码 (三)手动初始化的方式安装数据库
1.安装软件(手动和脚本的差别只有初始化实例的区别,安装软件一样的)
- [root@iZ2ze2nmdlhki0ezcrioayZ install] tar -xvf GBase8sV8.8_TL_3.5.1_3_6a4e30_RHEL6_x86_64.tar
- ids_install
- onsecurity
- doc/
- doc/ids_machine_notes_12.10.txt
- doc/ids_unix_relnotes_12.10.html
- ids.properties
- .gbase.properties
复制代码
- 举行安装软件:安装软件时必须使用root用户,否则会出现问题!!!!!!
- --执行安装,前面为协议,一直回车然后输入y即可
- [root@VM-8-4-centos install] ./ids_install
- Preparing to install...
- Extracting the JRE from the installer archive...
- Unpacking the JRE...
- Extracting the installation resources from the installer archive...
- Configuring the installer for this system's environment...
- Launching installer...
复制代码
- --冒号后面为输入的路径,按照自己设定的输入,此次演示为演示路径
- Installation Location
- ---------------------
- Choose location for software installation.
- Default Install Folder: /opt/GBASE/gbase
- ENTER AN ABSOLUTE PATH, OR PRESS <ENTER> TO ACCEPT THE DEFAULT
- :/opt/GBASE/gbase
复制代码
- --接着为安装的插件选择,默认选择典型安装即可,1
- Custom: Install the database server with specific features and software that
- you need.
- Optionally install a configured database server instance.
- Minimum disk space required: 75 MB (without a server instance)
- ->1- Typical installation
- 2- Custom installation
- 3- Extract the product files (-DLEGACY option)
- ENTER THE NUMBER FOR YOUR CHOICE, OR PRESS <ENTER> TO ACCEPT THE DEFAULT::1
复制代码
- 数据库实例的初始化:gbase8s数据库的软件和数据库数据存放的文件是分开的,所以可以先安装软件,后续举行初始化实例,而且本安装程序初始化的实例大概不符合需求,所以正常情况下是后续自定义初始化实例
- --选择2,不初始化实例,因为默认初始化的实例可能不符合我们的需求,后期进行定制初始化
- ===============================================================================
- Server Instance Creation
- ------------------------
- Create a server instance?
- ->1- Yes - create an instance
- 2- No - do not create an instance
- ENTER THE NUMBER FOR YOUR CHOICE, OR PRESS <ENTER> TO ACCEPT THE DEFAULT::2
复制代码
2.预备初始化实例的文件
- 预备情况变量:目前以安装路径/opt/GBASE/gbase为例,可以在/home/gbasedbt下创建文件profile.node1,并在/home/gbasedbt/.bash_profile增长source /home/gbasedbt/profile.node1
- touch /home/gbasedbt/profile.node1
- echo 'source /home/gbasedbt/profile.node1' >> /home/gbasedbt/.bash_profile
- --文件内容如下
- --确定实例名称,这个名称需要记住,三个位置需要使用
- export GBASEDBTSERVER=node1
- --数据库安装路径
- export GBASEDBTDIR=/opt/GBASE/gbase
- --执行指令的bin目录位置
- export PATH=/opt/GBASE/gbase/bin:/usr/bin:{PATH}:.
- --一些库文件的位置
- export LD_LIBRARY_PATH=${GBASEDBTDIR}/lib:${GBASEDBTDIR}/lib/esql:${GBASEDBTDIR}/lib/cli
- --确定参数文件的名称,一般是onconfig后面+实例名称,本次命名实例名称为node1
- export ONCONFIG=onconfig.node1
- --确定网络连接文件的名称,一般是sqlhosts后面+实例名称
- export GBASEDBTSQLHOSTS=/opt/GBASE/gbase/etc/sqlhosts
- --确定数据库的字符集,一般为utf8,可以有中文注释
- export DB_LOCALE=zh_CN.utf8
- --客户端的字符集
- export CLIENT_LOCALE=zh_CN.utf8
- --是否启动生僻字,需要设置为1
- export GL_USEGLU=1
- --设置时间的展示格式,一般格式为2023-01-01 00:00:00,默认的为2023年01月01日 00时00分00秒,设置上述格式需要设置以下参数
- export GL_DATE="%Y-%m-%d"
- export GL_DATETIME="%Y-%m-%d %H:%M:%S"
复制代码
- 预备网络连接文件
- 一样平常在/安装路径/etc/下会存在文件sqlhosts.std,将此文件举行复制并改动
- gbasedbt@fu etc]$ cp /opt/GBASE/gbase/etc/sqlhosts.std /opt/GBASE/gbase/etc/sqlhosts.node1
- --以下四个值为实例名称,连接方式,IP地址,端口号,将信息写入到文件内
- [gbasedbt@fu etc]$ echo 'node1 onsoctcp 192.168.8.88 9088' >> /opt/GBASE/gbase/etc/sqlhosts.node1
复制代码
- 预备实例初始化后的数据存储文件:文件夹权限为755,文件权限为660
- --假设此次存放的文件夹在安装目录下的chunk文件内
- mkdir /opt/GBASE/gbase/chunks
- chown -R gbasedbt:gbasedbt /opt/GBASE/gbase/chunks
- chmod 755 /opt/GBASE/gbase/chunks
- --gbase8s的数据的存放文件分为多种,主要为系统数据存放文件、逻辑日志文件、物理日志文件、和数据文件,除此之外,还有简单大对象文件、智能大对象文件和临时文件,本次初始化先初始化系统数据存放文件,将系统数据文件命名为rootdbs
- mkdir /opt/GBASE/gbase/chunks/rootdbs
- chown -R gbasedbt:gbasedbt /opt/GBASE/gbase/chunks/rootdbs
- chmod 660 /opt/GBASE/gbase/chunks/rootdbs
复制代码
- 预备实例初始化的参数文件
- 一样平常在/安装路径/etc/下会存在文件onconfig.std,将此文件举行复制并改动
- 此次只阐明一样平常的修改参数
- cp /opt/GBASE/gbase/etc/onconfig.std /opt/GBASE/gbase/etc/onconfig.node1
- --文件内修改以下参数
- --数据文件的名字和路径,刚才新建的系统数据文件
- ROOTPATH /opt/GBASE/gbase/chunks/rootdbs
- --用于物理备份的指定路径,如果没有设置,手动备份时需要指定路径
- TAPEDEV /dev/null
- --用于逻辑日志的备份路径,如果设置为空,则逻辑日志不会进行存留,切换完毕逻辑日志则会标记为可用
- LTAPEDEV /dev/null
- --实例编号,此编号需要保证同一台服务器上的实例编号唯一
- SERVERNUM 1
- --数据库服务器实例名称,在环境变量和sqlhosts中都存在,必须一样
- DBSERVERNAME gbasedb1
- --数据文件的初始化默认大小,可以按照数据大小进行设置,一般设置为3~5G,如果自己使用,可默认
- ROOTSIZE 3000000
- --数据库的日志文件位置的重定向
- MSGPATH /opt/GBASE/gbase/etc/node1.log
- --0表示只有在根区未检测到实例的情况下允许完全初始化,存在实例需要初始化需要1
- FULL_DISK_INIT 1
复制代码 3.初始化实例
- 以下命令举行初始化即可,等待执行完成可查看数据库状态
- --i是第一次初始化使用,v是打印信息,y是对所有的选项选择y
- oninit -ivy
- --通过以下命令查看数据库状态
- onstat -g dis
复制代码 4.初始化其他数据库空间
- --创建逻辑日志空间,-c创建、-d数据空间的名称、-p创建的数据文件路径(必须全路径,否则启动时可能找不到数据文件)、-o起始位置,设置0即可、-s大小(KB为单位)
- touch /opt/GBASE/gbase/chunks/llogdbs
- chmod 660 /opt/GBASE/gbase/chunks/llogdbs
- onspaces -c -d llogchk -p /opt/GBASE/gbase/chunks/llogdbs -o 0 -s 100000
- --创建物理日志空间,-P表示是物理日志空间格式
- touch /opt/GBASE/gbase/chunks/plogdbs
- chmod 660 /opt/GBASE/gbase/chunks/plogdbs
- onspaces -c -P plogchk -p /opt/GBASE/gbase/chunks/plogdbs -o 0 -s 100000
- --创建临时空间,-t代表临时,其意义是临时表的操作不走逻辑日志,性能更高,-k表示临时表的页表大小是16KB
- touch /opt/GBASE/gbase/chunks/tempdbs
- chmod 660 /opt/GBASE/gbase/chunks/tempdbs
- onspaces -c -d tempchk -p /opt/GBASE/gbase/chunks/tempdbs -o 0 -s 100000 -k 16 -t
- --创建简单大对象的空间,-b表示简单大对象格式,-g是这个格式的页表大小
- touch /opt/GBASE/gbase/chunks/bindbs
- chmod 660 /opt/GBASE/gbase/chunks/bindbs
- onspaces -c -b binchk -p /opt/GBASE/gbase/chunks/bindbs -o 0 -s 100000 -g 16
- --创建智能大对象空间,-S是智能大对象空间的格式
- touch /opt/GBASE/gbase/chunks/sbdbs
- chmod 660 /opt/GBASE/gbase/chunks/sbdbs
- onspaces -c -S sbchk -p /opt/GBASE/gbase/chunks/sbdbs -o 0 -s 100000
- --查看所有加载的空间
- onstat -d
- --创建数据的空间,此空间是存放数据的数据空间
- onspaces -c -d datachk -p datadbs -o 0 -s 300000 -k 16
- --删除已创建的数据空间
- onspaces -d llog
复制代码 5.移动物理日志和逻辑日志
由于物理日志和逻辑日志是在仅有系统数据空间的时候举行初始化的,所以大概会将其数据存放到rootdbs内,所以将其举行移动出来(物理日志大概在其创建时自动移动,需要检查)
- --物理日志,使用onstat -l进行查看,查看phybegin下前面的数字,是否是1,如果是1,则需要手动移动,如果不是且和onstat -d中物理日志的序号对应,则已经移动过
- [gbasedbt@iZ2ze2nmdlhki0ezcrioayZ install]$ onstat -l
- Your evaluation license will expire on 2025-03-15 00:00:00
- On-Line -- Up 1 days 18:05:43 -- 676080 Kbytes
- Physical Logging
- Buffer bufused bufsize numpages numwrits pages/io
- P-1 0 1024 1548 184 8.41
- phybegin physize phypos phyused %used
- 3:53 149100 13268 0 0.00
- --手动移动的方式,-p说明移动物理日志,-d移动到最终的数据空间,-s设置的物理日志文件大小
- onparams -p -d plogdbs -s 500000
复制代码
二、安装问题
(一)针对麒麟V10的虚拟机大概会出现的问题
1.初始化结束的后显示不正常
- --本次初始化结尾如下,表明此次初始化存在问题,异常退出
- Your evaluation license will expire on 2024-11-02 00:00:00
- onclean: Cleaning up processes and resources for 'gbase_cp'...
- - Looking for the master daemon process: 24413
- - Looking for the shmem key: 532b4803
- - Looking for the shmem key: 532b4804
- - Looking for semaphore ID: 7
- - Looking for the shmem key: 532b4801
- - Looking for the shmem key: 532b4802
- --上述表示清空内存段退出,需要查看日志进行检查
复制代码 2.检盘问题和修复
以本次为例,由于安装之前为进入到数据库安装目次,所以安装之后可以进入到gbasedbt用户下举行查看,本次在进入到gbasedbt用户时,出现以下错误
- --上述安装时,数据库实例名称为gbase_cp,正常情况下/home/gbasedbt下会出现以下文件
- [gbasedbt@VM-8-4-centos ~]$ ls -l profile.gbase_cp
- -rw-rw-r-- 1 gbasedbt gbasedbt 294 Jan 9 21:34 profile.gbase_cp
- --手动使环境变量生效
- [gbasedbt@VM-8-4-centos ~]$ source /home/gbasedbt/profile.gbase_cp
- --本次执行上述命令依然出现了bash:source:kysec:权限不够关键词,表名是环境变量无法生效导致数据库初始化失败
- --本次修复方式,进入到root用户下,执行以下命令即可
- [root@VM-8-4-centos ~]# setstatus disable
- --再次生效环境变量检查
- [root@VM-8-4-centos ~]# su - gbasedbt
- Last login: Tue Jan 9 21:42:21 CST 2024 on pts/0
- [gbasedbt@VM-8-4-centos ~]$ source /home/gbasedbt/profile.gbase_cp
- --执行成功
复制代码- --本次进入到gbasedbt用户的其他错误
- --正常来说进入到一个新用户下,会以用户名称为前缀,但是此次出现了以$为前缀的,形式如下或者是仅有$符号
- [root@VM-8-4-centos ~] su - gbasedbt
- Last login: Tue Jan 9 21:50:21 CST 2024 on pts/0
- -sh-4.2$
- --修复措施,一般情况为两种,本次为环境变量配置错误,即/etc/passwd文件内gbasedbt用户后路径配置错误为/bin/sh,如下
- [root@VM-8-4-centos ~] cat /etc/passwd|grep gbasedbt
- gbasedbt:x:1002:1002::/home/gbasedbt:/bin/sh
- --手动进入文件更改为/bin/bash,重新生效即可
- [root@VM-8-4-centos ~] vi /etc/passwd
- [root@VM-8-4-centos ~] cat /etc/passwd|grep gbasedbt
- gbasedbt:x:1002:1002::/home/gbasedbt:/bin/bash
- [root@VM-8-4-centos ~] source /etc/passwd
复制代码 3.重新初始化
- --进入到gbasedbt用户下
- su - gbasedbt
- --检查数据库进程,如果没有重新初始化,如果有,进行kill杀除
- --如果进程过多,可以执行下列命令
- kill -9 `ps -ef|grep oninit|awk -F ' ' '{print $2}'`
- --然后重新初始化,mode=5表示成功
- [gbasedbt@VM-8-4-centos ~]$ oninit -ivy
- Your evaluation license will expire on 2024-11-02 00:00:00
- Reading configuration file '/home/gbasedbt/gbase/etc/onconfig.gbase_cp'...succeeded
- Creating /GBASEDBTTMP/.infxdirs...succeeded
- Allocating and attaching to shared memory...succeeded
- Creating resident pool 63034 kbytes...succeeded
- Creating infos file "/home/gbasedbt/gbase/etc/.infos.gbase_cp"...succeeded
- Linking conf file "/home/gbasedbt/gbase/etc/.conf.gbase_cp"...succeeded
- Initializing rhead structure...rhlock_t 65536 (2048K)... rlock_t (53125K)... Writing to infos file...succeeded
- Initialization of Encryption...succeeded
- Initializing ASF...succeeded
- Initializing Dictionary Cache and SPL Routine Cache...succeeded
- Bringing up ADM VP...succeeded
- ······
- Verbose output complete: mode = 5
复制代码 (二)安装和初始化问题
执行安装,直接退出,且出现the version file is not exist.大概率是unzip的软件不存在。
2.由于文件权限的问题导致初始化失败
手动初始化实例时,最后出现mode=5表现初始化乐成,如果出现mode=2表现初始化失败,初始化失败需要查看日志
- --onstat -m查看日志,如果日志中包含下列内容
- stack trace for pid 27204 written to /home/gbasedbt/gbase/tmp/af.3f1e25a
- 09/28/23 10:18:02 See Also: /home/gbasedbt/gbase/tmp/af.3f1e25a
- 09/28/23 10:18:02 Unable to bind to the port (9088) on the host (49.232.247.31) for the server (gbase8s).
- 09/28/23 10:18:02 The chunk '/home/gbasedbt/gbase/chunks/rootchk' must have READ/WRITE permissions for owner (600).
- 09/28/23 10:18:02 GBase Database Server Stopped.
- 09/28/23 10:18:02 Process exited with return code 126: /bin/sh /bin/sh -c /home/gbasedbt/gbase/etc/alarmprogram.sh 4 7 "Database Server Initialization failure." "The chunk '/home/gbasedbt/gbase/chunks/rootchk' must have READ/WRITE permissions for owner (600)." "" 7018
- 10:18:02 mt_shm_remove: WARNING: may not have removed all/correct segments
复制代码 上述日志中有 The chunk '/home/gbasedbt/gbase/chunks/rootchk' must have READ/WRITE permissions for owner (600).,阐明是这个文件的权限不对
3.重新初始化报错
报错如下
- [gbasedbt@fu ~]$ oninit -ivy
- Your evaluation license will expire on 2024-10-10 00:00:00
- oninit: Fatal error in shared memory creation
- Reading configuration file '/home/gbasedbt/gbase/etc/onconfig'...succeeded
- Creating /GBASEDBTTMP/.infxdirs...succeeded
- Allocating and attaching to shared memory...FAILED
- WARNING: server initialization failed or timed out.
- Check the message log, online.log, for errors.
- [gbasedbt@fu ~]$ vi gbase/tmp/online.log
- 14:08:51 GBase Database Server Started.
- 14:08:51 Requested shared memory segment size rounded from 4308KB to 4788KB
- 14:08:51 shmget: [EEXIST][17]: key 52574801: shared memory already exists
- 14:08:51 mt_shm_init: can't create resident segment
复制代码 上述显示无法创建内存段,大概是相应的内存段已经被分配,无法采取,可以ipcrm -a手动采取
- [root@fu /]ipcrm -a
- [root@fu /]su - gbasedbt
- 上一次登录:三 10月 11 14:21:35 CST 2023pts/2 上
- [gbasedbt@fu ~]$ ls -l
- 总用量 4
- drwxrwxr-x. 4 gbasedbt gbasedbt 38 10月 11 14:14 backup
- drwxr-xr-x. 21 gbasedbt gbasedbt 4096 10月 11 14:14 gbase
- drwxr-xr-x. 4 gbasedbt gbasedbt 250 10月 11 14:19 install
- [gbasedbt@fu ~]$ oninit -ivy
- Your evaluation license will expire on 2024-10-10 00:00:00
- Reading configuration file '/home/gbasedbt/gbase/etc/onconfig'...succeeded
- Creating /GBASEDBTTMP/.infxdirs...succeeded
- Allocating and attaching to shared memory...succeeded
- Creating resident pool 4310 kbytes...succeeded
- Creating infos file "/home/gbasedbt/gbase/etc/.infos.node1"...succeeded
- Linking conf file "/home/gbasedbt/gbase/etc/.conf.node1"...succeeded
- Initializing rhead structure...rhlock_t 16384 (512K)... rlock_t (2656K)... Writing to infos file...succeeded
- Initialization of Encryption...succeeded
- Initializing ASF...succeeded
- Initializing Dictionary Cache and SPL Routine Cache...succeeded
- Bringing up ADM VP...succeeded
- Creating VP classes...succeeded
复制代码
(三)检查使用出现问题
1.onstat -g dis查看不到数据库状态
oninit -ivy初始化后,出现mode=5表现初始化乐成,但是onstat -g dis中查看不到数据库状态,大概是sqlhosts文件有问题,可以检查一下文件内容,IP和端口问题
2.数据库重启无法加载数据空间
加载表空间-p时指定路径最好是绝对路径,不然启动的时候必须进入到相应的目次下,否则,无法找到启动的表空间位置
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。 |