从这里开始

本节描述使用数据库的基本操作。通过此节您可以完成创建数据库、创建表及向表中插入数据和查询表中数据等操作。

前提条件

openGauss正常运行。

操作步骤

  1. 以操作系统用户omm登录数据库主节点。

    若不确定数据库主节点部署在哪台服务器,请参考确认连接信息

  2. 连接数据库。

    数据库安装完成后,默认生成名称为postgres的数据库。第一次连接数据库时可以连接到此数据库。

    执行如下命令连接数据库。

    1. gsql -d postgres -p 8000

    其中postgres为需要连接的数据库名称,8000为数据库主节点的端口号。请根据实际情况替换。另外,也可以使用如下任一命令连接数据库。

    1. gsql postgres://omm:Gauss_234@127.0.0.1:8000/postgres -r
    2. gsql -d "host=127.0.0.1 port=8000 dbname=postgres user=omm password=Gauss_234"

    连接成功后,系统显示类似如下信息:

    1. gsql((openGauss x.x.x build f521c606) compiled at 2021-09-16 14:55:22 commit 2935 last mr 6385 release)
    2. Non-SSL connection (SSL connection is recommended when requiring high-security)
    3. Type "help" for help.
    4. openGauss=#

    omm用户是管理员用户,因此系统显示“DBNAME=#”。若使用普通用户身份登录和连接数据库,系统显示“DBNAME=>”。

    “Non-SSL connection”表示未使用SSL方式连接数据库。如果需要高安全性时,请使用SSL连接。

    使用openGauss - 图1 说明: gsql是本产品提供的命令行方式的数据库连接工具。更多的数据库连接办法可参考连接数据库

  3. 创建数据库用户。

    默认只有openGauss安装时创建的管理员用户可以访问初始数据库,您还可以创建其他数据库用户帐号。如果使用如下命令创建用户,请记得修改密码,openGauss的默认密码规则为:至少包含英文大小写、数字、特殊符号中的3类不同的字符组合。

    1. openGauss=# CREATE USER joe WITH PASSWORD "xxxxxxxxx";

    当结果显示为如下信息,则表示创建成功。

    1. CREATE ROLE

    如上创建了一个用户名为joe,密码为xxxxxxxxx的用户。

    如下命令为设置joe用户为系统管理员。

    1. openGauss=# GRANT ALL PRIVILEGES TO joe;

    使用GRANT命令进行相关权限设置,具体操作请参考GRANT

    引申信息: 关于数据库用户的更多信息请参考管理用户及权限

  4. 创建数据库。

    1. openGauss=# CREATE DATABASE db_tpcc OWNER joe;

    当结果显示为如下信息,则表示创建成功。

    1. CREATE DATABASE

    db_tpcc数据库创建完成后,就可以按如下方法退出postgres数据库,使用新用户连接到db_tpcc数据库执行创建表等操作。您也可以选择继续在默认的postgres数据库下进行后续的体验。

    1. openGauss=# \q
    2. gsql -d db_tpcc -p 8000 -U joe
    3. Password for user joe:
    4. gsql ((openGauss x.x.x build 50dc16a6) compiled at 2020-11-29 05:49:21 commit 1071 last mr 1373)
    5. Non-SSL connection (SSL connection is recommended when requiring high-security)
    6. Type "help" for help.
    7. db_tpcc=>

    创建SCHEMA。

    1. db_tpcc=> CREATE SCHEMA joe AUTHORIZATION joe;

    当结果显示为如下信息,则表示创建SCHEMA成功。

    1. CREATE SCHEMA

    引申信息:

    数据库默认创建在pg_default表空间下。若要指定表空间,可以使用如下语句:

    1. openGauss=# CREATE DATABASE db_tpcc WITH TABLESPACE = hr_local;
    2. CREATE DATABASE

    其中hr_local为表空间名称,关于如何创建表空间,请参考创建和管理表空间

  5. 创建表。

    • 创建一个名称为mytable,只有一列的表。字段名为firstcol,字段类型为integer。

      1. db_tpcc=> CREATE TABLE mytable (firstcol int);
      1. CREATE TABLE
    • 向表中插入数据:

      1. db_tpcc=> INSERT INTO mytable values (100);

      当结果显示为如下信息,则表示插入数据成功。

      1. INSERT 0 1
    • 查看表中数据:

      1. db_tpcc=> SELECT * from mytable;
      2. firstcol
      3. ----------
      4. 100
      5. (1 row)

    引申信息:

    • 默认情况下,新的数据库对象是创建在“$user”模式下的,例如刚刚新建的表。关于模式的更多信息请参考创建和管理schema

    • 关于创建表的更多信息请参见创建和管理表

    • 除了创建的表以外,数据库还包含很多系统表。这些系统表包含openGauss安装信息以及openGauss上运行的各种查询和进程的信息。可以通过查询系统表来收集有关数据库的信息。请参见查看系统表

      openGauss支持行列混合存储,为各种复杂场景下的交互分析提供较高的查询性能,关于存储模型的选择,请参考规划存储模型