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();