简要了解并快入门OpenGauss【这次高斯不是数学家】

举报
irrational 发表于 2022/05/30 22:37:06 2022/05/30
【摘要】 简要了解并快入门OpenGauss这篇小博文就跟大家简要介绍一下OpenGauss的基本操作~ 发展历程2019年9月19日在华为全联接大会上,华为宣布将开源其数据库产品,开源后命名为openGauss。2020 年6月30日openGauss数据库源代码正式开放。2021年9月30日,openGauss 2.1.0版本正式上线。 产品简介openGauss 是一款开源的,支持 SQL200...

简要了解并快入门OpenGauss

这篇小博文就跟大家简要介绍一下OpenGauss的基本操作~
image.png

发展历程

  • 2019年9月19日在华为全联接大会上,华为宣布将开源其数据库产品,开源后命名为openGauss。
  • 2020 年6月30日openGauss数据库源代码正式开放。
  • 2021年9月30日,openGauss 2.1.0版本正式上线。

产品简介

openGauss 是一款开源的,支持 SQL2003 标准语法,支持主备部署的高可用关系型(OLTP)数据库。

采用客户端/服务器、单进程多线程架构,支持单机和一主多备部署方式,备机只读,支持双机高可用和读扩展。

产品特点

openGauss 相比于其他开源数据库主要有以下几个主要特点:

高性能
  • 提供了面向多核架构的并发控制技术结合鲲鹏硬件优化,在两路鲲鹏下 TPCC Benchmark 达成性能 150 万 tpmc 。
  • 针对当前硬件多核 numa 的架构趋势, 在内核关键结构上采用了 Numa-Aware 的数据结构。
  • 提供 Sql-bypass 智能快速引擎、融合引擎技术。
高可用
  • 支持主备同步、异步和级联备机多种部署模式。
  • 数据页 CRC 校验,损坏数据页通过备机自动修复。
  • 备机并行恢复,10 秒内可升主提供服务。
高安全
  • 支持全密态计算、访问控制、加密认证、数据库审计和动态数据脱敏等安全特性,提供全方位端到端的数据安全保护。
易运维
  • 基于 AI 的智能参数调优和索引推荐,提供 AI 自动参数推荐。
  • 慢 SQL 诊断,多维性能自监控视图,实时掌控系统的性能表现。
  • 提供在线自学习的 SQL 时间预测。
全开放
  • 采用木兰宽松许可证协议,允许对代码自由修改、使用和引用。
  • 数据库内核能力全开放。
  • 提供丰富的伙伴认证,培训体系和高校课程。

一句话总结
openGauss 是关系型数据库,支持主备部署,2020开源高性能、高可用、高安全、易运维、全开放

安装 openGauss

openGauss支持单机部署和单机HA部署两种部署方式。单机部署时,可在一个主机部署多个数据库实例,但为了数据安全,不建议用户这样部署。单机HA部署支持一台主机和最少一台备机,备机一共最多8台的配置方式。

openGauss 有极简版以及企业版等多种版本,并支持容器安装等方法。本实验中已经完成 openGauss 的安装工作,有兴趣在本地实验的读者可以参考以下链接自定义安装。

openGauss 安装文档

连接数据库

可以使用openGauss自带的 gsql (openGauss交互终端)连接数据库。

gsql 是 openGauss 提供的在命令行下运行的数据库连接工具。此工具除了具备操作数据库的基本功能,还提供了若干高级特性,便于用户使用。

因为 openGauss 不建议使用root账户管理数据库,所以首先切换到 omm 用户:

su - omm  

命令行显示如下信息,表示当前使用系统的用户为 omm :

,

常用的 gsql 连接数据库的指令格式有:

 gsql -d <数据库名称> -p <端口号>   gsql -d <数据库名称> -U <用户名称> -W '数据库密码';  

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

执行以下命令以连接到数据库:

 gsql -d postgres -p 5432  

其中 postgres为需要连接的数据库名称,5432为数据库主节点的端口号。

连接成功后提示如下信息:

,

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

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

登录数据库后可以进行修改密码等操作。例如将 abc 用户的密码从Mypwd123修改为Test@2021,命令如下:

ALTER ROLE abc IDENTIFIED BY 'Test@2021' REPLACE 'Mypwd123';

退出数据库的命令为\q:

,

可以参考 gsql 使用指南

下面我们举一个修改数据库密码的例子。

在命令行中使用用户omm登录postgres数据库,密码为passwd123@123。 登陆后将gaussdb用户的密码修改为Mypassword@123

gsql -d postgres -U omm -W 'passwd123@123'
ALTER ROLE gaussdb IDENTIFIED BY 'Mypassword@123';

初学者注意,每个语句后面需要;分号

连接数据库

上一关中介绍了利用 gsql 连接 openGauss 数据库的方法,本关中使用 omm 用户连接到数据库。
首先切换到操作系统的 omm 用户:

su - omm  

连接到 postgres 数据库:

gsql -d postgres -p 5432  

创建数据库用户

openGauss 默认只有安装时创建的管理员用户可以访问初始数据库,还可以创建其他数据库用户账号访问数据库。

可以通过如下命令创建一个用户名为 joe,密码为 Bigdata@123 的用户:

CREATE USER joe WITH PASSWORD "Bigdata@123";  

创建成功后提示如下信息:

,

创建数据库

使用如下命令创建一个属于用户 joe 的数据库 db_tpcc:

CREATE DATABASE db_tpcc OWNER joe;  

结果显示为以下信息时表示创建成功:

,

切换用户

db_tpcc 数据库创建完成后,退出数据库,使用新用户 joe 连接到 db_tpcc 执行以后的操作(也可以选择继续在默认数据库中进行后续的体验):

,

创建 schema

执行如下语句创建 schema:

CREATE SCHEMA joe AUTHORIZATION joe;  

提示如下信息表示创建成功:

,

创建表

使用如下命令创建一个名称为 mytable, 只有一列的表。

CREATE TABLE mytable(firstcol int);  

其中字段名称为 firstcol,字段类型为 integer。

显示如下信息时表示创建成功:

,

执行如下语句向表中插入数据:

INSERT INTO mytable values(100);  

结果显示为如下信息时表示插入数据成功:

,

查看表中数据

执行以下语句查看 mytable 表中的数据:

SELECT * FROM mytable;  

可以看到刚刚插入的数据:

,

常用的交互操作

使用\l命令可以列表查看当前所有数据库的信息:

,

使用\d命令可以查看当前数据表的信息:

,

使用\c命令可以切换数据库:

,

输入\?指令可以查看 openGauss 支持的所有快捷命令及其说明。

创建用户jackson,密码为jackson@123并使用该用户创建数据库userdb,在该数据库中创建只有一列的数据表userinfo

解答:

su - omm 
gsql -d postgres -p 5432
CREATE USER jackson WITH PASSWORD "jackson@123";
CREATE DATABASE userdb OWNER jackson;
\q
gsql -d userdb -p 5432 -U jackson -W jackson@123
CREATE SCHEMA jackson AUTHORIZATION jackson;
CREATE TABLE userinfo(firstcol int);
【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。