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
一、历史与特性 任务描述 本关任务:了解openGauss的发展历史以及相关特性。 相关知识 为了完成本关任务,你需要掌握:1.openGauss的发展历程,2.openGauss的功能特性。 发展历程 2019年9月19日在华为全联接大会上,…...
QT找不到ffmpeg链接库解决方法
error: undefined reference to avformat_network_init() 一个神奇的报错,查了很久,检查步骤: 1、检查了 pro工程文件 2、链接库的真实性和正确性 在main.cpp中调用没有报错,在其它cpp文件中调用就报错。 破案了,…...
消息队列-Rabbitmq(消息发送,消息接收)
将来我们开发业务功能的时候,肯定不会在控制台收发消息,而是应该基于编程的方式。由于RabbitMQ采用了AMQP协议,因此它具备跨语言的特性。任何语言只要遵循AMQP协议收发消息,都可以与RabbitMQ交互。并且RabbitMQ官方也提供了各种不…...
2、顶点着色器之视图矩阵
1、作用:将物体从世界坐标系转换到相机坐标系,相当于从世界坐标系转换到相机的局部(本地)坐标系。 2、基于LookAt函数的视图矩阵: 相机位置eye:(ex,ey,ez),世界坐标系下的位置 目标位置center:(cx,cy,cz…...
crontab实现2026年开始每个月1号执行一次
要在 crontab 中设置一个任务,使其从 2026 年开始每个月的 1 号执行一次,可以使用以下格式: 0 0 1 * * <你的命令>这条规则的解释如下: 0 0:表示在每个月的 1 号的零点(00:00)执行。1&a…...
计算机网络803-(5)运输层
目录 一.运输层的两个主要协议:TCP 与 UDP 1.TCP/IP 的运输层有两个不同的协议: 2.端口号(protocol port number) (1)软件端口与硬件端口 (2)TCP 的端口 (3)三类端口 二.用户…...
八 MyBatis中接口代理机制及使用
八、MyBatis中接口代理机制及使用 实际上,第七章所讲内容mybatis内部已经实现了。直接调用以下代码即可获取dao接口的代理类: AccountDao accountDao (AccountDao)sqlSession.getMapper(AccountDao.class);使用以上代码的前提是:AccountMa…...
【解决】Ubuntu18.04 卸载python之后桌面异常且终端无法打开,重启后进入tty1,没有图形化界面
我因为python版本太过于混乱 (都是为了学习os) ,3.6—3.9版本我都安装了,指向关系也很混乱,本着“重装是最不会乱”的原则,我把全部版本都卸载了。然后装了3.9 发现终端打不开了,火狐浏览器的图…...
OpenEmbedded、yocto和poky是什么关系?
Yocto项目是基于OpenEmbedded构建系统发展而来的。Yocto采用了OpenEmbedded的许多核心概念和工具,比如BitBake构建工具。BitBake在这两个系统中都是用于解析和处理recipes文件,这些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测试没有问题 本文摘录于:https://blog.csdn.net/gitblog_00365/article/details/141449437只是做学习备份之用,绝无抄袭之意,有疑惑请联系本人! 今天真的是发了疯的找文件管理器,因为调用系统自带的文件管理…...
【论文速读】| RED QUEEN: 保护大语言模型免受隐蔽多轮越狱攻击
基本信息 原文标题:RED QUEEN: Safeguarding Large Language Models against Concealed Multi-Turn Jailbreaking 原文作者:Yifan Jiang, Kriti Aggarwal, Tanmay Laud, Kashif Munir, Jay Pujara, Subhabrata Mukherjee 作者单位:Hippocr…...
39.第二阶段x86游戏实战2-HOOK实现主线程调用
免责声明:内容仅供学习参考,请合法利用知识,禁止进行违法犯罪活动! 本次游戏没法给 内容参考于:微尘网络安全 本人写的内容纯属胡编乱造,全都是合成造假,仅仅只是为了娱乐,请不要…...
wordpress argon主题美化方面
1、页面前端额外CSS: /*字体*/ 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 是一个可以切换选中(checked)或未选中(unchecked)状态的选项按钮。单选按钮通常呈现给用户一个“多选一”的选择,即在一组单选按钮中,一次只能选中一个按钮。 重要方法 QRadioButton(QWidget…...
Qt 最小化,最大化,关闭窗口
Qt 最小化,最大化 在Qt中,你可以使用QWidget类提供的方法来实现窗口的最小化、最大化等操作。 最小化窗口 你可以使用QWidget的showMinimized()方法来最小化窗口。这将隐藏窗口并将其显示为系统托盘区域的图标。 connect(ui->btnMin,&QPushButton::click…...
【vue项目中添加告警音频提示音】
一、前提: 由于浏览器限制不能自动触发音频文件播放,所以实现此类功能时,需要添加触发事件,举例如下: 1、页面添加打开告警声音开关按钮 2、首次进入页面时添加交互弹窗提示:是否允许播放音频 以上两种方…...
百度SEO分析实用指南 提升网站搜索排名的有效策略
内容概要 在数字化时代,搜索引擎优化(SEO)已经成为提升网站曝光度的关键工具。本指南将带您了解SEO的基本知识,帮助您在复杂的网络环境中立足。我们将从关键词优化开始,重点讲解如何选择合适的关键词来提高搜索引擎排…...
高并发场景下的性能测试方法!
在现代互联网应用中,高并发场景下的性能测试显得尤为重要。无论是电商平台的秒杀活动,还是社交应用的突发流量,都需要确保系统能够在高并发情况下稳定运行。本文将详细介绍高并发场景下的性能测试方法,并提供具体的方案和实战演练…...
杂项——USB键盘与鼠标流量分析——BUUCTF——流量分析
第一次做USB键盘与鼠标流量分析的题目,现在来好好做一个总结 1. 基础知识 USB流量指的是USB设备接口的流量,攻击者能够通过监听usb接口流量获取键盘敲击键、鼠标移动与点击、存储设备的铭文传输通信、USB无线网卡网络传输内容等等。 在正式介绍 USB H…...
树莓派超全系列教程文档--(61)树莓派摄像头高级使用方法
树莓派摄像头高级使用方法 配置通过调谐文件来调整相机行为 使用多个摄像头安装 libcam 和 rpicam-apps依赖关系开发包 文章来源: http://raspberry.dns8844.cn/documentation 原文网址 配置 大多数用例自动工作,无需更改相机配置。但是,一…...
C++:std::is_convertible
C++标志库中提供is_convertible,可以测试一种类型是否可以转换为另一只类型: template <class From, class To> struct is_convertible; 使用举例: #include <iostream> #include <string>using namespace std;struct A { }; struct B : A { };int main…...
PPT|230页| 制造集团企业供应链端到端的数字化解决方案:从需求到结算的全链路业务闭环构建
制造业采购供应链管理是企业运营的核心环节,供应链协同管理在供应链上下游企业之间建立紧密的合作关系,通过信息共享、资源整合、业务协同等方式,实现供应链的全面管理和优化,提高供应链的效率和透明度,降低供应链的成…...
鸿蒙中用HarmonyOS SDK应用服务 HarmonyOS5开发一个医院查看报告小程序
一、开发环境准备 工具安装: 下载安装DevEco Studio 4.0(支持HarmonyOS 5)配置HarmonyOS SDK 5.0确保Node.js版本≥14 项目初始化: ohpm init harmony/hospital-report-app 二、核心功能模块实现 1. 报告列表…...
用docker来安装部署freeswitch记录
今天刚才测试一个callcenter的项目,所以尝试安装freeswitch 1、使用轩辕镜像 - 中国开发者首选的专业 Docker 镜像加速服务平台 编辑下面/etc/docker/daemon.json文件为 {"registry-mirrors": ["https://docker.xuanyuan.me"] }同时可以进入轩…...
C++八股 —— 单例模式
文章目录 1. 基本概念2. 设计要点3. 实现方式4. 详解懒汉模式 1. 基本概念 线程安全(Thread Safety) 线程安全是指在多线程环境下,某个函数、类或代码片段能够被多个线程同时调用时,仍能保证数据的一致性和逻辑的正确性…...
Android 之 kotlin 语言学习笔记三(Kotlin-Java 互操作)
参考官方文档:https://developer.android.google.cn/kotlin/interop?hlzh-cn 一、Java(供 Kotlin 使用) 1、不得使用硬关键字 不要使用 Kotlin 的任何硬关键字作为方法的名称 或字段。允许使用 Kotlin 的软关键字、修饰符关键字和特殊标识…...
C# 求圆面积的程序(Program to find area of a circle)
给定半径r,求圆的面积。圆的面积应精确到小数点后5位。 例子: 输入:r 5 输出:78.53982 解释:由于面积 PI * r * r 3.14159265358979323846 * 5 * 5 78.53982,因为我们只保留小数点后 5 位数字。 输…...
laravel8+vue3.0+element-plus搭建方法
创建 laravel8 项目 composer create-project --prefer-dist laravel/laravel laravel8 8.* 安装 laravel/ui composer require laravel/ui 修改 package.json 文件 "devDependencies": {"vue/compiler-sfc": "^3.0.7","axios": …...
关键领域软件测试的突围之路:如何破解安全与效率的平衡难题
在数字化浪潮席卷全球的今天,软件系统已成为国家关键领域的核心战斗力。不同于普通商业软件,这些承载着国家安全使命的软件系统面临着前所未有的质量挑战——如何在确保绝对安全的前提下,实现高效测试与快速迭代?这一命题正考验着…...

