VastbaseE100

基于开源技术的HTAP数据库管理系统。性能优异,稳定可靠,提供诸多专属领域特性。

Menu

创建数据库

​ 创建一个新的数据库。缺省情况下新数据库将通过复制标准系统数据库template0来创建,且仅支持使用template0来创建。

注意事项

  • 只有拥有CREATEDB权限的用户才可以创建新数据库,系统管理员默认拥有此权限。
  • 不能在事务块中执行创建数据库语句。
  • 在创建数据库过程中,若出现类似“could not initialize database directory”的错误提示,可能是由于文件系统上数据目录的权限不足或磁盘满等原因引起。

语法格式

CREATE DATABASE database_name 
    [ [ WITH ] { [ OWNER [=] user_name ] | 
               [ TEMPLATE [=] template ] | 
               [ ENCODING [=] encoding ] | 
               [ LC_COLLATE [=] lc_collate ] | 
               [ LC_CTYPE [=] lc_ctype ] | 
               [ DBCOMPATIBILITY [=] compatibilty_type ] | 
               [ TABLESPACE [=] tablespace_name ] | 
               [ CONNECTION LIMIT [=] connlimit ]}[...] ];

示例

  • 创建dbuser和test用户

    CREATE USER dbuser PASSWORD 'test@123'; 
    CREATE USER test PASSWORD 'test@123'; 
    
  • 创建一个UTF8编码的数据库testdb1

    CREATE DATABASE testdb1 ENCODING 'UTF8'; 
    
  • 创建数据库testdb2,并指定所有者为dbuser

    CREATE DATABASE testdb2 OWNER dbuser; 
    
  • 用模板template0创建数据库testdb3,并指定所有者为dbuser

    CREATE DATABASE testdb3 OWNER dbuser TEMPLATE template0;
    
  • 设置testdb1数据库的连接数为500

    ALTER DATABASE testdb1 CONNECTION LIMIT= 500; 
    
  • 将testdb1名称改为testdb4

    ALTER DATABASE testdb1 RENAME TO testdb4;
    
  • 将数据库testdb2的所属者改为test

    ALTER DATABASE testdb2 OWNER TO test; 
    
  • 设置testdb3的表空间为PG_DEFAULT

    ALTER DATABASE testdb3 SET TABLESPACE PG_DEFAULT; 
    
  • 删除数据库

    DROP DATABASE testdb2; 
    DROP DATABASE testdb3;