返回首页

gbase数据、南大通用产品文档:GBase8s设置主键

更新日期:2024年09月11日

定义主键可以对在不允许空值的指定列中输入的值强制唯一性。如果为数据库中的某个表
定义了主键,则可将该表与其他表相关,从而减少对冗余数据的需求。一个表只能有一个

GBase 8s 企业管理器用户手册
南大通用数据技术股份有限公司

24
主键,但可以将多列设置成联合主键。

在表设计器中,单击要定义为主键的数据库列的行选择器。若要设置联合主键时,
只需分别将各列设置成主键即可。

右击该列的行选择器,然后选择“设置主键”。

图:设置主键


defaultRowFetchSize:Integer 类型。确定一次fetch 在ResultSet 中读取的行
数。
限制每次访问数据库时读取的行数可以避免不必要的内存消耗,
从而避
免OutOfMemoryException。缺省值是0,这意味着ResultSet 中将一次获取
所有行。没有负数。

binaryTransfer:Boolean 类型。使用二进制格式发送和接收数据,默认值为
“false”。

binaryTransferEnable:String 类型。启用二进制传输的类型列表,以逗号分


OID











binaryTransferEnable=Integer4_ARRAY,Integer8_ARRAY。
比如:OID 名称为BLOB,编号为88,可以如下配置:
binaryTransferEnable=BLOB 或binaryTransferEnable=88

binaryTransferDisEnable:String 类型。禁用二进制传输的类型列表,以逗号
分隔。OID 编号和名称二选一。覆盖binaryTransferEnable 的设置。

blobMode:String 类型。用于设置setBinaryStream 方法为不同类型的数据
赋值,设置为on 时表示为blob 类型数据赋值,设置为off 时表示为bytea
类型数据赋值,默认为on。

socketFactory:String 类型。用于创建与服务器socket 连接的类的名称。该
类必须实现了接口“javax.net.SocketFactory”,并定义无参或单String 参
数的构造函数。

socketFactoryArg:
String 类型。
此值是上面提供的socketFactory 类的构造函
数的可选参数,不推荐使用。

receiveBufferSize:Integer 类型。该值用于设置连接流上的SO_RCVBUF。

GBase 8c V5 开发者手册
南大通用数据技术股份有限公司
71

sendBufferSize:Integer 类型。该值用于设置连接流上的SO_SNDBUF。

preferQueryMode :String





4

:"extended",
"extendedForPrepared", "extendedCacheEverything", "simple"。用于指定执行
查询的模式,simple 模式会excute,不parse 和bind;extended 模式会bind
和excute ;extendedForPrepared 模式为prepared statement 扩展使用;
extendedCacheEverything 模式会缓存每个statement。

targetServerType:String 类型。该参数识别主备数据节点是通过查询URL
连接串中,数据节点是否允许写操作来实现的,默认为"any"。共有四种:
"any","master","slave","preferSlave":

master 则尝试连接到URL 连接串中的主节点,
如果找不到就抛出异常。

slave 则尝试连接到URL 连接串中的备节点,如果找不到就抛出异常。

preferSlave 则尝试连接到URL 连接串中的备数据节点(如果有可用的
话),否则连接到主数据节点。

any 则尝试连接URL 连接串中的任何一个数据节点。

priorityServers:Integer 类型。此值用于指定url 上配置的前n 个节点作为主
数据库实例被优先连接。默认值为null。该值为数字,大于0,且小于url
上配置的DN 数量。



jdbc:postgresql://
host1:port1,host2:port2,host3:port3,host4:port4,/database? priorityServers=2。

表示host1 与host2 为主数据库实例节点,
host3 与host4 为容灾数据库实例
节点。

forceTargetServerSlave:
Boolean 类型。
此值用于控制是否开启强制连接备机
功能,
并在数据库实例发生主备切换时,
禁止已存在的连接在升主备机上继
续使用。默认值为false,表示不开启强制连接备机功能。true,表示开启强
制连接备机功能。

traceInterfaceClass:String 类型。默认值为null,用于获取traceId 的实现类。
值是实现获取traceId 方法的接口org.postgresql.log.Tracer 的实现类的完整
限定类名。

use_boolean:
Boolean 类型。
用于设置extended 模式下setBoolean 方法绑定
的oid 类型,默认为false,绑定int2 类型;设置为true 则绑定bool 类型。

allowReadOnly:Boolean 类型。用于设置是否允许只读模式,默认为true,
允许设置只读模式;设置为false 则禁用只读模式。

TLSCiphersSupperted:String 类型。用于设置支持的TLS 加密套件,默认

TLS_DHE_RSA_WITH_AES_128_GCM_SHA256,TLS_DHE_RSA_WITH_A
ES_256_GCM_SHA384,TLS_ECDHE_RSA_WITH_AES_128_GCM_S

GBase 8c V5 开发者手册
南大通用数据技术股份有限公司
72
HA256,TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384,TLS_ECDHE_E
CDSA_WITH_AES_128_GCM_SHA256,TLS_ECDHE_ECDSA_WITH_
AES_256_GCM_SHA384
user
数据库用户。
password
数据库用户的密码。
uppercaseAttributeName 参数开启后,如果数据库中有小写、大写和大小写混合的元数
据,只能查询出小写部分的元数据,
并以大写的形式输出,
使用前请务必确认元数据的存储
是否全为小写以避免数据出错。
示例
//以下代码将获取数据库连接操作封装为一个接口,可通过给定用户名和密码来连接数据
库。
public static Connection getConnect(String username, String passwd)
{
//驱动类。
String driver = "org.postgresql.Driver";
//数据库连接描述符。
String sourceURL = "jdbc:postgresql://10.10.0.13:15432/postgres"; Connection conn = null;
try
{
//加载驱动。Class.forName(driver);
}
catch( Exception e )
{
e.printStackTrace(); return null;
}
try
{
//创建连接。
conn = DriverManager.getConnection(sourceURL, username, passwd);
System.out.println("Connection succeed!");
}
catch(Exception e)
{
e.printStackTrace(); return null;
}
return conn;

GBase 8c V5 开发者手册
南大通用数据技术股份有限公司
73
};
// 以下代码将使用Properties 对象作为参数建立连接
public static Connection getConnectUseProp(String username, String passwd)
{
//驱动类。
String driver = "org.postgresql.Driver";
//数据库连接描述符。
String sourceURL = "jdbc:postgresql://10.10.0.13:15432/postgres?"; Connection conn = null;
Properties info = new Properties();
try
{
//加载驱动。Class.forName(driver);
}
catch( Exception e )
{
e.printStackTrace(); return null;
}
try
{
info.setProperty("user", username); info.setProperty("password", passwd);
//创建连接。
conn = DriverManager.getConnection(sourceURL, info); System.out.println("Connection
succeed!");
}
catch(Exception e)
{
e.printStackTrace(); return null;
}
return conn;
};

当集群未初始化,
点击进入集群管理时,
系统会询问是否进行初始化设置,
如图:
图3.2-35 集群管理未初始化弹窗
点击“确定”按钮,
将跳转到集群初始化配置页面,
默认为多VC 模式设置,
如图:
图3.2-36 集群初始化多VC 模式
切换为兼容模式时,如下图所示:

统一数据平台监控与运维系统用户手册
南大通用数据技术股份有限公司
- 57 -
图3.2-37 集群初始化兼容模式
如果点击“取消”,系统会跳转到初始模式页面,如图:
图3.2-38 集群初始化模式页面
在此页面可以查看可用节点信息、节点类型,还能对节点进行启动,停止
和重启等操作。点击“初始化配置”页面会跳转到集群初始化配置页面。

统一数据平台监控与运维系统用户手册
- 58 -
南大通用数据技术股份有限公司