九游平台/ 云数据库 rds/ 用户指南/ rds for postgresql用户指南/ 连接rds for postgresql实例/ 通过das登录rds for postgresql实例并创建数据库(推荐)
更新时间:2024-12-27 gmt 08:00

通过das登录rds for postgresql实例并创建数据库(推荐)-九游平台

操作场景

通过数据管理服务(data admin service,简称das)这款可视化的专业数据库管理工具,可获得执行sql、高级数据库管理、智能化运维等功能,做到易用、安全、智能的管理数据库。云数据库rds服务默认开通das连接权限。推荐使用das连接实例

步骤1:登录rds for postgresql实例

  1. 单击管理控制台左上角的,选择区域。
  2. 单击页面左上角的,选择“数据库 > 云数据库 rds”,进入rds信息页面。
  3. “实例管理”页面,选择目标实例,在操作列单击“登录”,进入数据管理服务实例登录界面。
    图1 登录实例

    您也可以在“实例管理”页面,单击目标实例名称,进入概览页面,在页面右上角单击“登录”,进入数据管理服务实例登录界面。

    图2 登录实例
  4. 正确输入数据库用户名和密码,单击“登录”,即可进入您的数据库并进行管理。
    图3 登录实例

步骤2:创建数据库

  1. 在das界面,选择“sql操作 > sql查询”。
  2. 在sql窗口,执行以下命令创建数据库。
    create database db1;

    您还可以指定模板库,并为每个数据库设置不同的字符集、lc_collate(字符排序规则)和 lc_ctype(字符分类)等属性,详见语法介绍

create database name    
[ [ with ] [ owner [=] user_name ]           
       [ template [=] template ]           
       [ encoding [=] encoding ]           
       [ lc_collate [=] lc_collate ]           
       [ lc_ctype [=] lc_ctype ]           
       [ tablespace [=] tablespace_name ]          
       [ allow_connections [=] allowconn ]           
       [ connection limit [=] connlimit ]          
       [ is_template [=] istemplate ] ]
  • template

    rds forpostgresql数据库默认有template0、template1两个模板,默认模板为template1,使用template1模板库建库时不可指定新的字符集,否则会报错。用户也可以指定其他的自定义模板创建数据库。

  • encoding

    创建数据库时可以通过with encoding指定字符集,字符集含义及支持的字符集类型请参考。

  • lc_collate

    字符排序规则,默认en_us.utf8。

    不同的排序规则下,相同字符串的比较其结果可能是不同的。

    例如,在en_us.utf8下, select 'a'>'a'; 执行结果为false,但在'c'下,select 'a'>'a'; 结果为true。如果数据库从“o”迁移到rds forpostgresql,数据库排序集需使用'c'才能得到一致的预期。支持的排序规则可以查询系统表 pg_collation。

  • lc_ctype

    字符集中的字符分类,用来区分字母、数字、及大小写等,支持的字符分类可以查询系统表 pg_collation。

  • 其余参数请参考。
  • 通过template指定数据库模板
    • 使用 template1 模板库建库时不可指定新的字符集和本地化collate属性,collate属性请参见▪设置数据库的本土化信息(collate)
      create database my_db with template template1 ;
    • 使用template0可指定字符集和本地化collate属性,collate属性请参见▪设置数据库的本土化信息(collate)
      create database my_db with encoding = 'utf8' lc_collate ='zh_cn.utf8' lc_ctype ='zh_cn.utf8' template = template0 ;
    • 创建数据库时不指定模板,则默认模板为template1。用户也可以指定其他的自定义模板创建数据库。
      create database my_db with template = mytemplate;
  • 通过with encoding指定字符集
    create database my_db with encoding 'utf8';
  • lc_collatelc_ctype
    • 查询字符集支持的lc_collate和lc_ctype信息
      select pg_encoding_to_char(collencoding) as encoding,collname,collcollate as "lc_collate",collctype as "lc_ctype" from pg_collation;

      encoding为空时,表示当前lc_collate支持所有的字符集。

    • 设置数据库的本土化信息(collate)

      执行如下命令,创建一个 lc_collate 和 lc_ctype 分别为 zh_cn.utf8 的数据库。

      create database my_db with encoding = 'utf8' lc_collate ='zh_cn.utf8' lc_ctype ='zh_cn.utf8' template = template0 ;

      如果指定的lc_collate与字符集不兼容,则会报如下错误信息。

      1. 指定的lc_collate和lc_ctype必须与目标字符集兼容,参考▪查询字符集支持的lc_collate和lc_c...查询出的字符集,否则会报错。
      2. 目前无法直接通过alter database命令修改已有数据库的lc_collate和lc_ctype信息,但可以通过创建新的数据库,然后导出再导入数据的方式进行修改。

后续操作

登录实例后,您可以创建数据库,进行数据迁移等操作,具体请参见:

相关文档

网站地图