通过SQL检查GBase 8s HDR运行状态

检查GBase 8s HDR集群运行状态最简便的方式是使用onstat -g dri命令

GBase Database Server Version 12.10.FC4G1AEE -- On-Line (Prim) -- Up 00:28:21 -- 627616 Kbytes

Data Replication at 0x47588028:
  Type           State        Paired server        Last DR CKPT (id/pg)    Supports Proxy Writes
  primary        on           gbase32                       4 / 14         NA

  DRINTERVAL   0
  DRTIMEOUT    30
  DRAUTO       0
  DRLOSTFOUND  /home/gbase30/etc/dr.lostfound
  DRIDXAUTO    0
  ENCRYPT_HDR  0
  Backlog      0
  Last Send    2019/05/06 09:09:42
  Last Receive 2019/05/06 09:09:42
  Last Ping    2019/05/06 09:09:36
  Last log page applied(log id,page): 4,15

阅读全文»

GBase 8s数据库连接 - PHP PDO_GBASEDBT

Linux下通过PHP(pdo)连接到GBase 8s数据库
操作系统:RHEL 6U9 64bit
必需组件:

unixODBC: unix下的odbc
php: 操作系统自带的php
php-devel: php开发组件,包含phpize工具
php-pdo: php-pdo组件
httpd: apache httpd服务器
automake: 编译组件
autoconf: 编译组件
gcc: 编译组件,编译器

注1:php-devel一般位于安装光盘的dvd2上
注2:若编译过程中涉及到其他组件,需先安装后再继续

数据库连接工具:

GBase 8s CSDK

PDO_GBASEDBT:
PDO_GBASEDBT-1.3.3.tgz

PDO_GBASEDBT-1.3.3: 由PDO_INFORMIX修改而来

配置前提

1,GBase 8s 数据库服务器已经正常启动
2,GBase 8s 客户端连接工具已经安装













阅读全文»

GBase 8s数据库连接 - PHP ODBC

Linux下通过PHP(ODBC)连接到GBase 8s数据库
操作系统:RHEL 6U9 64bit
必需组件:

unixODBC unix下的odbc
php 操作系统自带的php
php-odbc odbc连接php组件
httpd apache httpd服务器

数据库连接工具:

GBase 8s CSDK

配置前提

1,GBase 8s 数据库服务器已经正常启动
2,GBase 8s 客户端连接工具已经安装







阅读全文»

merge into的字段限制

有网友反馈说,merge into报229/102错误,并提供相应的表结构。测试并复现了该问题,并最终确认如下结论:

merge into使用的表的特殊字段不能超过112个。

测试过程如下:
创建表mergetab

create table mergetab
(
 col1 varchar(10),
 col2 varchar(10),
 col3 varchar(10),
 col4 varchar(10),
 -- 中间还有 col5 至 col111字段,均为varchar(10)
 col112 varchar(10),
 col113 varchar(10)
);

阅读全文»

GBase 8s触发存储过程示例

GBase 8s的触发器不支持raise exception,条件判断等存储过程中可以使用的功能,若有需求,可以使用触发存储过程的功能。
以下以insert触发器为示例,创建触发存储过程:
1,创建相应的表

create table tab1
  (
    id integer,
    name varchar(40),
    primary key (id)
  ) ;

create table tab2
  (
    id integer,
    name varchar(40),
    uptime datetime year to second
        default current year to second
  ) ;



阅读全文»

GBase 8s使用内部用户

GBase 8s支持内部用户,但默认情况下并不是开启的,需要手工开启。
以下以GBase 8s v8.8_2.0.1a2_2版本为例示范如何使用内部用户(mapping user)

1,配置allowed.surrogates
在/etc/gbasedbt(如没有,使用root用户创建)下创建allowed.surrogates配置文件,内容如下:

USERS:daemon



阅读全文»

在java中调用GBase 8s的函数示例

测试在java程序中调用GBase 8s的函数调用。

1, OUT及RETURN返回值

1)、首先创建需要调用的函数或者存储过程

-- out value 是 out变量值
-- return value 是函数返回值
create function myfunc2(f1 int,out f2 varchar(128)) returns varchar(128);
  let f2 = "out value: myfunc2";
  return "return value: myfunc2  and  f1: " || f1;
end function;

2)、java程序调用函数myfunc2示例

阅读全文»