【国产数据库】GBase学习③ - Gbase安装
1.涉及语句
数据库启动:
/home/gbase/gbase_package/script/gha_ctl start all -l http://192.168.56.200:2379
数据库停止:
/home/gbase/gbase_package/script/gha_ctl stop all -l http://192.168.56.200:2379
数据库状态检查:
gha_ctl monitor -l http://192.168.56.200:2379
gha_ctl monitor -l http://192.168.56.200:2379 -H
2.安装包
解压安装包
$ cd /home/gbase/gbase_package
$ tar xvf GBase8cV5_S3.0.0B76_centos7.8_x86_64.tar.gz
解压成功新增四个文件
GBase8cV5_S3.0.0B76_CentOS_x86_64_om.sha256
GBase8cV5_S3.0.0B76_CentOS_x86_64_om.tar.gz
GBase8cV5_S3.0.0B76_CentOS_x86_64_pgpool.tar.gz
GBase8cV5_S3.0.0B76_CentOS_x86_64.sha256
GBase8cV5_S3.0.0B76_CentOS_x86_64.tar.bz2
再次解压
$ tar xvf GBase8cV5_S3.0.0B76_CentOS_x86_64_om.tar.gz
3.编辑集群部署文件(gbase8c.yml)
[192.168.56.200]$ vi /home/gbase/gbase_package/gbase.yml
修改如下——
gha_server:
- gha_server1:
host: 10.168.10.70
port: 20001
dcs:
- host: 10.168.10.70
port: 2379
- host: 10.168.10.71
port: 2379
- host: 10.168.10.72
port: 2379
gtm:
- gtm1:
host: 10.168.10.70
role: primary
port: 6666
agent_port: 8001
work_dir: /home/gbase/data/gtm/gtm1
coordinator:
- cn1:
host: 10.168.10.70
role: primary
port: 5432
agent_port: 8003
work_dir: /home/gbase/data/coord/cn1
datanode:
- dn1:
- dn1_1:
host: 10.168.10.71
role: primary
port: 15432
agent_port: 8005
work_dir: /home/gbase/data/dn1/dn1_1
- dn2:
- dn2_1:
host: 10.168.10.72
role: primary
port: 20010
agent_port: 8007
work_dir: /home/gbase/data/dn2/dn2_1
env:
# cluster_type allowed values: multiple-nodes, single-inst, default is multiple-nodes
cluster_type: multiple-nodes
pkg_path: /home/gbase/gbase_package # 安装包所在目录
prefix: /home/gbase/gbase_db # 运行目录
version: V5_S3.0.0B76
user: gbase
port: 22
# constant:
# virtual_ip: 100.0.1.254/24
4.执行安装脚本
[192.168.56.200]$ cd /home/gbase/gbase_package/script
[192.168.56.200]$ ./gha_ctl install -c gbase -p /home/gbase/gbase_package
A. -c 参数:数据库名称,缺省 gbase;
B. -p 参数:配置文件路径,缺省 /home/gbase。
执行时间 3+ 分钟,安装结束后,脚本会提示
{
"ret":0,
"msg":"Success"
}
集群安装成功!
5.节点状态检查
执行一:
[10.168.10.70]$ gha_ctl monitor -l http://192.168.56.200:2379
结果如下,说明集群安装正常,数据服务启动中
{
"cluster": "gbase",
"version": "V5_S3.0.0B76",
"server": [
{
"name": "gha_server1",
"host": "10.168.10.70",
"port": "20001",
"state": "running",
"isLeader": true
}
],
"gtm": [
{
"name": "gtm1",
"host": "10.168.10.70",
"port": "6666",
"workDir": "/home/gbase/data/gtm/gtm1",
"agentPort": "8001",
"state": "running",
"role": "primary"
}
],
"coordinator": [
{
"name": "cn1",
"host": "10.168.10.70",
"port": "5432",
"workDir": "/home/gbase/data/coord/cn1",
"agentPort": "8003",
"state": "running",
"role": "primary",
"central": true
}
],
"datanode": {
"dn1": [
{
"name": "dn1_1",
"host": "10.168.10.71",
"port": "15432",
"workDir": "/home/gbase/data/dn1/dn1_1",
"agentPort": "8005",
"state": "running",
"role": "primary"
}
],
"dn2": [
{
"name": "dn2_1",
"host": "10.168.10.72",
"port": "20010",
"workDir": "/home/gbase/data/dn2/dn2_1",
"agentPort": "8007",
"state": "running",
"role": "primary"
}
]
},
"dcs": {
"clusterState": "healthy",
"members": [
{
"url": "http://10.168.10.71:2379",
"id": "47d645d70d059264",
"name": "node_1",
"isLeader": false,
"state": "healthy"
},
{
"url": "http://192.168.56.200:2379",
"id": "742a6fd575a41be4",
"name": "node_0",
"isLeader": true,
"state": "healthy"
},
{
"url": "http://10.168.10.72:2379",
"id": "9e108bbe22487cc7",
"name": "node_2",
"isLeader": false,
"state": "healthy"
}
]
}
}
执行二:
gha_ctl monitor -l http://192.168.56.200:2379 -H
+----+-------------+--------------+-------+---------+--------+
| No | name | host | port | state | leader |
+----+-------------+--------------+-------+---------+--------+
| 0 | gha_server1 | 10.168.10.70 | 20001 | running | True |
+----+-------------+--------------+-------+---------+--------+
+----+------+--------------+------+---------------------------+---------+---------+
| No | name | host | port | work_dir | state | role |
+----+------+--------------+------+---------------------------+---------+---------+
| 0 | gtm1 | 10.168.10.70 | 6666 | /home/gbase/data/gtm/gtm1 | running | primary |
+----+------+--------------+------+---------------------------+---------+---------+
+----+------+--------------+------+----------------------------+---------+---------+
| No | name | host | port | work_dir | state | role |
+----+------+--------------+------+----------------------------+---------+---------+
| 0 | cn1 | 10.168.10.70 | 5432 | /home/gbase/data/coord/cn1 | running | primary |
+----+------+--------------+------+----------------------------+---------+---------+
+----+-------+-------+--------------+-------+----------------------------+---------+---------+
| No | group | name | host | port | work_dir | state | role |
+----+-------+-------+--------------+-------+----------------------------+---------+---------+
| 0 | dn1 | dn1_1 | 10.168.10.71 | 15432 | /home/gbase/data/dn1/dn1_1 | running | primary |
| 1 | dn2 | dn2_1 | 10.168.10.72 | 20010 | /home/gbase/data/dn2/dn2_1 | running | primary |
+----+-------+-------+--------------+-------+----------------------------+---------+---------+
+----+--------------------------+--------+---------+----------+
| No | url | name | state | isLeader |
+----+--------------------------+--------+---------+----------+
| 0 | http://192.168.56.200:2379 | node_0 | healthy | False |
| 1 | http://10.168.10.72:2379 | node_1 | healthy | True |
+----+--------------------------+--------+---------+----------+
6.数据库启停
停止数据库服务
[10.168.10.70]$ /home/gbase/gbase_package/script/gha_ctl stop all -l http://192.168.56.200:2379
启动数据库服务
[10.168.10.70]$ /home/gbase/gbase_package/script/gha_ctl start all -l http://192.168.56.200:2379
7.卸载
在主节点(10.168.10.70)执行以下命令——
1、停止所有节点的集群服务
$ gha_ctl stop all -l http://192.168.56.200:2379
2、集群程序的卸载:
$ gha_ctl uninstall -l http://192.168.56.200:2379
3、移除 dcs 集群:
$ cd /home/gbase/gbase_package/script
$ ./gha_ctl destroy dcs -l http://192.168.56.200:2379
8.连接和 SQL 测试
在主节点执行
$ gsql -d postgres -p 5432
出现 postgres=# 操作符说明客户端工具 gsql 成功连接 8c 数据库
postgres=# create database testdb;
CREATE DATABASE
postgres=# create table student(ID int, Name varchar(10));
CREATE TABLE
postgres=# insert into student values(1, 'Mike'),(2,'John');
INSERT 0 2
postgres=# select * from student;
id | name
----±-----
1 | Mike
2 | John
(2 rows)