当前位置:首页 > 经验总结 > 正文内容

opengauss常用命令

撒谎信2年前 (2024-06-04)经验总结1773

======库外操作======

--检查端口

netstat -anp | grep LISTEN | grep 端口
netstat -tuln | grep 端口
nmap -p 17700-17710 localhost
nmap -p 18800-18801 指定IP
telnet 指定IP 17705

--网卡下线脚本

##内容头

!/bin/bash

ifdown bond1

sleep 180

ifup bond1

##内容尾

赋权:chmod 775 file_name
执行:nohup sh file_name &

--设置数据库登录用户权限(pg_hba.conf)配置客户端认证方式

下面示例中配置允许P地址为10.10.0.30的客户端以“jack”用户访问本机

gs_guc set -N all -I all -h "host all jack 10.10.0.30/32 sha256"

TYPE     DATABASE        USER            ADDRESS                 METHOD

"local" is for Unix domain socket connections only

#表示只允许以安装时-U参数指定的用户从服务器本机进行连接。

local   all             all                                     trust

IPv4 local connections:

#表示允许omm用户从10.10.0.50主机上连接到任意数据库,使用sha256算法对密码进行加密。

host    all           omm             10.10.0.50/32            sha256

#表示允许任何用户从10.10.0.0/24网段的主机上连接到任意数据库,使用sha256算法对密码进行加密,并且经过SSL加密传输。

hostssl    all             all             10.10.0.0/24            sha256

#表示允许任何用户从10.10.0.0/24网段的主机上连接到任意数据库,使用Kerberos认证方式,当前版本暂不支持客户端kerberos认证。

host    all             all             10.10.0.0/24            gss         include_realm=1        krb_realm=HADOOP.COM

--登录数据库

gsql -d db_name -p 数据库主节点端口号
gsql -h <IP 地址> -p <端口号> -d <数据库名> -U <用户名>

--读主库参数

gsql -d postgres -p 17700 -c "show synchronous_standby_names"
gsql -d postgres -p 17700 -c "show listen_addresses"

--读备库参数

gsql -d postgres -p 17700 -c "show synchronous_standby_names"

--查看集群状态

gs_om -t status --detail
gs_ctl -t status --detail

--查看集群vip节点

ip a|grep -i 10.*

--逻辑导出

gs_dumpall -f /database/backup/backup_all_20240428.sql -p 17700

--集群重启

cm_ctl stop && cm_ctl start

--备库节点1-switchover切换为主数据节点-切库

cm_ctl switchover -n 1 -D /database/panweidb/data

--关闭集群指定节点Down

cm_ctl stop -n 1 -D /database/panweidb/data

#需要变为主库的节点执行

#主备切换

gs_ctl switchover -D /database/panweidb/data --主备切换
gs_om -t status --detail
gs_om -t refreshconf
cm_ctl set --cmsPromoteMode=PRIMARY_F -I 1--更新默认信息为1节点

切库后查看集群状态及vip节点

--主备节点切换为正常状态

cm_ctl switchover -n 1 -D /database/panweidb/data


切库后查看集群状态及vip节点

--查看数据库参数

cm_ctl list --param --server | grep enable_transaction_read_only
cm_ctl list --param --server | grep datastorage_threshold_value_check

--集群参数在线修改

gs_guc reload -Z cmserver -N all -I all -c "datastorage_threshold_value_check=90"

--查看业务中断时长

gsql -U test_ha -d postgres -h 10.xx.xx.5 -p 17700 -c "select * from test_ha.test_ha order by 1 desc limit 500;"

--初始化数据库 DB

pw_initdb -D /home/panweidb/data/panweidb --nodename panweidb - w panwei@123 --dbcompatibility=A
pw_initdb -D db_path/data/db_name --nodename node_name - w password --dbcompatibility=A

#dbcompatibility=A  为DB的兼容模式 取值范围:A、B、C、PG。分别表示兼容O、MY、TD和POSTGRES

--查看用户计划任务

crontab -l

--编辑用户计划任务

crontab -e


======库内操作======

--查询数据库用户

SELECT rolname FROM pg_roles;

--更改用户密码有效期

ALTER USER USER_NAME WITH VALID BEGIN '2016-11-10 08:00:00' VALID UNTIL '2017-11-10 08:00:00';

--更改用户截止日期

ALTER USER USER_NAME WITH VALID UNTIL '2999-11-10 08:00:00';
ALTER USER  WITH VALID UNTIL '2999-11-10 08:00:00';

--查询慢SQL

SELECT activity.*, stats.* FROM pg_stat_activity AS activity
JOIN pg_stat_statements AS stats ON activity.queryid = stats.queryid
WHERE activity.state = 'active' AND activity.query_start < NOW() - INTERVAL '5 minutes' AND stats.total_time > 1000;

--查询正在执行的慢SQL

SELECT pid,query,query_id,  usename, application_name, client_addr, state, query_start, now() - query_start AS query_duration
FROM pg_stat_activity
WHERE state = 'active' AND now() - query_start > INTERVAL '1 minute'
ORDER BY query_duration DESC;

--关闭慢SQL

SELECT pg_terminate_backend(<pid>);

--复制槽检查逻辑通道

select * from pg_create_logical_replication_slot('mdb_202405301556533_slot','wal2json');

--设置大小写不敏感

set lower_case_table_names = 1;

--授权用户SCHEMA中的ALL权限

GRANT ALL PRIVILEGES ON ALL TABLES IN SCHEMA SCHEMA_NAME TO USER_NAME;

--查询用户在schema中的权限

SELECT grantee, privilege_type
FROM information_schema.role_table_grants
WHERE table_schema = 'SCHEMA_NAME'
AND grantee = 'USER_NAME' GROUP BY grantee, privilege_type;

--回收用户在SCHEMA的权限

REVOKE  truncate ON ALL TABLES IN SCHEMA SCHEMA_NAME FROM USER_NAME;

--授权用户z在库中的权限

GRANT CREATE ON SCHEMA SCHEMA_NAME TO USER_NAME;
GRANT CREATE ON DATABASE DATABASE_NAME TO USER_NAME;

--查询当前连接数:

SELECT count(*) AS num_connections FROM pg_stat_activity;

--查询数据库大小:

SELECT pg_size_pretty(pg_database_size(current_database())) AS database_size;

--查询表空间使用情况:

SELECT
  spcname AS tablespace_name,
  pg_size_pretty(pg_tablespace_size(spcname)) AS space_used
FROM pg_tablespace;

--查看数据库备节点同异配置

select * from pg_stat_replication;

--创建database

CREATE DATABASE testdb2 OWNER db_user;

#使用模板创建database

create database db_name owner db_user TEMPLATE temp_name;

#查看数据库列表

\l+

#修改数据库名

ALTER DATABASE testdb1 RENAME TO testdb3;

#删除数据库

DROP DATABASE DATABASE_NAME;

--创建表及用户

create user user_name  password 'Test@1234' with sysadmin;--同时赋权超级管理员
create table test_ha.test_ha (instr_time timestamp);--创建表并指定用户
create database db_name owner user_name;--创建库并指定所有者

--元命令帮助(库内)

panweidb=# \?

#列举表

\dt

#查看表结构

\d table_name

#列举 schema

\dn

#查看索引

\di

#切换数据库(切库)

\c db_name

--查看数据库运行参数当前取值

SHOW max_connections;#查看指定参数
SELECT * FROM pg_settings WHERE NAME='max_connections';#查看指定参数
SELECT * FROM pg_settings;#列举所有参数
SHOW all;#列举所有参数

--赋权

GRANT SELECT ON ALL TABLES IN SCHEMA scf_manage_uat_db001 TO bigetlview;
GRANT ALL PRIVILEGES ON ALL TABLES IN SCHEMA scf_manage_uat_db001 TO bigetlview;--表权限
GRANT USAGE ON SCHEMA scf_manage_uat_db001 TO bigetlview;--使用schema权限
GRANT REPLICATION TO bigetlview;
GRANT gs_role_replication TO bigetlview;
GRANT ALL PRIVILEGES ON DATABASE scf_manage_uat_db001 TO bigetlview;--库权限
GRANT ALL PRIVILEGES TO bigetlview;--所有权限
ALTER USER bigetlview SYSADMIN;--超级管理员权限

--解除只读

alter system set default_transaction_read_only=off;
default_transaction_read_only

--查看只读

SHOW transaction_read_only;

扫描二维码推送至手机访问。

版权声明:本文由撒谎信发布,如需转载请注明出处。

本文链接:https://www.yangwuyu.com/?id=3

分享给朋友:

“opengauss常用命令” 的相关文章

Oracle-rman异机恢复

Oracle-rman异机恢复

rman异机恢复环境准备主机ip操作系统版本数据库版本数据库状态源端19c192.168.174.130RHEL7.6Oracle19c实例正常运行目标端test192.168.174.140RHEL7.6Oracle19c仅安装数据库软件 源端创建文件夹用来存储备份文件su -...

Prometheus套装

Prometheus套装

node_exporter下载:(目标机)https://github.com/prometheus/node_exporter/releases解压后启动tar -xvf node*.tar.gz启动:nohup /opt/node_exporter/node_exp...

MySQL系列-join的用法

MySQL系列-join的用法

导言        在数据库操作中,JOIN是实现多表关联查询的核心机制。相较于嵌套子查询和IN操作符,合理使用JOIN能显著提升查询性能,优化执行计划,并增强SQL代码的可读性与可维护性。本文将系统解析MySQL中的J...

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。