openGauss轻量版远程连接,数据库表权限管理
这里只讲openGauss轻量版的使用,其他版本不管。
·
这里只讲openGauss轻量版的使用,其他版本不管
远程管理
远程管理工具
https://opengauss.org/zh/download/archive/?version=5.0.2%20(LTS)
这个配置文件有修改 Data Studio.ini ,添加jdk11 以上的路径
-vm
C:\Program Files\RedHat\java-17-openjdk-17.0.11.0.9-1\bin
打开Data Studio.exe 可以直接运行
关闭防火墙
你系统没装 firewalld,用 sudo ufw status 或 sudo iptables -L 看看是谁在挡 ICMP,关掉就能 ping 通。
这个版本没有防火墙,没有ufw,第三检查顺序才是iptables
sudo iptables -L -n
如果看到一堆规则,说明 iptables 有拦截,可以临时清空规则测试:
sudo iptables -F
其他的写这参考吧
systemctl status firewalld
sudo systemctl status firewalld
sudo systemctl stop firewalld
############
cat /etc/os-release
看看是 Ubuntu、Kylin、CentOS 还是其他。
2. 检查是否有 ufw(Ubuntu/Kylin 常见):
sudo ufw status
如果输出是 Status: active,说明防火墙开着,执行:
sudo ufw disable
###########
如果系统用的是 nftables:
sudo nft list ruleset
可以临时禁用:
sudo systemctl stop nftables
配置外网访问
远程访问功能
使用文本编辑器打开配置文件,例如使用 vim
vim /home/dong/wanyuan/oginstall/etc/postgresql.conf
# 设置监听地址
listen_addresses = '*'
# 允许来自任何 IP 的所有用户连接
vim /home/dong/wanyuan/ogdata/pg_hba.conf
# 远程改成sha256 ,不能用md5会报错
host all all 0.0.0.0/0 sha256
host all all ::/0 sha256
重启openGauss
gs_ctl restart -D /home/dong/wanyuan/ogdata


其他
确认配置文件位置
管理员登录命令行
SHOW config_file;
config_file
-------------------------------------------
/home/dong/wanyuan/ogdata/postgresql.conf
(1 row)
SHOW hba_file;
hba_file
---------------------------------------
/home/dong/wanyuan/ogdata/pg_hba.conf
(1 row)
在这里插入图片描述

配置新用户,管理员用户不能远程访问
-- 新建的用户是没有表权限
CREATE USER gsdbuser WITH PASSWORD '密码';
ALTER USER gsdbuser SET client_encoding TO 'utf8';
ALTER USER gsdbuser SET default_transaction_isolation TO 'read committed';
ALTER USER gsdbuser SET timezone TO 'Asia/Shanghai';
GRANT CONNECT ON DATABASE postgres TO gsdbuser;
-- 1. 把 gsdbuser 的密码加密方式改为 md5(兼容 Navicat)--这一步不用了,放弃Navicat了
-- ALTER USER gsdbuser WITH ENCRYPTED PASSWORD '密码';
-- 2. 可选:给 gsdbuser 建一个自己的库,gsdb
CREATE DATABASE gsdb OWNER gsdbuser;
连接信息
| 字段 | 填什么 |
|---|---|
| 主机 | 192.168.10.128 |
| 端口 | 5432 |
| 初始库 | gsdb |
| 用户名 | gsdbuser |
| 密码 | 密码 |
表权限管理
权限配置
搜索说:CREATE DATABASE gsdb OWNER gsdbuser;这一步以后,gsdbuser 在自己库 (gsdb) 内自动拥有 OWNER 的全部权限——实际没有权限
管理员用户登录当前开数据库
gsql -d gsdb -h 127.0.0.1 -p 5432 -U 管理员 -W 管理员密码
-- 管理员或 gsdbuser 执行
GRANT USAGE, CREATE ON SCHEMA public TO gsdbuser;
-- 把当前已存在的所有表/序列的全部权限给它
GRANT ALL PRIVILEGES ON ALL TABLES IN SCHEMA public TO gsdbuser;
GRANT ALL PRIVILEGES ON ALL SEQUENCES IN SCHEMA public TO gsdbuser;
-- 以后新建的表也要自动继承
ALTER DEFAULT PRIVILEGES IN SCHEMA public GRANT ALL ON TABLES TO gsdbuser;
ALTER DEFAULT PRIVILEGES IN SCHEMA public GRANT ALL ON SEQUENCES TO gsdbuser;
-- 在 gsdb 下测试sql
gsql -U gsdbuser -h 127.0.0.1 -d gsdb -W 密码
CREATE TABLE test1(id serial PRIMARY KEY, name varchar(100));
ALTER TABLE test1 ADD COLUMN age int;
DROP TABLE test1;
select * from test1;
远程连接
远程连接前先在本地测试
连接本机IP ,测试好后再去练远程
gsql -d gsdb -h 127.0.0.1 -p 5432 -U gsdbuser -W gsdb_2025
gsql -d gsdb -h 192.168.10.129 -p 5432 -U gsdbuser -W gsdb_2025
The account has been locked. 这个是账号被锁了,在管理员解锁
-- 解锁
ALTER USER gsdbuser ACCOUNT UNLOCK;
-- 再改密码(选一个之前没用过的)--不改也行
ALTER USER gsdbuser PASSWORD 'Gsdb@2025';
鲲鹏昇腾开发者社区是面向全社会开放的“联接全球计算开发者,聚合华为+生态”的社区,内容涵盖鲲鹏、昇腾资源,帮助开发者快速获取所需的知识、经验、软件、工具、算力,支撑开发者易学、好用、成功,成为核心开发者。
更多推荐



所有评论(0)