【深入学习】国产南大通用数据库gbase系列

打印 上一主题 下一主题

主题 674|帖子 674|积分 2022

目次
GBase 8c--多模多态分布式数据库
gbase8c默认值
gbase8c安装目次结构
gbase8c数据库基本操作
启动/关闭gbase8c
一些数据库下令行常用操作
进入/退出数据库下令行
gbase8c设置用户名密码尝试次数不受限制
gbase8c配置ipv6可访问
gbase8c长途毗连
go语言实现长途毗连gbase8c
dbeaver毗连gbase8c
GBase 8s--基于共享存储的数据库集群
gbase8s默认值
gbase8s数据库基本操作
启动/制止数据库
检察端口状态
gbase8s配置ipv6和端口可访问
文件sqlhosts.gbaseserver
onconfig.gbaseserver文件
gbase8s长途毗连
go语言长途毗连gbase8s
dbeaver软件长途毗连gabse8s
GBase 8a--分布式逻辑数据仓库
gbase8a默认值
gbase8a长途毗连
go语言长途毗连gbase8a
dbeaver软件长途毗连gabse8a


GBase 8c--多模多态分布式数据库

GBase 8c是南大通用自主研发的一款多模多态的第三代智能分布式数据库,通过智能优化,智能运维,智能安全实现DB智能化,使GBase8c具备高性能、高可用、弹性伸缩、高安全性等智能特性。支持行存、列存、内存等多种存储模式,单机、主备式、分布式等多种部署形态和ORACLE、PG、MYSQL多种兼容模式,可以部署在物理机、虚拟机、容器、私有云和公有云,为关键行业核心系统、互联网业务系统和政企业务系统提供安全、稳固、可靠的数据存储和管理服务,满意各种应用场景。
gbase8c默认值

默认数据库名:postgres
默认端口:5432
默认用户名:gbase8c
默认密码:GBase123
gbase8c安装目次结构


gbase8c数据库基本操作

启动/关闭gbase8c

一样平常格式:gs_ctl二进制文件路径 start -D  数据库结点路径
   # 启动数据库服务: start -D 数据库结点路径(一样平常都在data下)
  /home/gbase/gbase8c_pkg/bin/gs_ctl start -D /home/gbase/gbase8c_pkg/data/single_node
  
  # 制止数据库服务
  /home/gbase/gbase8c_pkg/bin/gs_ctl stop -D /home/gbase/gbase8c_pkg/data/single_node
  一些数据库下令行常用操作

进入/退出数据库下令行

   # 进入数据库下令行
  gsql -d 数据库名 -p 端口号
  
  # 查询参数failed_login_attempts(限制用户名密码尝试次数,若超出,则锁定该用户名账户)
  show failed_login_attempts;
  
  # 退出数据库下令行
  \q
  

  gbase8c设置用户名密码尝试次数不受限制

    # 设置用户名密码尝试次数不受限制
  gs_guc reload -D /home/gbase/gbase8c_pkg/data/single_node -c "failed_login_attempts=0";
  


gbase8c配置ipv6可访问

对于pg_hba.conf文件,假如主机必要长途毗连数据库,必须在数据库系统的配置文件pg_hba.conf中增加此主机的信息,而且举行客户端接入认证。
配置文件pg_hba.conf存放在数据库的数据目次(../data/xxx-node/)里。hba(host-based authentication)表示是基于主机的认证
   # 修改配置文件pg_hba.conf
  vim /gbase8c安装路径/data/single_node/pg_hba. conf
  
  # 在文件pg_hba. conf中增加一行,配置允许任意ipv6地址可以以任意用户毗连到本机任意数据库
  host         all         all         ::         sha256
  
  # 然后重启数据库
  当然,也可以在gbase8c下令行执行下令完成配置ipv6可访问
   # 配置允许 IP 地址为 10.10.0.30 的客户端以“jack”用户毗连到本机
  gs_guc set -N all -I all -h "host all jack 10.10.0.30/32 sha256"
  pg_hba.conf 文件的格式是一行写一条信息,表示一个认证规则,空白和注释(以#开 头)被忽略 
文件中一样平常格式,下面四种之一
   local DATABASE USER METHOD [OPTIONS]
  host DATABASE USER ADDRESS METHOD [OPTIONS]
  hostssl DATABASE USER ADDRESS METHOD [OPTIONS]
  hostnossl DATABASE USER ADDRESS METHOD [OPTIONS]
  gbase8c长途毗连

go语言实现长途毗连gbase8c

可以用opengauss驱动毗连gbase8c
  1. package main
  2. import (
  3.    "database/sql"
  4.    "fmt"
  5.    _ "gitee.com/opengauss/openGauss-connector-go-pq"
  6. )
  7. func main() {
  8.    connStr := "host=xx.xx.xx.xx port=5432 user=gbase8c password=GBase123 dbname=postgres sslmode=disable"
  9.    db, err := sql.Open("opengauss", connStr)
  10.    if err != nil {
  11.       fmt.Println("open error:", db)
  12.       return
  13.    }
  14.    defer db.Close()
  15.    err = db.Ping()
  16.    if err != nil {
  17.       fmt.Println("Ping error:", db)
  18.       return
  19.    }
  20.    fmt.Println("success")
  21. }
  22. ###运行结果显示success即为连接成功
复制代码
dbeaver毗连gbase8c

dbeaver中默认没有gbase8c相关驱动,得本身创建
新建驱动器


添加jar驱动文件


设置驱动url


类名和url中的驱动名保持一致

新建数据库毗连




GBase 8s--基于共享存储的数据库集群

GBase 8s是天津南大通用数据技术股份有限公司自主研发的、成熟稳固的基于共享存储的数据库集群,拥有自主知识产权。产物到达安全数据库四级标准(国际B2),支持国密算法,支持SQL92/99、ODBC、JDBC、ADO.NET、GCI(OCI/OCCI)、Python接口等国际数据库规范和开辟接口。支持集中式部署、共享存储高可用部署、两地三中心高可用部署,具备高容量、高并发、高性能等特性。
gbase8s默认值

默认数据库名:testdb
默认端口:9088
默认用户名:gbasedbt
默认密码:GBase123
gbase8s数据库基本操作

启动/制止数据库

   # 进入docker拉的gbase8s容器后台
  su gbasedbt
  cd ~
  
  # 启动下令
  oninit -vy
  
  # 制止下令
  onmode -ky
  

检察端口状态

    # 检察绑定端口状态
  onstat -g ntt
  
  gbase8s配置ipv6和端口可访问

sqlhosts.gbaseserver和onconfig.gbaseserver是gbase8s数据库的配置文件,可修改此文件类更改数据库的ip和端口配置
文件sqlhosts.gbaseserver

文件中,每一行的规则是: 服务名名字 onsoctcp IP地址 端口号(若是这里的服务名被修改了,则onconfig.gbaseserver中对应感到服务名也应一同修改)
   vim /opt/GBASE/gbase/etc/sqlhosts.gbaseserver
  # gbaseserver onsoctcp 0.0.0.0 9088代表可以通过任意ipv4地址长途访问该数据库
  

  
  onconfig.gbaseserver文件

文件中,DBSERVERNAME gbaseserver是指定ipv4的服务名为gbaseserver,DBSERVERALIASES gbaseserver_ip6是指定ipv6的服务名为gbaseserver_ip6
    # 更改onconfig.gbaseserver文件中的ipv4或ipv6的服务名字
  vim /opt/GBASE/gbase/etc/onconfig.gbaseserver
  

  gbase8s长途毗连

go语言长途毗连gbase8s

查了下,目前gbase8s在go语言中没有写好的毗连驱动,若是要通过go语言实现长途毗连,必要抓包分析报文,通过模仿dbeaver长途毗连gabse8s时的收发包过程,用go语言中的net包中的Write()和Read()函数实现长途毗连。
至于发包内容,必要借助dbeaver毗连时发的包,然后拼接上本身数据库的用户名密码数据库名信息即可
数据包交互过程中,gabse8s的数据库密码是颠末了专用加密的,加密算法在其官方有介绍。可通过官方提供的二进制文件gbspwdenc对密码举行加密。详见该网址GBase 8s 传输加密SSL配置 | GBase 8s开辟与管理

dbeaver软件长途毗连gabse8s

新建驱动器,添加jar驱动文件

设置驱动url

新建数据库毗连

GBase 8a--分布式逻辑数据仓库

南大通用自主研发的GBase 8a MPP Cluster是大数据时代成熟的分析型 MPP 数据库。具有联邦构架、海量数据分布式、高效压缩、高效存储结构、智能索引、灵活的数据分布、在线高性能扩展、高并发、高可用、高安全性、易维护、高效加载等核心优势。
gbase8a默认值

默认数据库名:gbase
默认端口:5258
gbase8a长途毗连

go语言长途毗连gbase8a

go语言可通过mysql的内置数据库毗连函数实现对gbase8a的长途毗连
  1. package main
  2. import (
  3.         "database/sql"
  4.         "fmt"
  5.         _ "github.com/go-sql-driver/mysql"
  6. )
  7. func main() {
  8.         ip := "xx.xx.xx.xx"  //ip
  9.         port := "5258"    //port
  10.         usr := "root"     //数据库用户名
  11.         password := "root"    //数据库密码
  12.         sid := "gbase"    //数据库名
  13.         connStr := fmt.Sprintf("%s:%s@tcp(%s:%s)/%s?charset=utf8&parseTime=true&loc=Local", usr, password, ip, port, sid)
  14.         db, err := sql.Open("mysql", connStr)
  15.         if err != nil {
  16.                 fmt.Println("open error", err)
  17.                 return
  18.         }
  19.         err = db.Ping()  //err为nil即为连接成功
  20.         if err != nil {
  21.                 fmt.Println("ping error", err)
  22.                 return
  23.         }
  24.         fmt.Println("success")
  25. }
复制代码
dbeaver软件长途毗连gabse8a

新建驱动器,添加jar驱动文件

设置驱动url

新建数据库毗连,输入用户名、密码、数据库名举行毗连




免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

老婆出轨

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表