返回首页

gbase数据、南大通用产品文档:GBase8sha sds primary 参数:

更新日期:2024年09月11日

将 SD 辅助服务器转换
到主服务器(SQL 管理 API)
随同 admin() 或 task() 函数,使用 ha sds primary 参数来将共享磁盘(SD)辅助服务
器更改为主服务器。
语法


GBase 8s 管理员参考
南大通用数据技术股份有限公司 - 746 -
元素
描述
关键考虑
secondary_server
要设置作为主服务器的 SD 辅
助服务器的名称。
必须在 DBSERVERNAME 或
DBSERVERALIASES 配置参数中
定义该名称,或作为
Enterprise Replication 组
名。

用法
在已建立的 SD 辅助服务器上运行这个函数来将其转换到主服务器。
使用 ha sds primary 参数来将不活动的 SD 辅助服务器转换到主服务器,如果该 SD 辅
助服务器连接到它。
使用 ha sds primary force 参数来将不活动的 SD 辅助服务器转换为主服务器,无论是
否有任何 SD 辅助服务器连接到它。如果会话是活动的,则调用成功,但共享磁盘子系统
可被损坏。
这个函数等同于 onmode -d make primary 命令。
示例
下列示例将名为 ids_stores3 的 SD 辅助服务器转换到主服务器:
EXECUTE FUNCTION task("ha sds primary","ids_stores3");

sysdefaults 系统目录表列出了对数据库中的每一列设置的用户定义的缺省值。对于每
个用户定义的缺省值,都存在一行。
sysdefaults 表具有以下列:
表 12. SYSDEFAULTS 表列描述

类型
解释
tabid
INTEGER
唯一地标识表的代码。当 class 列包含代码 P 时,
tabid 列会引用过程标识,而不是表标识。
colno
SMALLINT
唯一地标识列的代码。

GBase 8s SQL 指南:参考
南大通用数据技术股份有限公司 - 34 -


类型
解释
type
CHAR(1)
标识缺省值类型的代码:C = 当前L = 文字值N =
NULLS = Dbservername 或 Sitename T = 今天U = 用

default
CHAR(256)
如果 sysdefaults.type = L,那么为文字缺省值。
class
CHAR(1)
标识列种类的代码:T = 表t = ROW 类型P = 过程

如果 CREATE
TABLE 或 ALTER
TABLE 语句中未明确指定缺省值,
那么 sysdefaults 表
中不存在该列的条目。
如果指定文字作为缺省值,那么它将以 ASCII 文本的形式存储在缺省列中。如果文字
值不是下一段中列出的数据类型之一,那么 default 列由两部分组成。第一部分是缺省值
结构的二进制值的 6 位表示法。第二部分是 ASCII 文本形式的缺省值。这两个部分由空
格隔开。
如果列的数据类型不是 CHAR、NCHAR、NVARCHAR 或 VARCHAR 或者(用于 GBase 8s)
BOOLEAN 或 LVARCHAR,那么在缺省列中对缺省值的二进制表示进行编码。
tabid、colno 和 class 列的组合索引只允许唯一值。

功能说明
GBase 8a MPP Cluster 提供数据库对象结构的导出工具,
可以导出的数据库对象结
构有:表结构、存储过程、自定义函数(不包含UDF 和UDAF)。
当使用gcdump 工具导出某个数据库对象的结构,并生成导出的sql 脚本文件时,
仅导出表结构,不包含其中数据;
Gcdump 工具一次只能导出一个指定VC 下的数据库对象结构。
语法格式
gcdump [OPTIONS] database [tables]
gcdump [OPTIONS] --databases [OPTIONS] DB1 [DB2 DB3...]
gcdump [OPTIONS] --all-databases [OPTIONS]
OPTIONS 参数说明
-A, --all-databases
导出所有用户数据库结构
-u, --user=name
连接数据库的数据库用户名
-p, --password[=name]
连接数据库的用户密码
-P, --port=#
连接数据库的端口
-B, --databases
导出指定的数据库结构

GBase 8a MPP Cluster 产品手册
5 数据库管理指南
文档版本953(2022-04-10)
南大通用数据技术股份有限公司
1268
-f, --force
导出过程中忽略sql 错误
--ignore-table=database.table
指定不要转储的表,该参数每次只能指定一个表,
如果需要忽略多个表,使用多个参数指定。
-n, --no-create-db
不输出建库语句'CREATE DATABASE IF NOT EXISTS
db_name;' 语句
-t, --no-create-info 不输出建表语句
-q, --quick
导出结果不缓存,直接输出
-Q, --quote-names
输出的表名和列名带引用符号(`)
-r, --result-file=name 导出结果输出到指定的文件中
-R, --routines
导出存储过程和函数
-W, --fixed-vc-name=name 指定导出的VC 名字,
一次只能导出一个VC 的数据库
对象,如果不指定该参数,该参数默认为default vc
-X, --xml
导出文件格式为xml
-I, --colId
导出表结构含TID 和UID,同show full create table
示例
$ gcdump -A -W vc1 --ignore-table=testdb.t --ignore-table=testdb.abc
$ gcdump
-W vc1 -B testdb2