openGauss每日一练第1天 | openGauss数据库状态查看
admin
2024-02-20 20:53:06
0

第二届openGauss每日一练活动开始了,前几天没跟上,周末时间来补上,开始深入学习openGauss,要坚持学习哦!

一、学习目标

学习从操作系统层面和使用openGauss工具查看数据库的状态、版本和数据文件目录。

  1. 从操作系统层面查看数据库进程和线程,判断数据库是否启动。
  2. 使用gs_ctl工具查看数据库状态,判断数据库是否启动。
  3. 使用gs_ctl 查看数据文件的目录。
  4. 从环境变量查看数据文件的目录。
  5. 在gsql中查看数据文件目录、数据库版本

二、课程学习

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

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

三、课程作业

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

查看实例中的进程
ps -ef|grep gauss
查看实例中的线程
ps -Tp 1

实训环境示例:

root@modb:~# su - omm
omm@modb:~$ ps -ef|grep gauss
omm          1     0  0 18:40 ?        00:00:05 gaussdb
omm        521   517  0 19:03 pts/0    00:00:00 grep gauss
omm@modb:~$ ps -Tp 1PID  SPID TTY          TIME CMD1     1 ?        00:00:00 gaussdb1   293 ?        00:00:00 jemalloc_bg_thd1   299 ?        00:00:00 gaussdb1   300 ?        00:00:00 syslogger1   301 ?        00:00:00 jemalloc_bg_thd1   302 ?        00:00:00 alarm1   303 ?        00:00:00 reaper1   304 ?        00:00:00 jemalloc_bg_thd1   305 ?        00:00:00 jemalloc_bg_thd1   349 ?        00:00:00 checkpointer1   350 ?        00:00:00 Spbgwriter1   351 ?        00:00:00 pagewriter1   352 ?        00:00:00 pagewriter1   353 ?        00:00:00 pagewriter1   354 ?        00:00:00 pagewriter1   355 ?        00:00:00 pagewriter1   356 ?        00:00:00 WALwriter1   357 ?        00:00:00 WALwriteraux1   358 ?        00:00:00 AVClauncher1   359 ?        00:00:00 Jobscheduler1   360 ?        00:00:00 asyncundolaunch1   361 ?        00:00:00 globalstats1   362 ?        00:00:00 applylauncher1   363 ?        00:00:00 statscollector1   365 ?        00:00:02 ashworker1   366 ?        00:00:00 TrackStmtWorker1   367 ?        00:00:00 auditor1   364 ?        00:00:00 percentworker1   368 ?        00:00:00 2pccleaner1   369 ?        00:00:00 faultmonitor1   370 ?        00:00:00 WLMworker1   371 ?        00:00:00 WLMmonitor1   373 ?        00:00:00 undorecycler1   372 ?        00:00:00 WLMarbiter
omm@modb:~$ 

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

gs_ctl status

omm@modb:~$ gs_ctl status
[2022-11-27 19:06:28.525][536][][gs_ctl]: gs_ctl status,datadir is /var/lib/opengauss/data 
gs_ctl: server is running (PID: 1)
/usr/local/opengauss/bin/gaussdb
omm@modb:~$ 

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

gs_ctl notify

omm@modb:~$ gs_ctl notify
[2022-11-27 19:07:31.613][544][][gs_ctl]: gs_ctl notify ,datadir is /var/lib/opengauss/data 
[2022-11-27 19:07:31.614][544][][gs_ctl]: the parameter of notify must be specified
omm@modb:~$ 

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

cat ~/.bashrc

omm@modb:~$ cat ~/.bashrc
# ~/.bashrc: executed by bash(1) for non-login shells.
# see /usr/share/doc/bash/examples/startup-files (in the package bash-doc)
# for examples# If not running interactively, don't do anything
case $- in*i*) ;;*) return;;
esac# don't put duplicate lines or lines starting with space in the history.
# See bash(1) for more options
HISTCONTROL=ignoreboth# append to the history file, don't overwrite it
shopt -s histappend# for setting history length see HISTSIZE and HISTFILESIZE in bash(1)
HISTSIZE=1000
HISTFILESIZE=2000# check the window size after each command and, if necessary,
# update the values of LINES and COLUMNS.
shopt -s checkwinsize# If set, the pattern "**" used in a pathname expansion context will
# match all files and zero or more directories and subdirectories.
#shopt -s globstar# make less more friendly for non-text input files, see lesspipe(1)
#[ -x /usr/bin/lesspipe ] && eval "$(SHELL=/bin/sh lesspipe)"# set variable identifying the chroot you work in (used in the prompt below)
if [ -z "${debian_chroot:-}" ] && [ -r /etc/debian_chroot ]; thendebian_chroot=$(cat /etc/debian_chroot)
fi# set a fancy prompt (non-color, unless we know we "want" color)
case "$TERM" inxterm-color|*-256color) color_prompt=yes;;
esac# uncomment for a colored prompt, if the terminal has the capability; turned
# off by default to not distract the user: the focus in a terminal window
# should be on the output of commands, not on the prompt
#force_color_prompt=yesif [ -n "$force_color_prompt" ]; thenif [ -x /usr/bin/tput ] && tput setaf 1 >&/dev/null; then# We have color support; assume it's compliant wit#alias egrep='egrep --color=auto'
fi# colored GCC warnings and errors
#export GCC_COLORS='error=01;31:warning=01;35:note=01;36:caret=01;32:locus=01:quote=01'# some more ls aliases
#alias ll='ls -l'
#alias la='ls -A'
#alias l='ls -CF'# Alias definitions.
# You may want to put all your additions into a separate file like
# ~/.bash_aliases, instead of adding them here directly.
# See /usr/share/doc/bash-doc/examples in the bash-doc package.if [ -f ~/.bash_aliases ]; then. ~/.bash_aliases
fi. /etc/bash_completionfi
fi
export GAUSSHOME=/usr/local/opengauss
export PATH=$GAUSSHOME/bin:$PATH 
export LD_LIBRARY_PATH=$GAUSSHOME/lib:$LD_LIBRARY_PATH
export PGDATA=/var/lib/opengauss/data
h Ecma-48# (ISO/IEC-6429). (Lack of such support is extremely rare, and such# a case would tend to support setf rather than setaf.)color_prompt=yeselsecolor_prompt=fi
fiif [ "$color_prompt" = yes ]; thenPS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ '
elsePS1='${debian_chroot:+($debian_chroot)}\u@\h:\w\$ '
fi
unset color_prompt force_color_prompt# If this is an xterm set the title to user@host:dir
case "$TERM" in
xterm*|rxvt*)PS1="\[\e]0;${debian_chroot:+($debian_chroot)}\u@\h: \w\a\]$PS1";;
*);;
esac# enable color support of ls and also add handy aliases
if [ -x /usr/bin/dircolors ]; thentest -r ~/.dircolors && eval "$(dircolors -b ~/.dircolors)" || eval "$(dircolors -b)"alias ls='ls --color=auto'#alias dir='dir --color=auto'#alias vdir='vdir --color=auto'#alias grep='grep --color=auto'#alias fgrep='fgrep --color=auto'# enable programmable completion features (you don't need to enable
# this, if it's already enabled in /etc/bash.bashrc and /etc/profile
# sources /etc/bash.bashrc).
if ! shopt -oq posix; thenif [ -f /usr/share/bash-completion/bash_completion ]; then. /usr/share/bash-completion/bash_completionelif [ -f /etc/bash_completion ]; then
omm@modb:~$ 

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

grep -i PGDATA ~/.bashrc

omm@modb:~$ grep -i PGDATA ~/.bashrc
export PGDATA=/var/lib/opengauss/data

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

su - omm
gsql -r
show data_directory ;
select version();
root@modb:~# su - omm
omm@modb:~$ gsql -r
gsql ((openGauss 3.0.0 build 02c14696) compiled at 2022-04-01 18:12:00 commit 0 last mr  )
Non-SSL connection (SSL connection is recommended when requiring high-security)
Type "help" for help.omm=# show data_directory;data_directory      
-------------------------/var/lib/opengauss/data
(1 row)omm=# select version();
-----------------------------------------------------------------------------------------------
--------------------------------------------------------(openGauss 3.0.0 build 02c14696) compiled at 2022-04-01 18:12:00 commit 0 last mr   on aarch64
-unknown-linux-gnu, compiled by g++ (GCC) 7.3.0, 64-bit
(1 row)version                omm=# 

相关内容

热门资讯

【MySQL】锁 锁 文章目录锁全局锁表级锁表锁元数据锁(MDL)意向锁AUTO-INC锁...
【内网安全】 隧道搭建穿透上线... 文章目录内网穿透-Ngrok-入门-上线1、服务端配置:2、客户端连接服务端ÿ...
GCN的几种模型复现笔记 引言 本篇笔记紧接上文,主要是上一篇看写了快2w字,再去接入代码感觉有点...
数据分页展示逻辑 import java.util.Arrays;import java.util.List;impo...
Redis为什么选择单线程?R... 目录专栏导读一、Redis版本迭代二、Redis4.0之前为什么一直采用单线程?三、R...
【已解决】ERROR: Cou... 正确指令: pip install pyyaml
关于测试,我发现了哪些新大陆 关于测试 平常也只是听说过一些关于测试的术语,但并没有使用过测试工具。偶然看到编程老师...
Lock 接口解读 前置知识点Synchronized synchronized 是 Java 中的关键字,...
Win7 专业版安装中文包、汉... 参考资料:http://www.metsky.com/archives/350.htm...
3 ROS1通讯编程提高(1) 3 ROS1通讯编程提高3.1 使用VS Code编译ROS13.1.1 VS Code的安装和配置...
大模型未来趋势 大模型是人工智能领域的重要发展趋势之一,未来有着广阔的应用前景和发展空间。以下是大模型未来的趋势和展...
python实战应用讲解-【n... 目录 如何在Python中计算残余的平方和 方法1:使用其Base公式 方法2:使用statsmod...
学习u-boot 需要了解的m... 一、常用函数 1. origin 函数 origin 函数的返回值就是变量来源。使用格式如下...
常用python爬虫库介绍与简... 通用 urllib -网络库(stdlib)。 requests -网络库。 grab – 网络库&...
药品批准文号查询|药融云-中国... 药品批文是国家食品药品监督管理局(NMPA)对药品的审评和批准的证明文件...
【2023-03-22】SRS... 【2023-03-22】SRS推流搭配FFmpeg实现目标检测 说明: 外侧测试使用SRS播放器测...
有限元三角形单元的等效节点力 文章目录前言一、重新复习一下有限元三角形单元的理论1、三角形单元的形函数(Nÿ...
初级算法-哈希表 主要记录算法和数据结构学习笔记,新的一年更上一层楼! 初级算法-哈希表...
进程间通信【Linux】 1. 进程间通信 1.1 什么是进程间通信 在 Linux 系统中,进程间通信...
【Docker】P3 Dock... Docker数据卷、宿主机与挂载数据卷的概念及作用挂载宿主机配置数据卷挂载操作示例一个容器挂载多个目...