0. GBase 8s 介绍

GBase 8s 是天津南大通用数据技术股份有限公司自主研发、支持共享存储集群、两地三中心部署的、成熟稳定的百T金融级事务型国产数据库,拥有自主知识产权。支持集中式部署、共享存储高可用部署、支持两地三中心高可用部署,具备高容量、高并发、高性能等特性。

GBase 8s 适用于 OLTP 应用场景,包括金融、电信行业的关键核心业务系统,安全、党政、国防等行业对信息安全性有较高要求的信息系统,以及大型企业的经营类、管理类信息系统。能够提供 7*24 小时不间断运行处理能力,在 80% 以上场景中可以替代国际主流数据库。

1. 安装 GBase 8s

本文主要介绍 GBase 8s V8.8(兼容Oracle)产品的单机安装及基础用法。

从 GBase 官网下载 GBase 8s V8.8(兼容Oracle)安装包,本文使用的是 CentOS 7.9 系统,所以这里选择【GBase8sV8.8_TL_3.5.1_x86.7z】安装包。

安装包下载地址为:https://www.gbase.cn/download/gbase-8s-1?category=INSTALL_PACKAGE

提示:这里需要安装 p7zip 依赖,用来解压安装包。

yum install -y p7zip
7za e GBase8sV8.8_TL_3.5.1_x86.7z

解压完成后,输出如下:

[root@shawnyan gbase]# ls
clientsdk_3.5.1_x86.tar  GBase8sV8.8_TL_3.5.1_x86.7z  GBase8sV8.8_TL_3.5.1_x86.tar  GBaseInit_gbasedbt.sh

继续解压【GBase8sV8.8_TL_3.5.1_x86.tar】:

[root@shawnyan gbase]# tar xvf GBase8sV8.8_TL_3.5.1_x86.tar
ids_install
onsecurity
doc/
doc/ids_machine_notes_12.10.txt
doc/ids_unix_relnotes_12.10.html
ids.properties
.gbase.properties

创建 gbasedbt 用户。

groupadd gbasedbt
useradd -g gbasedbt gbasedbt

创建安装目录,并授权。

mkdir -pv /opt/GBASE/gbase
chown gbasedbt:gbasedbt -R /opt/GBASE

GBase 8s 一般有三种安装方式:

  1. swing 图形化安装
  2. console 控制台安装
  3. silent 静默化安装

除此之外,还可以选择使用“GEM安装配置管理平台”进行安装。

这里使用 console 控制台方式进行安装 GBase 8s。

[root@shawnyan gbase]# ./ids_install 
...
===============================================================================
GBase Software Bundle                            (created with InstallAnywhere)
-------------------------------------------------------------------------------

Preparing CONSOLE Mode Installation...

...
DO YOU ACCEPT THE TERMS OF THIS LICENSE AGREEMENT? (Y/N): Y
...
  Default Install Folder: /opt/GBASE/gbase
...
-- 约 5 分钟
...
Installation Complete
---------------------

Congratulations! GBase Software Bundle installation is complete.

Product install status:
GBase: Successful
GBase Connect: Successful

GBase 8s V8.8


For more information about using GBase products, see the GBase Information 
Center at http://www.gbase.cn.

设定环境变量。

[root@shawnyan gbase]# cd /opt/GBASE/gbase
[root@shawnyan gbase]# cat ol_gbasedbt1210.ksh >> /home/gbasedbt/.bash_profile 
[root@shawnyan gbase]# su - gbasedbt
[gbasedbt@shawnyan ~]$ env | grep GBASEDB
GBASEDBTSQLHOSTS=/opt/GBASE/gbase/etc/sqlhosts.gbaseserver
GBASEDBTSERVER=gbaseserver
GBASEDBTDIR=/opt/GBASE/gbase

安装完成后,服务已经启动。

[root@shawnyan ~]# ps auxf | grep oninit | grep -v grep
gbasedbt  25086  0.0  1.6 358012 131144 ?       S<   12:06   0:00 /opt/GBASE/gbase/bin/oninit -ivwy
root      25087  0.0  0.0 358012  5100 ?        S<   12:06   0:00  \_ /opt/GBASE/gbase/bin/oninit -ivwy
root      25088  0.0  0.0 358012  4456 ?        S<   12:06   0:00      \_ /opt/GBASE/gbase/bin/oninit -ivwy
root      25089  0.0  0.0 358012  4448 ?        S<   12:06   0:00      \_ /opt/GBASE/gbase/bin/oninit -ivwy
...

2. GBase 8s 管理命令

启动服务。

[gbasedbt@shawnyan ~]$ oninit -vy
Reading configuration file '/opt/GBASE/gbase/etc/onconfig.ol_gbasedbt1210'...succeeded
...
Verbose output complete: mode = 5

停止服务。

[gbasedbt@shawnyan ~]$ onmode -ky
Your evaluation license will expire on 2025-02-20 00:00:00

查看版本。

[gbasedbt@shawnyan ~]$ gstat -version
GBase 8s V8.8

查看状态和启动时间。

[gbasedbt@shawnyan ~]$ onstat -
Your evaluation license will expire on 2025-02-20 00:00:00
On-Line -- Up 03:26:35 -- 175748 Kbytes

3. GBase 8s 创建实例

创建实例,这里依据提示选择默认值。

[gbasedbt@shawnyan gbase]$ cd etc/
[gbasedbt@shawnyan etc]$ ./GBaseInit_gbasedbt.sh 
...
INSTANCE SUMMARY:
  Instance name:               gbaseserver
  GBase install directory:     /opt/GBASE/gbase
  IP address & port:           192.168.8.161:9088
  Character set:               en_US.819
  Logical log space size:      840 MB
  Physical log space size:     840 MB
  Smart LOB space size:        198 MB
  Temp DBSpace size:           198 MB
  Data path:                   /opt/GBASE/gbase/gbaseserver_dbs
  Data path free size:         8408 MB
...
Creating database: gbasedb...OK

Now you can use this URL to connect to gbasedb:
jdbc:gbasedbt-sqli://192.168.8.161:9088/gbasedb:GBASEDBTSERVER=gbaseserver;

Version:
Your evaluation license will expire on 2025-02-20 00:00:00
On-Line -- Up 00:00:16 -- 4275148 Kbytes
Build Number:		3.5.1_3_6a4e30

GBase Initializing Finished!

4. 连接到 GBase 8s 数据库

dbaccess 是 GBase 8s 数据库的一个命令行客户端工具,用来与 GBase 8s 数据库服务器进行交互。

提示,这里可以安装 rlwrap 工具以提供历史记录和补全功能。

yum install -y rlwrap
alias dbaccess='rlwrap dbaccess'

使用 dbaccess 连接数据库,并查看数据库版本信息。

[gbasedbt@shawnyan bin]$ dbaccess - -
Your evaluation license will expire on 2025-02-20 00:00:00
> select dbinfo('version_gbase','full') from dual;


(constant)                    

GBase8sV8.8_TL_3.5.1_3_6a4e30

1 row(s) retrieved.

5. 切换到 Oracle 兼容模式

命令行工具切换到 Oracle 兼容模式。

set environment sqlmode 'oracle';

使用 JDBC 连接到 GBase 8s 时,需要在连接串增加 sqlmode=oracle 选项来开启 Oracle 兼容模式。

jdbc:gbasedbt-sqli://192.168.8.161:9088/gbasedb:GBASEDBTSERVER=gbaseserver;sqlmode=oracle

6. 简单的 CRUD 示例

切换到新创建的 gbasedb 数据库。

> database gbasedb;

Database selected.

创建一张表,并进行数据插入和查询。

> create table t1 (id int, user varchar(50));

Table created.

> insert into t1 values (1,'shawnyan');

1 row(s) inserted.

> select * from t1;


         id user                                               

          1 shawnyan                                          

1 row(s) retrieved.

到此,GBase 8s 基础安装及功能演示告一段落。

--

--- END ---