如何在管理控制台创建GaussDB实例--通过gsql连接实例

90 阅读5分钟

===

本章介绍如何在管理控制台创建GaussDB实例,并通过内网使用弹性云服务器连接GaussDB实例。

准备工作

GaussDB提供gsql工具帮助您在命令行下连接数据库,您需要提前创建一台弹性云服务器用于安装gsql工具。

创建并连接ECS,请参见弹性云服务器快速入门

  • 该弹性云服务器用于连接数据库实例,需要与目标实例处于同一虚拟私有云内。
  • 正确配置安全组,使得弹性云服务器可以通过“连接地址”访问数据库实例。

NOTICE:

操作系统需要选择Euler操作系统。gsql支持的操作系统版本如下:

X86:EulerOS V2.0SP5,Kylin V10 SP2。

鲲鹏服务器:EulerOS V2.0SP8,Kylin V10 SP1。

设置安全组规则

在访问数据库前,您需要将访问数据库的IP地址,或者IP段加入安全组入方向的访问规则。

获取驱动包

  1. 在“实例管理”页面,选择指定的实例,单击实例的名称,进入“基本信息”页面。
  2. 单击左侧导航栏中的“连接管理”,进入“连接管理”页面。
  3. 单击gsql客户端后的,下载驱动或客户端到本地。

远程连接数据库

  1. 登录申请的弹性云服务器。

  2. 在申请的弹性云服务器上,上传客户端工具包并配置gsql的执行环境变量。

    1. 以root用户登录客户端机器。

    2. 创建“/tmp/tools”目录。

      mkdir /tmp/tools
      
    3. 将下载的驱动包上传到申请的弹性云服务器“/tmp/tools”路径下。

    4. 解压GaussDB软件包。

      cd /tmp/tools
      unzip GaussDB_driver.zip
      
    5. 获取“GaussDB-Kernel-VxxxRxxxCxx-EULER-64bit-gsql.tar.gz”,拷贝到“/tmp/tools”路径下。

      cd /tmp/tools/GaussDB_driver/Centralized/Euler2.5_X86_64/
      cp GaussDB-Kernel-VxxxRxxxCxx-EULER-64bit-gsql.tar.gz /tmp/tools
      
    6. 解压文件。

      cd /tmp/tools
      tar -zxvf GaussDB-Kernel-VxxxRxxxCxx-EULER-64bit-gsql.tar.gz
      
    7. 设置环境变量。

      打开“~/.bashrc”文件。

      vim ~/.bashrc
      

      按下i键进入INSERT模式,在其中输入如下内容后,单击“ESC”退出编辑模式,使用“:wq!”命令保存并退出。

      export PATH=/tmp/tools/bin:$PATH
      
      export LD_LIBRARY_PATH=/tmp/tools/lib:$LD_LIBRARY_PATH
      

      使环境变量配置生效。

      source ~/.bashrc
      
  3. 执行如下指令,根据提示输入密码,连接数据库。

    数据库创建成功后,会默认生成名称为postgres的数据库,此处以postgres库为例。

    gsql -d postgres -h 10.0.0.0 -U root -p 8000
    Password for user root:
    

    postgres为需要连接的数据库名称,10.0.0.0分布式为CN的IP地址,主备版为主DN的IP地址,root为登录数据库的用户名,8000为分布式版CN或主备版DN的默认端口号。

    如果实例子网选择的为IPV6子网,则连接数据库时也可使用IPV6地址进行连接。

SSL连接

  1. 登录管理控制台。

  2. 在“实例管理”页面,单击实例名称进入“基本信息”页面,单击“数据库信息”模块“SSL”处的,下载根证书或捆绑包。

    如果需要打开实例的SSL连接功能,首先需要在本地计算机上进行如下的hosts配置:

    {obs_float_ip}  dbs-cert-download-{region_id}.{obs_prefix}.{region_id}.{external_global_domain_name}
    
    • region_id: 当前region的region_id,在底座LLD中查询参数'region0_id'获取。
    • obs_prefix: obs服务域名前缀,obs3.0为'obsv3',obs2.0为'obs',在OBS安装工程LLD查询参数'obs_global_domain_name_prefix'。
    • external_global_domain_name: 当前region的外部服务域名,在底座LLD查询参数'external_global_domain_name'。
    • obs_float_ip: 当前region的obs服务的外部访问地址,在OBS安装工程LLD查询参数名'global_obs_ip'。

    示例:

    127.0.0.1 dbs-cert-download-sa-fb-1.obsv3.sa-fb-1.demo.com
    
  3. 将根证书上传至需连接GaussDB实例的弹性云服务器,或保存到可访问数据库实例的设备。

    将根证书导入弹性云服务器Linux操作系统。

  4. 连接GaussDB实例。

    以Linux系统为例,在弹性云服务器设置环境变量,执行如下命令。

    export PGSSLMODE=<sslmode>
    export PGSSLROOTCERT=<ca-file-directory>
    

    gsql -h

    -p

    -d

    -U

    表1 参数说明

    参数

    说明

    主机IP,在“实例管理”页面单击实例名称,进入“基本信息”页面。“连接信息”模块的“内网地址”(通过弹性云服务器访问)。

    端口,默认8000,当前端口,即在“实例管理”页面单击实例名称,进入“基本信息”页面,“连接信息”模块的“数据库端口”。

    需要连接的数据库名,默认管理数据库是postgres。

    用户名,即GaussDB数据库账号,默认管理员账号为root。

    ssl连接CA证书路径。

    ssl连接模式,设置为“verify-ca”,通过检查证书链(Certificate Chain,以下简称CA)来验证服务是否可信任。

    在弹性云服务器设置环境变量,使用root用户SSL连接postgres数据库实例,具体示例如下:

    export PGSSLMODE="verify-ca"
    export PGSSLROOTCERT="/home/Ruby/ca.pem"
    

    gsql -d

    postgres

    -h

    10.0.0.0

    -U

    root

    -p

    8000

    Password for user root:
    
  5. 登录数据库后,出现如下信息,表示通过SSL连接成功。

    SSL connection (cipher: DHE-RSA-AES256-GCM-SHA384, bits: 256)
    

更多详情请参考GaussDB 文档中心:doc.hcs.huawei.com/db/zh-cn/ga…