当前位置: 首页 > news >正文

openGauss数据库-头歌实验1-1 初识openGauss

一、历史与特性

任务描述

本关任务:了解openGauss的发展历史以及相关特性。

相关知识

为了完成本关任务,你需要掌握:1.openGauss的发展历程,2.openGauss的功能特性。

发展历程

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

产品简介

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

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

产品特点

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

1.高性能

提供了面向多核架构的并发控制技术结合鲲鹏硬件优化,在两路鲲鹏下 TPCC Benchmark 达成性能 150 万 tpmc 。
针对当前硬件多核 numa 的架构趋势, 在内核关键结构上采用了 Numa-Aware 的数据结构。
提供 Sql-bypass 智能快速引擎、融合引擎技术。

2.高可用

支持主备同步、异步和级联备机多种部署模式。
数据页 CRC 校验,损坏数据页通过备机自动修复。
备机并行恢复,10 秒内可升主提供服务。

3.高安全

支持全密态计算、访问控制、加密认证、数据库审计和动态数据脱敏等安全特性,提供全方位端到端的数据安全保护。

4.易运维

基于 AI 的智能参数调优和索引推荐,提供 AI 自动参数推荐。
慢 SQL 诊断,多维性能自监控视图,实时掌控系统的性能表现。
提供在线自学习的 SQL 时间预测。

5.全开放

采用木兰宽松许可证协议,允许对代码自由修改、使用和引用。
数据库内核能力全开放。
提供丰富的伙伴认证,培训体系和高校课程。

编程要求

经过本关的学习,你已经对 openGauss 的历史和特性有了一定的认识。请完成右边的相关选择题测验任务,以检验你的认识是否准确吧。

答案 

二、安装与连接

任务描述

本关任务:完成对 openGauss 数据库管理系统的特定连接要求。

相关知识

为了完成本关任务,你需要掌握:1. openGauss 的安装,2.openGauss 的连接。

安装 openGauss

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

连接数据库

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

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

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

su - omm

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

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

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


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

执行以下命令以连接到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连接数据库,有关 gsql 的更多内容可以参考 gsql 使用指南。

编程要求

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

编程实现

三、常用交互操作

任务描述

本关任务:学习 openGauss 数据库常用的交互操作。

相关知识

为了完成本关任务,你需要掌握:1.openGauss 数据库的常用操作,2.对数据库和数据表的常用操作。

连接数据库

上一关中介绍了利用 gsql 连接 openGauss 数据库的方法,本关中使用 omm 用户连接到数据库。

1.首先切换到操作系统的 omm 用户:
su - omm

2.连接到 postgres 数据库:
gsql -d postgres -p 5432
3.创建数据库用户

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

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

CREATE USER joe WITH PASSWORD "Bigdata@123";

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

4.创建数据库

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

CREATE DATABASE db_tpcc OWNER joe;

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

5.切换用户

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

6.创建 schema

执行如下语句创建 schema:

CREATE SCHEMA joe AUTHORIZATION joe;

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

7.创建表

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

CREATE TABLE mytable(firstcol int);

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

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

8.执行如下语句向表中插入数据:
INSERT INTO mytable values(100);

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

9.查看表中数据

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

SELECT * FROM mytable;

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

10.常用的交互操作
1.使用\l命令可以列表查看当前所有数据库的信息:

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

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

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

编程要求

根据提示,在右侧命令行进行操作,创建用户jackson,密码为jackson@123并使用该用户创建数据库userdb,在该数据库中创建只有一列的数据表userinfo。

 编程实现

相关文章:

openGauss数据库-头歌实验1-1 初识openGauss

一、历史与特性 任务描述 本关任务&#xff1a;了解openGauss的发展历史以及相关特性。 相关知识 为了完成本关任务&#xff0c;你需要掌握&#xff1a;1.openGauss的发展历程&#xff0c;2.openGauss的功能特性。 发展历程 2019年9月19日在华为全联接大会上&#xff0c;…...

QT找不到ffmpeg链接库解决方法

error: undefined reference to avformat_network_init() 一个神奇的报错&#xff0c;查了很久&#xff0c;检查步骤&#xff1a; 1、检查了 pro工程文件 2、链接库的真实性和正确性 在main.cpp中调用没有报错&#xff0c;在其它cpp文件中调用就报错。 破案了&#xff0c;…...

消息队列-Rabbitmq(消息发送,消息接收)

将来我们开发业务功能的时候&#xff0c;肯定不会在控制台收发消息&#xff0c;而是应该基于编程的方式。由于RabbitMQ采用了AMQP协议&#xff0c;因此它具备跨语言的特性。任何语言只要遵循AMQP协议收发消息&#xff0c;都可以与RabbitMQ交互。并且RabbitMQ官方也提供了各种不…...

2、顶点着色器之视图矩阵

1、作用&#xff1a;将物体从世界坐标系转换到相机坐标系&#xff0c;相当于从世界坐标系转换到相机的局部(本地)坐标系。 2、基于LookAt函数的视图矩阵&#xff1a; 相机位置eye&#xff1a;(ex,ey,ez)&#xff0c;世界坐标系下的位置 目标位置center&#xff1a;(cx,cy,cz…...

crontab实现2026年开始每个月1号执行一次

要在 crontab 中设置一个任务&#xff0c;使其从 2026 年开始每个月的 1 号执行一次&#xff0c;可以使用以下格式&#xff1a; 0 0 1 * * <你的命令>这条规则的解释如下&#xff1a; 0 0&#xff1a;表示在每个月的 1 号的零点&#xff08;00:00&#xff09;执行。1&a…...

计算机网络803-(5)运输层

目录 一.运输层的两个主要协议&#xff1a;TCP 与 UDP 1.TCP/IP 的运输层有两个不同的协议&#xff1a; 2.端口号(protocol port number) &#xff08;1&#xff09;软件端口与硬件端口 &#xff08;2&#xff09;TCP 的端口 &#xff08;3&#xff09;三类端口 二.用户…...

八 MyBatis中接口代理机制及使用

八、MyBatis中接口代理机制及使用 实际上&#xff0c;第七章所讲内容mybatis内部已经实现了。直接调用以下代码即可获取dao接口的代理类&#xff1a; AccountDao accountDao (AccountDao)sqlSession.getMapper(AccountDao.class);使用以上代码的前提是&#xff1a;AccountMa…...

【解决】Ubuntu18.04 卸载python之后桌面异常且终端无法打开,重启后进入tty1,没有图形化界面

我因为python版本太过于混乱 &#xff08;都是为了学习os&#xff09; &#xff0c;3.6—3.9版本我都安装了&#xff0c;指向关系也很混乱&#xff0c;本着“重装是最不会乱”的原则&#xff0c;我把全部版本都卸载了。然后装了3.9 发现终端打不开了&#xff0c;火狐浏览器的图…...

OpenEmbedded、yocto和poky是什么关系?

Yocto项目是基于OpenEmbedded构建系统发展而来的。Yocto采用了OpenEmbedded的许多核心概念和工具&#xff0c;比如BitBake构建工具。BitBake在这两个系统中都是用于解析和处理recipes文件&#xff0c;这些recipes文件包含了软件包构建的指令、依赖关系、安装步骤等内容。 它们…...

记录页面——一个蛮好看的登录页(uni-app)

效果图 <template><view class"container"><view class"flex-col login-box"><view class"flex-col" style"width: 80%"><view class"flex-col"><text class"welcome-text-font&qu…...

Android文件选择器[超级轻量级FilePicker测试没有问题][挣扎解决自带文件管理器获取不到绝对地址问题而是返回msf%3A1000038197]

超级轻量级FilePicker测试没有问题 本文摘录于&#xff1a;https://blog.csdn.net/gitblog_00365/article/details/141449437只是做学习备份之用&#xff0c;绝无抄袭之意&#xff0c;有疑惑请联系本人&#xff01; 今天真的是发了疯的找文件管理器,因为调用系统自带的文件管理…...

【论文速读】| RED QUEEN: 保护大语言模型免受隐蔽多轮越狱攻击

基本信息 原文标题&#xff1a;RED QUEEN: Safeguarding Large Language Models against Concealed Multi-Turn Jailbreaking 原文作者&#xff1a;Yifan Jiang, Kriti Aggarwal, Tanmay Laud, Kashif Munir, Jay Pujara, Subhabrata Mukherjee 作者单位&#xff1a;Hippocr…...

39.第二阶段x86游戏实战2-HOOK实现主线程调用

免责声明&#xff1a;内容仅供学习参考&#xff0c;请合法利用知识&#xff0c;禁止进行违法犯罪活动&#xff01; 本次游戏没法给 内容参考于&#xff1a;微尘网络安全 本人写的内容纯属胡编乱造&#xff0c;全都是合成造假&#xff0c;仅仅只是为了娱乐&#xff0c;请不要…...

wordpress argon主题美化方面

1、页面前端额外CSS&#xff1a; /*字体*/ font-face {font-family: myFont1; src:url(https://blog.yangmumu.com/css/fonts/Dancing.ttf) ;font-display: swap; } font-face {font-family: myFont2; src:url(https://blog.yangmumu.com/css/fonts/Regular.ttf) ;font-displa…...

qt QRadioButton详解

QRadioButton 是一个可以切换选中&#xff08;checked&#xff09;或未选中&#xff08;unchecked&#xff09;状态的选项按钮。单选按钮通常呈现给用户一个“多选一”的选择&#xff0c;即在一组单选按钮中&#xff0c;一次只能选中一个按钮。 重要方法 QRadioButton(QWidget…...

Qt 最小化,最大化,关闭窗口

Qt 最小化,最大化 在Qt中&#xff0c;你可以使用QWidget类提供的方法来实现窗口的最小化、最大化等操作。 最小化窗口 你可以使用QWidget的showMinimized()方法来最小化窗口。这将隐藏窗口并将其显示为系统托盘区域的图标。 connect(ui->btnMin,&QPushButton::click…...

【vue项目中添加告警音频提示音】

一、前提&#xff1a; 由于浏览器限制不能自动触发音频文件播放&#xff0c;所以实现此类功能时&#xff0c;需要添加触发事件&#xff0c;举例如下&#xff1a; 1、页面添加打开告警声音开关按钮 2、首次进入页面时添加交互弹窗提示&#xff1a;是否允许播放音频 以上两种方…...

百度SEO分析实用指南 提升网站搜索排名的有效策略

内容概要 在数字化时代&#xff0c;搜索引擎优化&#xff08;SEO&#xff09;已经成为提升网站曝光度的关键工具。本指南将带您了解SEO的基本知识&#xff0c;帮助您在复杂的网络环境中立足。我们将从关键词优化开始&#xff0c;重点讲解如何选择合适的关键词来提高搜索引擎排…...

高并发场景下的性能测试方法!

在现代互联网应用中&#xff0c;高并发场景下的性能测试显得尤为重要。无论是电商平台的秒杀活动&#xff0c;还是社交应用的突发流量&#xff0c;都需要确保系统能够在高并发情况下稳定运行。本文将详细介绍高并发场景下的性能测试方法&#xff0c;并提供具体的方案和实战演练…...

杂项——USB键盘与鼠标流量分析——BUUCTF——流量分析

第一次做USB键盘与鼠标流量分析的题目&#xff0c;现在来好好做一个总结 1. 基础知识 USB流量指的是USB设备接口的流量&#xff0c;攻击者能够通过监听usb接口流量获取键盘敲击键、鼠标移动与点击、存储设备的铭文传输通信、USB无线网卡网络传输内容等等。 在正式介绍 USB H…...

测试markdown--肇兴

day1&#xff1a; 1、去程&#xff1a;7:04 --11:32高铁 高铁右转上售票大厅2楼&#xff0c;穿过候车厅下一楼&#xff0c;上大巴车 &#xffe5;10/人 **2、到达&#xff1a;**12点多到达寨子&#xff0c;买门票&#xff0c;美团/抖音&#xff1a;&#xffe5;78人 3、中饭&a…...

Swagger和OpenApi的前世今生

Swagger与OpenAPI的关系演进是API标准化进程中的重要篇章&#xff0c;二者共同塑造了现代RESTful API的开发范式。 本期就扒一扒其技术演进的关键节点与核心逻辑&#xff1a; &#x1f504; 一、起源与初创期&#xff1a;Swagger的诞生&#xff08;2010-2014&#xff09; 核心…...

学习STC51单片机32(芯片为STC89C52RCRC)OLED显示屏2

每日一言 今天的每一份坚持&#xff0c;都是在为未来积攒底气。 案例&#xff1a;OLED显示一个A 这边观察到一个点&#xff0c;怎么雪花了就是都是乱七八糟的占满了屏幕。。 解释 &#xff1a; 如果代码里信号切换太快&#xff08;比如 SDA 刚变&#xff0c;SCL 立刻变&#…...

论文笔记——相干体技术在裂缝预测中的应用研究

目录 相关地震知识补充地震数据的认识地震几何属性 相干体算法定义基本原理第一代相干体技术&#xff1a;基于互相关的相干体技术&#xff08;Correlation&#xff09;第二代相干体技术&#xff1a;基于相似的相干体技术&#xff08;Semblance&#xff09;基于多道相似的相干体…...

在QWebEngineView上实现鼠标、触摸等事件捕获的解决方案

这个问题我看其他博主也写了&#xff0c;要么要会员、要么写的乱七八糟。这里我整理一下&#xff0c;把问题说清楚并且给出代码&#xff0c;拿去用就行&#xff0c;照着葫芦画瓢。 问题 在继承QWebEngineView后&#xff0c;重写mousePressEvent或event函数无法捕获鼠标按下事…...

【学习笔记】erase 删除顺序迭代器后迭代器失效的解决方案

目录 使用 erase 返回值继续迭代使用索引进行遍历 我们知道类似 vector 的顺序迭代器被删除后&#xff0c;迭代器会失效&#xff0c;因为顺序迭代器在内存中是连续存储的&#xff0c;元素删除后&#xff0c;后续元素会前移。 但一些场景中&#xff0c;我们又需要在执行删除操作…...

【前端异常】JavaScript错误处理:分析 Uncaught (in promise) error

在前端开发中&#xff0c;JavaScript 异常是不可避免的。随着现代前端应用越来越多地使用异步操作&#xff08;如 Promise、async/await 等&#xff09;&#xff0c;开发者常常会遇到 Uncaught (in promise) error 错误。这个错误是由于未正确处理 Promise 的拒绝&#xff08;r…...

通过 Ansible 在 Windows 2022 上安装 IIS Web 服务器

拓扑结构 这是一个用于通过 Ansible 部署 IIS Web 服务器的实验室拓扑。 前提条件&#xff1a; 在被管理的节点上安装WinRm 准备一张自签名的证书 开放防火墙入站tcp 5985 5986端口 准备自签名证书 PS C:\Users\azureuser> $cert New-SelfSignedCertificate -DnsName &…...

pycharm 设置环境出错

pycharm 设置环境出错 pycharm 新建项目&#xff0c;设置虚拟环境&#xff0c;出错 pycharm 出错 Cannot open Local Failed to start [powershell.exe, -NoExit, -ExecutionPolicy, Bypass, -File, C:\Program Files\JetBrains\PyCharm 2024.1.3\plugins\terminal\shell-int…...

UE5 音效系统

一.音效管理 音乐一般都是WAV,创建一个背景音乐类SoudClass,一个音效类SoundClass。所有的音乐都分为这两个类。再创建一个总音乐类&#xff0c;将上述两个作为它的子类。 接着我们创建一个音乐混合类SoundMix&#xff0c;将上述三个类翻入其中&#xff0c;通过它管理每个音乐…...