天天看点

从零开始搭建gbase8a集群环境

前言

本文章向在搭建gbase 8a环境但是遇到困难的朋友提供帮助

环境准备

linux环境搭建

gbase 8a安装包准备

linux环境搭建

这是linux环境的基本信息

从零开始搭建gbase8a集群环境

使用centos 7系统,系统镜像附链接:https://mirrors.tuna.tsinghua.edu.cn/centos/7.9.2009/isos/x86_64/CentOS-7-x86_64-DVD-2009.iso

选择基本网页服务器,右边全勾选

从零开始搭建gbase8a集群环境

耐心等待安装完成

1.关闭防火墙

systemctl disable firewalld.service
           

2.克隆两个虚拟机,然后更改ip

vi /etc/sysconfig/network-scripts/ifcfg-ens33 
           

如图

从零开始搭建gbase8a集群环境

gbase 8a安装包准备

下载gbase安装包 附链接

http://www.gbase8a.com/forum.php?mod=attachment&aid=NDg4fDkwNzNhZmJkfDE2NDU0MzAxNTh8ODExN3wzMjM2

将文件扔到opt路径下

从零开始搭建gbase8a集群环境

执行命令解压文件

tar xfj GBase8a_MPP_Cluster-NoLicense-FREE-8.6.2_build43-R20-redhat7.3-x86_64.tar.bz2
           

解压文件后会出现gcinstall目录

进入gcinstall并编辑demo.options文件

cd gcinstall
vi demo.options
           
从零开始搭建gbase8a集群环境

执行gcinstall.py

./gcinstall.py --silent=demo.options
           

两次确认后出现如下界面表示正在安装中

从零开始搭建gbase8a集群环境

耐心等待安装完成

切换到gbase用户

执行gcadmin查看集群状态

su gbase
gcadmin
           
从零开始搭建gbase8a集群环境

执行此命令配置集群主片备片 p为每台机器上的主片数量,d为备片数量

从零开始搭建gbase8a集群环境

使用以下命令查看

gcadmin showdistribution
           
从零开始搭建gbase8a集群环境

接下来对集群进行初始化,执行gccli进入数据库管理界面

gccli
           
从零开始搭建gbase8a集群环境

执行以下命令

此命令必须执行,否则无法正常使用gbase

从零开始搭建gbase8a集群环境

至此集群安装完毕,我们可以进行基本的测试

编写以下sql脚本依次执行

create database testdb;
create table testdb.testtable(col1 int,col2 varchar(20));
insert into testdb.testtable(col1,col2) values (1,'abcdefg');
select * from testdb.testtable;
           

结果如下,至此我们的数据库搭建已经完成

从零开始搭建gbase8a集群环境

当然 集群不一定非要安装多个节点,同样支持单节点的配置。

最后附上Jdbc的下载链接以及测试程序

http://www.gbase8a.com/forum.php?mod=attachment&aid=NDQxfDI0YTQ4OGVhfDE2NDU0MzI3MzZ8ODExN3wxMzE1

import java.sql.*;

public class GbaseTest {

    private String url = "jdbc:gbase://192.168.198.133:5258";
    private String username = "root";
    private String password = "";
    private String driver = "com.gbase,jdbc.Dirver";


    public Connection getConnection() {
        try {
            return DriverManager.getConnection(url, username, password);
        } catch (SQLException e) {
            throw new RuntimeException(e);
        }
    }

    public static void main(String[] args){
        GbaseTest gbaseTest = new GbaseTest();
        Connection conn = gbaseTest.getConnection();
        String sql = "select * from testdb.testtable";
        ResultSet rs;
        PreparedStatement ps;
        try {
            ps = conn.prepareStatement(sql);
            rs = ps.executeQuery();
            while (rs.next()) {
                System.out.println(Integer.toString(rs.getInt(1)) + '\t' + rs.getString(2));
            }
            rs.close();
            ps.close();
            conn.close();
        } catch (SQLException e) {
            e.printStackTrace();
        }

    }
}

           

继续阅读