前言
当我第一次听见 openGauss 的时候,我在想这是一个什么,是一个打开的工具箱吗?还是一个活动标签,从没有想过会是一个数据库管理系统。慢慢的从朋友口中得知,这是一款免费的开源的国产数据库管理系统,目前美国等西方国家在很多方面都在卡我们的脖子,目前国内使用的数据库一般是 MySQL,Oracle 比较多,假如数据库被卡脖子那将是一场灾难,因此国产数据库的重要性就体现出来了,能看到 openGauss 这样一款优秀的数据库系统我感到很欣慰,已经迫不及待想尝尝鲜了。openGauss 是一款全面友好开放,携手伙伴共同打造的企业级开源关系型数据库。openGauss 提供面向多核架构的极致性能、全链路的业务、数据安全、基于 AI 的调优和高效运维的能力。openGauss 深度融合华为在数据库领域多年的研发经验,结合企业级场景需求,持续构建竞争力特性。
大纲概括:
1.openGauss 是一个数据库管理系统。
2.openGauss 数据库是关系型的。
3.openGauss 软件是开源的。
4.openGauss 数据库具有高性能、高可用、高安全、易运维、全开放的特点。
一、系统架构
openGauss 是单机系统,在这样的系统架构中,业务数据存储在单个物理节点上,数据访问任务被推送到服务节点执行,通过服务器的高并发,实现对数据处理的快速响应。同时通过日志复制可以把数据复制到备机,提供数据的高可靠和读扩展。
二、软件架构
openGauss 是单机系统,支持主备部署。
表 1 架构说明
名称 | 描述 |
---|---|
OM | 运维管理模块(Operation Manager)。提供数据库日常运维、配置管理的管理接口、工具。 |
CM | 数据库管理模块(Cluster Manager)。管理和监控数据库系统中各个功能单元和物理资源的运行情况,确保整个系统的稳定运行。 |
客户端驱动 | 客户端驱动(Client Driver)。负责接收来自应用的访问请求,并向应用返回执行结果。客户端驱动负责与 openGauss 实例通信,发送应用的 SQL 命令,接收 openGauss 实例的执行结果。 |
openGauss(主备) | openGauss 主备(Datanode)。负责存储业务数据、执行数据查询任务以及向客户端返回执行结果。openGauss 实例包含主、备两种类型,支持一主多备。建议将主、备 openGauss 实例分散部署在不同的物理节点中。 |
Storage | 服务器的本地存储资源,持久化存储数据。 |
三、基础语法
1.创建数据库
数据库安装完成后,默认生成名称为 postgres 的数据库。您需要自己创建一个新的数据库。
语法格式
创建数据库
CREATE DATABASE database_name;
查看数据库
使用“\l”用于查看已经存在的数据库。
\l
使用 “\c + 数据库名” 进入已存在数据库。
\c dbname
修改数据库
ALTER DATABASE database_name RENAME TO new_name;
删除数据库
DROP DATABASE database_name ;
示例
创建数据库
CREATE DATABASE nianNian OWNER tbug;
使用“\l”用于查看已经存在的数据库。
postgres=# CREATE DATABASE nianNian OWNER tbug;
CREATE DATABASE
postgres=# \l
List of databases
Name | Owner | Encoding | Collate | Ctype | Access privileges
-----------+-------+-----------+---------+-------+-------------------
db1 | tbug | SQL_ASCII | C | C |
niannian | tbug | SQL_ASCII | C | C |
postgres | omm | SQL_ASCII | C | C |
template0 | omm | SQL_ASCII | C | C | =c/omm +
| | | | | omm=CTc/omm
template1 | omm | SQL_ASCII | C | C | =c/omm +
| | | | | omm=CTc/omm
(5 rows)