天天看點

從零開始搭建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();
        }

    }
}

           

繼續閱讀