TPC-C GBase 8s&某国际主流数据库性能测试报告
- 格式:pdf
- 大小:880.53 KB
- 文档页数:21
GBase8s管理工具之SQL编辑器使用简介GBase8s 数据库的管理工具GBaseDataStudio以图形化界面对数据库进行日常的操作、管理。
此管理工具是一个C/S结构的软件,安装简便,只需要获取安装包解压后即可使用。
使用本管理工具管理GBase8s的数据库,当新建数据库连接时,需要选择的连接类类型为“GBase 8s”,然后点“下一步”,填写连接数据库的信息,执行“下一步”,直到连接建立完成。
本管理器提供了SQL编辑器用于编写SQL语句和执行SQL语句。
使用查询编辑器能够以SQL命令的方式与数据库服务器交互。
1. 打开sql编辑器打开SQL编辑器有一下几种方式:✧通过工具栏中的“SQL编辑器”按钮;✧在“数据库导航”中,单击数据库下的“表”节点,右键单击某张表,选择“在SQL控制台读取数据”;✧通过菜单栏中的“SQL编辑器”,点击“SQL编辑器”菜单,点击“新建脚本”或者选择最近打开的SQL脚本;✧通过菜单栏中“SQL编辑器”,点击“新建SQL编辑器”菜单;2.编写和执行SQL语句SQL编辑器的中间区域是一个文本编辑框用来编辑SQL脚本。
在编写过程中,输入关键字,显示内容提示(支持小写字母)。
如下图图1 使用内容提示功能2.1 执行SQL脚本SQL脚本写完后,编辑完成后,您可以单击工具栏中的“执行 SQL 脚本”按钮(见图2)或者使用快捷键“Alt+X”,管理工具将会把 SQL 语句发送到数据库服务器去执行。
默认情况下执行后的结果将显示在 SQL 编辑器下部区域中的执行结果面板中。
如下图3所示:图2 执行SQL脚本按钮图标图3 执行SQl语句结果2.2刷新结果集刷新查询结果,sql 编辑器的查询条件刷新结果集。
2.3应用过滤条件输入结果集过滤条件,点击“应用过滤条件”,如下图所示:图 4 结果集过滤2.4移除所有过滤接图5的结果集过滤,点击“移除所有过滤”按钮,显示结果如下图所示:图 5移除所有过滤2.5自定义过滤点击“自定义过滤”,弹出窗口中输入过滤条件,也可以自定义,点击“确定”,结果集中会显示过滤后的结果。
中标麒麟配置Gbase8S环境变量使用GBase 8s数据库命令(如:oninit、onclean、onload、onlog、onmode、onparams、onspaces、onstat、ontape 和onunload)来管理数据库需要配置相关的环境变量。
设置方法(以bash脚本为例):1. 打开gbasedbt用户的.bash_profile文件vi $HOME/.bash_profile2. 在文件末尾插入以下内容:GBASEDBTDIR=/home/gbasedbt/gbaseGBASEDBTSERVER=ol_gbasedbt1210_1ONCONFIG=onconfig.ol_gbasedbt1210_1GBASEDBTSQLHOSTS=/home/gbasedbt/gbase/etc/sqlhosts.ol _gbasedbt1210_1PATH=${GBASEDBTDIR}/bin:${GBASEDBTDIR}/extend/krakatoa /jre/bin:${PATH}export GBASEDBTDIR GBASEDBTSERVER ONCONFIG GBASEDBTSQLHOSTS GL_USEGLU PATHØ GBASEDBTDIR - GBase 8s数据库安装目录Ø GBASEDBTSERVER - GBase 8s数据库实例名Ø ONCONFIG - onconfig配置文件的文件名Ø GBASEDBTSQLHOSTS - sqlhosts配置文件的全目录Ø PATH - 可执行文件的位置3. 应用环境变量source $HOME/.base_profile4. 设置GLS环境变量如果要使用非缺省语言(美式英语),请设置Global Language Support (GLS) 环境变量。
使用以下环境变量处理 GLS:CLIENT_LOCALEDB_LOCALESERVER_LOCALEDBLANGC8BITLEVELESQLMFGLS8BITFSYSGL_DATEGL_DATETIME5. 设置Unicode:如果计划使用Unicode,请设置以下环境变量以支持UTF-8GL_USEGLU=16. 指定环境变量如果在$HOME/.base_profile文件中配置环境变量,每次登录到系统时会自动指定环境变量,如果需要配置多个实例,可以将不同实例的环境变量配置到不同的文件中,需要进行操作时使用对应环境变量文件来指定环境变量,切换操作的实例。
GBase8s数据库安装手册目录1 文档说明 (1)1.1目标读者 (1)2 设计目标 (1)3 数据库安装前的准备 (2)3.1创建INFORMIX组合用户,并为INFORMIX用户设置密码 (2)3.2创建数据库安装路径并授权 (2)3.3创建数据库文件存放路径 (2)3.4配置环境变量 (2)3.5下载安装包(也可以直接将安装包放到LINUX环境的可查看目录) (3)3.6解压安装包到指定文件夹下 (3)4 GBASE8S数据库安装 (3)4.1使用ROOT用户执行./IDS_INSTALL 进行软件安装。
(3)4.2一路回车,到LICENSE 确认步骤输入“Y” (4)4.3指定数据库安装位置,如这里安装路径为/HOME/INFORMIX/GBASE(有可能提示不是空文件夹,所以使用之前创建的安装目录GBASEINSTALL) (5)4.4安装模式部分选择1典型安装 (6)4.5是否创建实例部分,选择2不创建实例。
(6)4.6OAT配置部分一路默认就可以,并输入OAT管理密码 (6)4.7OAT配置信息输入完成后确认LICENSE,输入Y (7)4.8正式进入安装状态 (8)4.9安装完成 (9)5 使用GBASE8S数据库 (9)5.1GB ASE8S实例初始化 (9)5.2查看启动和停止数据库命令 (11)5.3登录和创建数据库 (12)5.4使用INFORMIX用户进行登录,DBACCESS --命令进入数据库命令模式(两个短线中间加空格)126 数据库配置 (12)7 设置开机自动重启 (13)7.1增加文件执行权限 (14)1文档说明1.1目标读者本设计文档所面向的读者主要是开发或实施等需要部署GBase8s数据库的操作人员。
2设计目标本设计文档的目的是在环境部署时用于指导安装linux环境下的GBase8s数据库。
3数据库安装前的准备3.1创建informix组合用户,并为informix用户设置密码3.2创建数据库安装路径并授权mkdir /home/informix/gbase(这里实际上是个解压路径)cd /homechmod 755 informixchown -Rf informix:informix /home/informix/gbase此处可以仿照上面的权限重新建立一个安装路径(安装时需要空文件夹)示例:mkdir /home/informix/gbaseinstallchown -Rf informix:informix /home/informix/gbaseinstall3.3创建数据库文件存放路径cd /optmkdir dbschown -Rf informix:informix dbs3.4配置环境变量假设1:GBase 8t数据库软件的安装目录为/home/informix/gbase目录;假设2:GBase 8t数据库使用的实例名为gbaseserver登录root用户,vi .bash_profile(根据不同的SHELL环境编辑不同的环境变量文件,unix下默认为.profile文件),并加入如下内容:export INFORMIXSERVER=gbaseserverexport INFORMIXDIR=/home/informix/gbaseexport ONCONFIG=onconfig.gbaseserverexport INFORMIXSQLHOSTS=$INFORMIXDIR/etc/sqlhosts.gbaseserverexport PATH=$INFORMIXDIR/bin:/usr/bin:${PA TH}:.export GL_DA TE=" %iY/%m/%d"export DATETIME="%iY-%m-%d %H:%M:%S"export DB_LOCALE=zh_cn.GB18030-2000export CLIENT_LOCALE=zh_cn.GB18030-2000exportLD_LIBRARY_PA TH=${INFORMIXDIR}/lib:${INFORMIXDIR}/lib/esql:${INFORMIXDIR }/lib/cliexport TERM=vt100export TERMCAP=$INFORMIXDIR/etc/termcapexport INFORMIXTERM=termcapexport DBTEMP=$INFORMIXDIR/tmp3.5下载安装包(也可以直接将安装包放到linux环境的可查看目录)3.6解压安装包到指定文件夹下4GBase8s数据库安装4.1使用root用户执行./ids_install 进行软件安装。
GBase 8s 使用一:数据存储空间划分1, 背景:经过前期的不懈努力,已成功在虚拟机CentOS 8.1系统上安装了南大通用的GBase 8s 数据库服务器产品,服务器为单机版,单实例。
环境信息,贴图:数据库状态,贴图工欲善其事必先利其器,因此,在开始使用之前,应该需要明确相关数据的存储位置。
从南大通用提供的GBase 8s相关文档,可以发现,数据文件存储空间应该还需要更为明细的划分,这样就可以避免了各类数据文件存放chunk的冲突。
因此,本章节咱们主要尝试对数据文件存储空间的操作。
2, 数据文件存储空间创建经多方查证确认,基于一般测试环境,需要创建的数据空间有以下几个:rootdbs ----系统数据空间plogdbs ----物理日志数据空间llogdbs ----逻辑日志数据空间tmpdbs1 ----临时数据空间datadbs1 ----数据空间sbspace1 -----智能大对象数据空间目前系统已然存在的数据空间:onstat -dPS:这个rootdbs,应该是GBase 8s系统运行必须有的一个默认数据空间,要不然也不至于在安装初期就创建,猜测其功能应该类似c盘吧^^^特别提示:在创建数据空间之前要确保 /opt/GBASE/gbase/dbs 目录的所有者和所属组均为gbasedbt ,权限为755。
接下来开始创建另外几个数据空间:(用户为gbasedbt)A 先创建chunk文件,并授权660B创建物理日志数据空间,名称为plogdbs。
chunk路径为/opt/GBASE/gbase/dbs/plogdbs,大小 1 G 偏移量0 (此处会出现警告,建议做一次0级备份,可忽略。
)C创建逻辑日志数据空间,名称为llogdbs。
chunk路径为/opt/GBASE/gbase/dbs/llogdbs, 大小1 G 偏移量0D创建数据空间,名称为datadbs1。
chunk路径为/opt/GBASE/gbase/dbs/datadbs1,大小2G 偏移量0 指定页大小8kE创建临时表数据空间,名称为tempdbs1。
GBase 8s 安全功能简介GBase 8s提供和支持的安全功能包括:用户认证、用户授权、访问控制、安全审计、数据加密、备份恢复、角色管理、资源限制、通讯安全、可信路径。
1.1用户认证1)用户标识每个进入DBMS的用户首先需要有一个用户标识,并在DBMS的整个生命周期实现用户标识的唯一性。
2)身份鉴别用户身份鉴别采用了用户密码及数据证书双重认证的鉴别机制,按照基本鉴别、不可伪造鉴别及一次性使用鉴别要求进行用户身份鉴别,用户在使用DBMS 时必须首先给出用户标识,通过检验合格后才能进入使用DBMS,DBMS采用SSL 安全协议,通过双向认证,即客户端或工具端在申请访问服务端时,利用对方的验证算法来验证通信中收到的签名信息。
身份鉴别功能实现包括:•强化管理的口令鉴别:系统采用存储哈希口令的方式提高口令安全性。
•密码复杂度检查:口令长度不得低于8位,口令必须包含大写字母、小写字母、数字。
•密码时效性检查:用户口令有效期最多为7天,超过7天未修改口令,登录时需要重新设置口令。
•尝试次数限制:提供用户鉴别尝试次数限制功能,用户可设定尝试次数,最多为5次。
超过后用户挂起,间隔一段时间后才可以正常登录。
•用户密码传输加密:用户在客户端登录数据库服务器时,输入的密码信息进行加密传输,server端进行密码解密并校验。
•超时认证:用户登录数据库长时间空闲不进行操作,再次操作时,需要输入管理员信息重新登录。
支持证书鉴别:采用SSL协议,通过双向认证,即客户端或工具端在申请访问服务端时,利用对方的验证算法来验证通信中收到的签名信息。
1.2用户授权每个授权用户有一组数据库安全域特性,可决定用户下列安全域特性内容:可用特权和授权角色、可用存储空间(如表空间)限额、可用系统资源限制等安全属性。
可用存储空间(如表空间)、可用系统资源既为数据库对象使用资源,主体为用户,客体包括基表、视图、列、存储过程、函数等,操作包括SELECT,INSERT,UPDATE,DELETE,ALTER、INDEX、REFERENCE,EXECUTE等。
Gbase 8s 数据类型SQL数据类型规定了一个属性的取值范围。
数据类型直接对应于关系模型中域的概念。
关系中的每个属性必须来自于一个域。
相应地,表中每个列的取值必须符合定义表时指定的数据类型。
GBase 8s数据类型如下图:常用数据类型大致分五类:数值类型、时间类型、字符类型、大对象、布尔型1.数值型(Numeric):(1)INTEGER/INT4个字节,为-(231-1)~ 231-1的整数(2)INT8 or BIGINT8字节,为-(263-1)~ 263-1的整数(3)BIGINT 优于INT8(4)SMALLINT2字节,为-(215-1)~ 215-1的整数(5)SERIAL4字节,为1~231-1的正整数,由服务器自动递增(6)SERIAL8 or BIGSERIAL8字节,为1~263-1的正整数,由服务器自动递增(7)BIGSERIAL优于SERIAL8(8)FLOAT or DOUBLE PRECISION双精度浮点数,有16个有效位(9)SMALLFLOAT or REAL单精度浮点数,有8个有效位(10)DECIMAL(p,s) or NUMERIC(p,s)定点小数,其中的‘p’是总位数,‘s’是小数点右边的位数。
(11)MONEY(p,s)货币值,与DECIMAL相似,用货币字符型进行格式化2.字符类型(1)CHAR(n) /CHARACTER(n)定长的字符串,n为字符串长度,默认为1字节。
如果长度小于n,那么用空格填充至n个字符。
N的最大值为32767.(2)VARCHAR(n,r) / CHARACTERVARYING(n,r)长度可变的字符串,n为最大字节长度,r是最小保留空间;如果存储的值的长度小于r,那么用空格填充至r个字符;如果存储的值的长度大于r但小于n,那么只占用存储数据所需的空间。
n的最大值为255。
(3)LVARCHAR(n)长度可变的字符串,n为最大字节长度,默认为2048字节。
GBase 8s 运行模式与切换GBase 8s 运行模式与切换GBase 8s的四种运行模式。
GBase 8s的3种过渡状态。
GBase 8s的模式转换状态图附录GBase 8s的模式转换状态表GBase 8s的四种运行模式。
• 离线模式不能执行任何操作shared memory not initialized for GBASEDBTSERVER ‘gbaseserver’(执行数据库管理员命令时)908: Attempt to connect to database server (gbaseserver) failed.(执行数据库SQL操作时)执行dbaccess时,可以出现菜单,选择数据库出现RUNNING后,一段时间报错。
• 在线模式可以执行各种操作。
• 单用户模式可以执行SQL操作和命令行维护操作。
只能管理员(GBASEDBT / DBSA)连接,其它普通用户不能连接。
27010: Only an administrative user can connect in administrative user mode.• 静态模式只能执行命令行维护操作(如备份数据库)。
不能执行SQL命令(27002: No connections are allowed in quiescent mode.)GBase 8s的3种过渡状态。
• 初始化(Initialization)• 快速恢复(Fast Recovery)• 关闭(Shutting Down)GBase 8s的模式转换状态图GBase 8s 可从一个运行模式,转换到另一个运行模式。
• 离线转单用户• 单用户转在线• 离线转在线• 离线转静态[gbasedbt@devsvr ~]$ onstat -Your evaluation license will expire on 2022-06-18 00:00:00shared memory not initialized for GBASEDBTSERVER 'gbaseserver'[gbasedbt@devsvr ~]$ oninit -jYour evaluation license will expire on 2022-06-18 00:00:00[gbasedbt@devsvr ~]$ onstat -Your evaluation license will expire on 2022-06-18 00:00:00Single-User -- Up 00:00:14 -- 597864 Kbytes[gbasedbt@devsvr ~]$[gbasedbt@devsvr ~]$ onstat -Your evaluation license will expire on 2022-06-18 00:00:00Single-User -- Up 00:04:33 -- 597864 Kbytes[gbasedbt@devsvr ~]$ onmode -mYour evaluation license will expire on 2022-06-18 00:00:00[gbasedbt@devsvr ~]$ onstat -Your evaluation license will expire on 2022-06-18 00:00:00On-Line -- Up 00:04:53 -- 597864 Kbytes[gbasedbt@devsvr ~]$[gbasedbt@devsvr ~]$ onstat -Your evaluation license will expire on 2022-06-18 00:00:00shared memory not initialized for GBASEDBTSERVER 'gbaseserver'[gbasedbt@devsvr ~]$ oninitYour evaluation license will expire on 2022-06-18 00:00:00[gbasedbt@devsvr ~]$ onstat -Your evaluation license will expire on 2022-06-18 00:00:00On-Line -- Up 00:00:14 -- 597864 Kbytes[gbasedbt@devsvr ~]$[gbasedbt@devsvr ~]$ onstat -Your evaluation license will expire on 2022-06-18 00:00:00shared memory not initialized for GBASEDBTSERVER 'gbaseserver'• 静态转在线• 在线转单用户• 单用户转离线[gbasedbt@devsvr ~]$ oninit -sYour evaluation license will expire on 2022-06-18 00:00:00[gbasedbt@devsvr ~]$ onstat -Your evaluation license will expire on 2022-06-18 00:00:00Quiescent -- Up 00:00:15 -- 597864 Kbytes[gbasedbt@devsvr ~]$[gbasedbt@devsvr ~]$ onstat -Your evaluation license will expire on 2022-06-18 00:00:00Quiescent -- Up 00:00:15 -- 597864 Kbytes[gbasedbt@devsvr ~]$ onmode -mYour evaluation license will expire on 2022-06-18 00:00:00[gbasedbt@devsvr ~]$ onstat -Your evaluation license will expire on 2022-06-18 00:00:00On-Line -- Up 00:00:49 -- 597864 Kbytes[gbasedbt@devsvr ~]$[gbasedbt@devsvr ~]$ onstat -Your evaluation license will expire on 2022-06-18 00:00:00On-Line -- Up 00:00:56 -- 597864 Kbytes[gbasedbt@devsvr ~]$ onmode -jYour evaluation license will expire on 2022-06-18 00:00:00This will change mode to single user. Only DBSA/gbasedbt can connect in this mode.Do you wish to continue (y/n)? yAll threads which are not owned by DBSA/gbasedbt will be killed.Do you wish to continue (y/n)? y[gbasedbt@devsvr ~]$ onstat -Your evaluation license will expire on 2022-06-18 00:00:00Single-User -- Up 00:01:25 -- 597864 Kbytes[gbasedbt@devsvr ~]$[gbasedbt@devsvr ~]$ onstat -Your evaluation license will expire on 2022-06-18 00:00:00Single-User -- Up 00:00:14 -- 597864 Kbytes[gbasedbt@devsvr ~]$ onmode -kYour evaluation license will expire on 2022-06-18 00:00:00This will take GBase Database Server OFF-LINE -Do you wish to continue (y/n)? yThere are 0 user threads that will be killed.Do you wish to continue (y/n)? y[gbasedbt@devsvr ~]$ onstat -Your evaluation license will expire on 2022-06-18 00:00:00shared memory not initialized for GBASEDBTSERVER 'gbaseserver' [gbasedbt@devsvr ~]$• 在线转离线[gbasedbt@devsvr ~]$ onstat -Your evaluation license will expire on 2022-06-18 00:00:00On-Line -- Up 00:04:53 -- 597864 Kbytes[gbasedbt@devsvr ~]$ onmode -kYour evaluation license will expire on 2022-06-18 00:00:00This will take GBase Database Server OFF-LINE -Do you wish to continue (y/n)? yThere are 0 user threads that will be killed.Do you wish to continue (y/n)? y[gbasedbt@devsvr ~]$ onstat -Your evaluation license will expire on 2022-06-18 00:00:00shared memory not initialized for GBASEDBTSERVER 'gbaseserver' [gbasedbt@devsvr ~]$• 在线转静态[gbasedbt@devsvr ~]$ onstat -Your evaluation license will expire on 2022-06-18 00:00:00On-Line -- Up 00:00:14 -- 597864 Kbytes[gbasedbt@devsvr ~]$ onmode -sYour evaluation license will expire on 2022-06-18 00:00:00This will perform a GRACEFUL SHUTDOWN -Do you wish to continue (y/n)? y[gbasedbt@devsvr ~]$ onstat -Your evaluation license will expire on 2022-06-18 00:00:00Quiescent -- Up 00:00:45 -- 597864 Kbytes[gbasedbt@devsvr ~]$或[gbasedbt@devsvr ~]$ onstat -Your evaluation license will expire on 2022-06-18 00:00:00• 静态转离线附录GBase 8s 的模式转换状态表离线在线单用户静态离线oninit oninit -j oninit -s 在线onmode -ky onmode -j onmode –sonmode -u单用户onmode -ky onmode -m onmode –sonmode -u静态onmode -ky onmode -monmode -j On-Line -- Up 00:00:38 -- 597864 Kbytes[gbasedbt@devsvr ~]$ onmode -uYour evaluation license will expire on 2022-06-18 00:00:00This will perform an IMMEDIATE SHUTDOWN -Do you wish to continue (y/n)? yThere are 0 user threads that will be killed.Do you wish to continue (y/n)? y[gbasedbt@devsvr ~]$ onstat -Your evaluation license will expire on 2022-06-18 00:00:00Quiescent -- Up 00:00:53 -- 597864 Kbytes[gbasedbt@devsvr ~]$[gbasedbt@devsvr ~]$ onstat -Your evaluation license will expire on 2022-06-18 00:00:00Quiescent -- Up 00:00:45 -- 597864 Kbytes[gbasedbt@devsvr ~]$ onmode -kYour evaluation license will expire on 2022-06-18 00:00:00This will take GBase Database Server OFF-LINE -Do you wish to continue (y/n)? yThere are 0 user threads that will be killed.Do you wish to continue (y/n)? y[gbasedbt@devsvr ~]$ onstat -Your evaluation license will expire on 2022-06-18 00:00:00shared memory not initialized for GBASEDBTSERVER 'gbaseserver'[gbasedbt@devsvr ~]$。
GBase8s架构_01_简介1数据库管理系统概览▪数据库管理系统如GBase8s在架构上是非常类似Unix操作系统。
它包含三个主要部分组成,过程管理,内存管理,磁盘存储管理。
Unix的作业系统是设计用来处理“文件”(File) 类型的数据。
而数据库系统,是专门用来处理“表”(Table or relation)的数据类型。
▪每个“文件”是由无数的字符所组成。
每个“表”是由许多的“列”(Row)所组成。
由于他们被设计来处理不同的数据类型。
Unix操作系统或数据库管理系统的数据都有自己的方法来优化他们的组件,但他们基本的方式是非常相似。
▪GBase8s架构将分为如下四个方面进行介绍–架构概览– GBase8s Architecture–进程/多线程结构– Process/Multithreading Structure–内存结构– Memory structure–存储结构– Disk Storage structure2GBase8s架构概览Fan In for OLTP – (多到少)少数进程能同时处理数千笔交易,避免数千进程运行于操作系统之上Fan Out for DSS/OLAP –– (少到多)一件大型事务能拆成上百个小事务来并行处理GBase8s的实现多线程架构- 更少的进程进行数据库管理系统的活动- 一个进程可以为多个应用程序提供工作线程- 过程可以根据需要动态分配- 更好的可扩展性,更多的客户可以用最低限度的额外资源服务3GBase8s 服务器的部件(component)▪进程–执行数据库服务器实例(instance)请求的任务▪共享内存–缓存数据表的数据–维护和控制着进程所需的资源▪磁盘–存储了数据表的数据和数据库服务器的系统信息如下两张图介绍了这三种部件的职责和关系:GBase8s架构_02_进程及多线程结构4基于进程的数据库服务器的缺陷▪每个进程使用了一些时间片,如下图所示:多个进程一个接一个地运行。
GBase 8s V8.8 共享存储集群Shared Storage Cluster(SSC)安装手册GBase 版权所有©2020,保留所有权利版权声明本文档所涉及的软件著作权及其他知识产权已依法进行了相关注册、登记,由南大通用数据技术股份有限公司合法拥有,受《中华人民共和国著作权法》、《计算机软件保护条例》、《知识产权保护条例》和相关国际版权条约、法律、法规以及其它知识产权法律和条约的保护。
未经授权许可,不得非法使用。
免责声明本文档包含的南大通用数据技术股份有限公司的版权信息由南大通用数据技术股份有限公司合法拥有,受法律的保护,南大通用数据技术股份有限公司对本文档可能涉及到的非南大通用数据技术股份有限公司的信息不承担任何责任。
在法律允许的范围内,您可以查阅,并仅能够在《中华人民共和国著作权法》规定的合法范围内复制和打印本文档。
任何单位和个人未经南大通用数据技术股份有限公司书面授权许可,不得使用、修改、再发布本文档的任何部分和内容,否则将视为侵权,南大通用数据技术股份有限公司具有依法追究其责任的权利。
本文档中包含的信息如有更新,恕不另行通知。
您对本文档的任何问题,可直接向南大通用数据技术股份有限公司告知或查询。
通讯方式南大通用数据技术股份有限公司天津华苑产业区海泰发展六道6 号海泰绿色产业基地J 座(300384)电话:400-013-9696邮箱:*************商标声明是南大通用数据技术股份有限公司向中华人民共和国国家商标局申请注册的注册商标,注册商标专用权由南大通用数据技术股份有限公司合法拥有,受法律保护。
未经南大通用数据技术股份有限公司书面许可,任何单位及个人不得以任何方式或理由对该商标的任何部分进行使用、复制、修改、传播、抄录或与其它产品捆绑使用销售。
凡侵犯南大通用数据技术股份有限公司商标权的,南大通用数据技术股份有限公司将依法追究其法律责任。
目录1 SSC概述 .................................................................................................................................. - 1 -2环境准备................................................................................................................................. - 1 -2.1集群节点准备............................................................................................................. - 2 -2.2组和用户..................................................................................................................... - 2 -2.3映射裸设备................................................................................................................. - 2 -2.3.1创建分区......................................................................................................... - 2 -2.3.2创建并映射裸设备......................................................................................... - 3 -2.3.3开机自动挂载裸设备..................................................................................... - 3 -3安装步骤................................................................................................................................. - 3 -3.1安装数据库................................................................................................................. - 3 -3.2配置数据库................................................................................................................. - 4 -3.2.1创建数据目录................................................................................................. - 4 -3.2.2配置profile.gbaseserver环境变量文件 .......................................................... - 4 -3.2.3配置sqlhosts.gbaseserver文件 ........................................................................ - 4 -3.2.4配置onconfig.gbaseserver参数文件............................................................... - 4 -3.2.5链接数据chunk文件到裸设备上 ................................................................... - 6 -3.2.6配置节点互信任............................................................................................. - 6 -3.2.7调优操作系统参数......................................................................................... - 6 -3.2.8准备集群内其他节点..................................................................................... - 7 -3.2.9以root用户身份关闭各个节点防火墙 .......................................................... - 7 -3.2.10可根据需要以root用户身份关闭SELinux .................................................. - 7 -3.2.11以gbasedbt用户身份登录............................................................................. - 8 -3.2.12初始化实例................................................................................................... - 8 -3.2.13查看节点状态............................................................................................... - 8 -3.2.14验证SSC ........................................................................................................ - 9 -4连接管理器............................................................................................................................. - 9 -4.1集群节点准备........................................................................................................... - 10 -4.2组和用户................................................................................................................... - 10 -4.3配置节点互信任....................................................................................................... - 10 -4.4安装客户机产品....................................................................................................... - 10 -4.4.1配置profile.cm1环境变量文件 .................................................................... - 10 -4.4.2配置sqlhosts.cm1文件.................................................................................. - 10 -4.4.3配置cm1.cfg参数文件.................................................................................. - 11 -4.5准备集群内其他节点............................................................................................... - 11 -4.5.1配置profile.cm2环境变量文件 .................................................................... - 12 -4.5.2配置sqlhosts.cm2文件.................................................................................. - 12 -4.5.3配置cm2.cfg参数文件.................................................................................. - 12 -4.6启动CM .................................................................................................................... - 13 -4.7验证........................................................................................................................... - 13 -1SSC概述GBase 8s共享存储集群SSC(Shared Storage Cluster)采用共享磁盘方式实现数据库高可用、高扩展、高性能。
GBase 8s 在CentOS8.2过程中的报错的解决方式一、解决缺少libnsl.so的方法和缺少tzdb.dat的方法
缺少libnsl.so如下图时:
缺少tzdb.dat如下图时
1)解决缺少linnsl.so问题的方式:
本地有yum源,执行如下命令安装即可
1、yum --verison
出现如下图的类似信息
2、执行如下命令
yum install libns
3、再重新安装gbase8s数据库即可
./ids_install
本地没有配置yum源,需要下载rpm包:
1、Centos官网下载libnsl
2、安装rpm包
rpm -ivh libnsl-2.28-127.el8.x86_64.rpm
3、安装Gbase 8s数据库即可
./ids_install
2)解决缺少tzdb.dat的方法:
1、定位到tzdb.dat文件
2、找到报错目录找不到tzdb.dat,做软连接
cd /tmp/install.dir.13193/Linux/resource/jre/jre/lib
ln -s /usr/share/javazi-1.8/tzdb.dat tzdb.dat tzdb.dat 3、验证结果
在/tmp/install.dir.13193/Linux/resource/jre/jre/lib如下图
4、安装GBase 8s数据库
./ids_install。
GBase 8s安装1, 前言近来一段时间,“国产化”可谓流行至极,咱们抛开当下外在因素不说,从长远来看,“国产化”势必是挡不住的一股洪流。
汽车行业国产化、通讯行业国产化、芯片硬件行业(额,这个应该叫高新技术)国产化……总之,还挺多。
作为银行业的一名最基层的码农,很多时候也在担忧是不是银行也得全国产化才会让我的钱更安全呢,虽然我也没多少钱,哎,一提钱就扎心,咱们还是来聊聊国产化吧。
目前各大中小银行都在忙着成立自己的科技公司,可能他们也考虑到是时候掌握核心科技了吧。
一般银行应用层面已然国产化,现在最多的也就是架构重组,这是当下主流。
很少听说有哪个银行自己重构数据库的,现在银行用的数据库多数是oracle 和DB2,所以感觉对于这些银行,应用系统再国产化,也不够彻底哈……鉴于此,我们就很有必要在网上dang 一下看看有没有可以替代这两款主流产品的国产化数据库,这一dang还真有,四大国产数据库:南大通用、武汉达梦、人大金仓、神舟通用。
虽然都不太了解,不过没关系,准备随便拿一款冒个烟。
来,咱们直接进入主题,还是选南大通用吧,虽然也不知道这个排名怎么来的,不过这个也不重要,咱们重点还是来感受下用户体验度吧。
计划是搭建一个linux系统虚拟机,再下载一个南大通用GBase 8s产品包,在虚拟机上进行试安装。
2, 准备中经过不懈努力,虚拟机安装好了,产品也dang到了……贴图选南大通用GBase 8s这一款的原因,主要因为它是OLTP型数据库,官网介绍也比较高大上,跟银行业务密集型短事物、安全等特点的契合度也比较高,官网介绍如下:GBase 8s是天津南大通用数据技术股份有限公司自主研发的、成熟稳定的企业级国产交易型数据库,拥有自主知识产权。
产品达到B2(国标第四级)级安全标准,支持国密算法,支持SQL92/99、ODBC、JDBC、等国际数据库规范和开发接口。
支持共享存储集群、支持两地三中心高可用部署。
GBase 8s适用于OLTP 应用场景,包括金融、电信行业的关键核心业务系统,安全、党政、国防等行业对信息安全性有较高要求的信息系统,以及大型企业的经营类、管理类信息系统,能够在80%以上场景中替换国际主流数据库及共享存储集群。
GBase 8s 用户名大小写敏感简介
GBase 8s 用户名大小写敏感问题:如果将授予者、角色或用户括在引号中,则名称区分大小写,并且存储方式与键入的完全相同
举例如下:
一、创建系统用户
1、用户名中有英文大小写字符
useradd GBase8s
passwd GBase8s
2、用户名全小写
useradd gbase8s88
passwd gbase8s88
二、赋权操作
前提:存在数据库test
1、给用户(GBase8s)赋权时,要给用户名加上单引号,大小写与已创建用户名(GBase8s)一致
> database test;
> grant dba to 'GBase8s';
--连接
> connect to '@servername' user 'GBase8s';
2、给用户(gbase8s88)赋权时,用户名可以加引号也可以不加,但加引号时必须与已创建的用户名(gbase8s88)一致
> database test;
--加引号
> grant dba to 'gbase8s88';
--连接
> connect to '@servername' user 'gbase8s88';
> database test;
--不加引号
> grant dba to gbase8s88;
--连接
> connect to '@servername' user 'gbase8s88';。
GBase8s数据库的两表连接算法关系代数的一项重要操作就是连接操作,两表连接的方式对连接效率的提高有着直接的影响,这里我们简单谈一谈。
基本的两表连接算法主要有嵌套循环连接和Hash连接算法。
下面针对这两个算法进行介绍:(1)嵌套循环连接算法两个表做连接,一般多采用这种连接算法。
描述如下:FOR EACH ROW r1 IN t1 {FOR EACH ROW r2 IN t2 {IF r1,r2 SATISFIES JOIN CONDITIONSJOIN r1,r2}}数据库引擎在实现这个算法的时候,以元组为单位进行连接。
元组是从一个内存页获取的,而页是从存储层通过IO操作获得的,每个IO申请以“块”为单位读入多个页。
所以考虑获取元组的方式,可以改进这个算法,改进后的算法为基于块的循环连接算法。
描述如下:FOR EACH CHUNK c1 OF t1 {IF c1 NOT IN MEMORY // 一次读入多个页面READ CHUNK c1 INTO MEMORYFOR EACH ROW r1 IN CHUNK c1 { //从页面中分析出元组,消耗CPUFOR EACH CHUNK c2 OF t2 {IF c2 NOT IN MEMORYREAD CHUNK c2 INTO MEMORYFOR EACH ROW r2 IN c2 { //从页面中分析出元组,消耗CPUIF r1,r2 SATISFIFS JOIN CONDITIONSJOIN r1,r2}}}}无论是嵌套循环连接还是基于块的嵌套循环连接,其本质都是在一个两层的循环中拿出各自的元组,逐一匹配是否满足连接条件。
其他一些两表连接算法,多是在此基础上进行的改进,如:基于索引做的改进等。
(2)Hash连接算法基于Hash的连接算法有如下:●用连接列作为Hash值,对内表进行Hash运算建立hash表,然后对外表的每个元组的连接列用Hash函数求值,值映射到内表建立好的Hash表就可以连接了;否则,探索外表的下一个元组。