openGauss每日一练第1天

openGauss每日一练第1天,让我们先从认识openGauss开始。首先和我一起来看看openGauss产品简介和其核心特性:

openGauss 是一款全面友好开放,携手伙伴共同打造的企业级开源关系型数据库。openGauss采用木兰宽松许可证v2发行,提供面向多核架构的极致性能、全链路的业务、数据安全、基于AI的调优和高效运维的能力。openGauss内核源自PostgreSQL,深度融合华为在数据库领域多年的研发经验,结合企业级场景需求,持续构建竞争力特性。同时,openGauss也是一个开源、免费的数据库平台,鼓励社区贡献、合作。

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

高性能

提供了面向多核架构的并发控制技术结合鲲鹏硬件优化,在两路鲲鹏下TPCC Benchmark达成性能150万tpmc。

针对当前硬件多核NUMA的架构趋势,在内核关键结构上采用了Numa-Aware的数据结构。

提供Sql-bypass智能快速引擎技术。

针对频繁更新场景,提供Ustore存储引擎。

高可用

支持主备同步,异步以及级联备机多种部署模式。

数据页CRC校验,损坏数据页通过备机自动修复。

备机并行恢复,10秒内可升主提供服务。

提供基于Paxos分布式一致性协议的日志复制及选主框架。

高安全

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

易运维

基于AI的智能参数调优和索引推荐,提供AI自动参数推荐。

慢SQL诊断,多维性能自监控视图,实时掌控系统的性能表现。

提供在线自学习的SQL时间预测。

全开放

采用木兰宽松许可证协议,允许对代码自由修改,使用,引用。

提供伙伴认证,培训体系和高校课程。

下面,我们进行openGauss第一天的学习,学习从操作系统层面和使用openGauss工具查看数据库的状态、版本和数据文件目录。

课程学习

gs_ctl是openGauss提供的数据库服务控制工具,可以用来启停数据库服务和查询数据库状态。主要供openGauss管理模块调用。

gs_ctl工具由操作系统用户omm执行。可以执行:启动、停止、重启openGauss节点。

Linux环境下,进入到openGauss数据库管理用户:

su - omm

1.操作系统层面查看数据库进程和线程。如果数据库启动,则有相应的进程和线程。

ps -ef|grep gauss

ps -Tp 1

2.使用gs_ctl工具查看数据库状态,如果数据库启动,显示gs_ctl: server is running (PID: 1)

gs_ctl status

3.使用gs_ctl 查看数据文件的目录

gs_ctl notify

4.查看omm用户的环境变量

cat ~/.bashrc

5.从环境变量查看数据文件的目录

grep -i PGDATA ~/.bashrc

6.在gsql中查看数据文件的目录、数据库版本

su - omm
gsql -r
show data_directory ;
select version();

课程作业

1.从操作系统层面查看数据库进程和线程,判断数据库是否启动。

进入omm用户下执行以下命令,如果数据库启动,则有相应的进程和线程。

ps -ef|grep gauss

ps -Tp 1

2.使用gs_ctl工具查看数据库状态,判断数据库是否启动。

在omm用户下执行gs_ctl status命令进行查看,如果数据库启动,显示gs_ctl: server is running (PID: 1)

3.使用gs_ctl 查看数据文件的目录

在omm用户下执行gs_ctl notify命令可以查看到数据文件的目录,下图中datadir即为数据文件目录

4.从环境变量查看数据文件的目录

可通过omm用户的环境变量查看数据文件的目录,执行cat ~/.bashrc查看omm用户所有的环境变量配置,通过grep -i PGDATA ~/.bashrc命令筛选出omm用户环境变量中关于数据文件目录配置的参数信息

5.在gsql中查看数据文件目录、数据库版本
在omm用户下,使用gsql命令登录数据库,执行以下命令查看数据文件目录、数据库版本

show data_directory ;
select version();