GBase 8c
运维管理
文章

GBase 8c 教程(十四)数据库管理操作

发表于2023-12-06 17:33:2684次浏览2个评论

每个正在运行的GBase 8c服务器实例都管理着一个或多个数据库。

数据库是一个模式的集合,模式包含表、函数等。完整的层次关系是:服务器、模式、表(或其他对象类型,如函数)。

客户端连接到服务器时,必须指定数据库名,且每次连接只能访问一个数据库。应用程序在同一个数据库上的连接数不受限制。

如果数据库实例间互相分隔且不能使用对方的资源,那么建议放到不用的数据库中;如果可以相互关联且互相使用对方的资源,则可以放到同一个数据库的不同模式下。

1、创建数据库:
1)使用CREATE DATABASE命令创建数据库:

CREATE DATABASE name;

name遵循SQL标识符规则,当前角色自动成为该库的拥有者。

2)使用外部程序创建数据库命令:

createdb  dbname

它会连接到数据库并使用CREATE DATABASE命令。

3)为其他角色创建数据库命令:

CREATE DATANAME dbname OWNER rolename;

注意:只有超级管理员可以为其他成员创建数据库。

4)外部程序命令:

createdb -O rolename dbname


 

2、模板数据库:
CREATE DATABASE实际上是通过拷贝模板数据库进行工作。

正常情况下,默认拷贝template1的标准系统数据库。该数据库是创建新数据库的模板。所有对template1的修改都可以直接被继承到后续新建的数据库中。

GBase 8c数据库中还有名为template0的另一个标准系统数据库,它的内容和template1的初始内容相同。当template1被修改后,可以通过template0创建空白初始数据库。

通过template0创建数据库命令:

CREATE DATABASE dbname TEMPLATE template0;

外部程序命令:

createdb -T template0 dbname


 

3、删除数据库:
使用DROP DATABASE命令删除数据库:

DROP DATABASE name;

只有数据库拥有者或超级用户才能删除数据库。删除数据库会移除所有对象且删除操作不可撤销。

外部程序命令:

dropdb dbname

评论

登录后才可以发表评论
崔哥发表于 6个月前
兔园标物序,惊时最是梅。衔霜当路发,映雪拟寒开。枝横却月观,花绕凌风台。朝洒长门泣,夕驻临邛杯。应知早飘落,故逐上春来。
GBase用户47954发表于 1个月前
感谢作者的精彩分享!