GBase 8c GDCA培训认证【环境准备、安装】

1. 环境准备

相关配置要求如下:

  • 配置:内存16G以上(最好16G),硬盘 20G以上,固定IP地址和mac地址;镜像包(Centos7.9)下载,root 账户密码6个1:111111(推荐);各节点IP是同一网段,并互相能连通;关闭防火墙、关闭seLinux服务

  • 安装包和镜像下载https://blog.csdn.net/wiserhowe/article/details/128833346

  • 连接linux的工具(任意一个即可)
    Putty、Xshell、SecureCRT、SecureFX 等

其他相关资料:

2. 安装过程

  1. 检查了解环境
[root@ufo001 ~]# free -m
              total        used        free      shared  buff/cache   available
Mem:          15362         385       14610           0         366       14713
Swap:             0           0           0
[root@ufo001 /]# df  -Th
Filesystem     Type      Size  Used Avail Use% Mounted on
devtmpfs       devtmpfs  7.5G     0  7.5G   0% /dev
tmpfs          tmpfs     7.6G     0  7.6G   0% /dev/shm
tmpfs          tmpfs     7.6G  540K  7.6G   1% /run
tmpfs          tmpfs     7.6G     0  7.6G   0% /sys/fs/cgroup
/dev/vda1      ext4       40G  2.1G   36G   6% /
tmpfs          tmpfs     1.6G     0  1.6G   0% /run/user/0
  1. 针对内存 4G 的节点,需要增加 8G SWAP 才能安装成功(此处,内存16G,其实不需要加 8G SWAP)
# 创建 8G 的 Swap 文件
[root@ufo001 /]# dd if=/dev/zero of=/etc/swapfile bs=1024 count=8192000
8192000+0 records in
8192000+0 records out
8388608000 bytes (8.4 GB) copied, 41.2087 s, 204 MB/s

# 制作为 Swap 文件
[root@ufo001 /]# mkswap /etc/swapfile
Setting up swapspace version 1, size = 8191996 KiB
no label, UUID=52381280-e69b-4701-963a-32b5254d0544

# 令 Swap 文件生效
[root@ufo001 /]# swapon /etc/swapfile
swapon: /etc/swapfile: insecure permissions 0644, 0600 suggested.

# 查看当前SWAP
[root@ufo001 /]# swapon -s
Filename			Type		Size    	Used    	Priority
/etc/swapfile		file    	8191996 	0       	-2

# 自动挂载,追加 /etc/swapfile swap swap defaults 0 0
[root@ufo001 /]# vim /etc/fstab
#
# /etc/fstab
# Created by anaconda on Wed Feb  8 02:15:09 2023
#
# Accessible filesystems, by reference, are maintained under '/dev/disk'
# See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info
#
UUID=627df7a6-36cf-4152-ac9c-326dc141c9a2 /                       ext4    defaults        1 1
/etc/swapfile swap swap defaults 0 0

# 查看创建好的 SWAP,已经增长了 8G
[root@ufo001 /]# free -m
              total        used        free      shared  buff/cache   available
Mem:          15362         390        6376           0        8595       14643
Swap:          7999           0        7999
  1. 集群服务配置(三个节点,按照上述步骤安装三台机器)
IP账号密码节点角色
172.16.144.1root######gha_server(高可用服务)、dcs(分布式配置存储)、gtm(全局事务管理)、coordinator(协调器)
172.16.144.2root######datanode(数据节点) 1
172.16.144.3root######datanode(数据节点) 2
  1. 确保集群每个节点的防火墙是关闭的
# 如果系统提示以下信息说明防火墙已被禁用
[root@ufo001 ~]# systemctl status firewalld.service
firewalld.service - firewalld - dynamic firewall daemon
   Loaded: loaded (/usr/lib/systemd/system/firewalld.service; disabled; vendor preset: enabled)
   Active: inactive (dead)
     Docs: man:firewalld(1)

# 如果防火墙没有关闭,则执行
# systemctl stop firewalld.service
# systemctl disable firewalld.service
# 以上两条命令关闭防火墙并禁止防火墙开机自启动
  1. 确保每个节点的 SELINUX 是关闭的
# 如果系统提示以下信息说明 selinux 已被禁用
[root@ufo001 ~]# sestatus
SELinux status:                 disabled

# 如果 SELINUX 没有关闭,需要编辑当前节点的 selinux 配置文件。
# 将 SELINUX 关键字的值修改为 disabled,存盘退出,
[root@ufo001 ~]# vim /etc/selinux/config
SELINUX=enforcing
SELINUXTYPE=targeted

# 重启操作系统,生效
[root@ufo001 ~]# shutdown -r

  1. 重新设置主机名
# 三个节点重新设置主机名
[root@ufo001 ~]# hostnamectl set-hostname ufo001
[root@ufo002 ~]# hostnamectl set-hostname ufo002
[root@ufo003 ~]# hostnamectl set-hostname ufo003

# 配置三个节点的 IP 主机名映射
# 编辑三个节点的 hosts 文件
[root@ufo001 ~]# vim /etc/hosts
# 将以下三行信息追加到 hosts 文件中

172.16.144.1    ufo001  ufo001
172.16.144.2    ufo002  ufo002
172.16.144.3    ufo003  ufo003
  1. 创建集群安装用户(每个节点都需要执行)
[root@ufo001 ~]# useradd gbase
[root@ufo001 ~]# passwd gbase
Changing password for user gbase.
New password:
BAD PASSWORD: The password fails the dictionary check - it is too simplistic/systematic
Retype new password:
passwd: all authentication tokens updated successfully.

[root@ufo001 ~]# visudo
root    ALL=(ALL)       ALL
gbase   ALL=(ALL)       NOPASSWD:ALL

注意:个别操作系统,经过以上的设置后,gbase 用户执行 sudo 命令时,第一次还是有密码提示。需要有以下补救措施:

# root 账户下进入 /etc/sudoers.d/ 目录
cd /etc/sudoers.d/
# 生成新文件 gbase
vim gbase
# 添加如下信息后,存盘即可:
gbase ALL=(ALL) NOPASSWD:ALL

  1. 集群之间创建互信(每个节点都需要执行)

参考:https://blog.csdn.net/qq_42226855/article/details/112691157

[gbase@ufo001 ~]$ mkdir ~/.ssh
[gbase@ufo001 ~]$
[gbase@ufo001 ~]$ chmod 700 ~/.ssh
[gbase@ufo001 ~]$
[gbase@ufo001 ~]$ ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/home/gbase/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /home/gbase/.ssh/id_rsa.
Your public key has been saved in /home/gbase/.ssh/id_rsa.pub.
The key fingerprint is:
SHA256:d654ol43lMWPxNLtp+U5rIpQhVACkEINxhy/Q0TziOY gbase@ufo001
The key is randomart image is:
+---[RSA 2048]----+
|+===o..o..       |
|.++o+   o .+ .   |
| o.+ .   ...* .  |
|o . .     .= +   |
| E o    S.+ o o o|
|    .   .o o  .=.|
|       .. o . .+.|
|       .oooo  . .|
|     .o..+....   |
+----[SHA256]-----+

[gbase@ufo001 ~]$ echo 'StrictHostKeyChecking no' >> ~/.ssh/config; echo 'UserKnownHostsFile ~/.ssh/known_hosts' >> ~/.ssh/config; chmod 644 ~/.ssh/config
[gbase@ufo001 ~]$ ssh-copy-id gbase@172.16.144.1
[gbase@ufo001 ~]$ ssh-copy-id gbase@172.16.144.2
[gbase@ufo001 ~]$ ssh-copy-id gbase@172.16.144.3


  1. 系统时间同步设置(每个节点都有操作,即时钟同步)

参考:https://blog.csdn.net/lixiangchibang/article/details/116422775


[root@ufo001 ~]# vim /etc/ntp.conf
# Access Control Support
restrict    default kod nomodify notrap nopeer noquery
restrict -6 default kod nomodify notrap nopeer noquery
restrict 127.0.0.1
restrict 192.168.0.0 mask 255.255.0.0 nomodify notrap nopeer noquery
restrict 172.16.0.0 mask 255.240.0.0 nomodify notrap nopeer noquery
restrict 100.64.0.0 mask 255.192.0.0 nomodify notrap nopeer noquery
restrict 10.0.0.0 mask 255.0.0.0 nomodify notrap nopeer noquery
# local clock
server 127.127.1.0
fudge  127.127.1.0 stratum 10

[root@ufo002 ~]# vim /etc/ntp.conf
# local clock
server 172.16.144.1
fudge  172.16.144.1 stratum 10

[root@ufo003 ~]# vim /etc/ntp.conf
# local clock
server 172.16.144.1
fudge  172.16.144.1 stratum 10

# CentOS 版本不同,启动方式不同
# 启动NTP服务
sudo service ntpd start 
# 设置 NTP 服务开机自启
sudo chkconfig ntpd on 
  1. 上传安装包
# 使用的 Putty 工具,上传安装包到所有节点,目录 /home/gbase/gbase_package
C:\Users\zhaoyuntao>pscp C:\Users\zhaoyuntao\Desktop\GBase8cV5_S3.0.0B76_centos7.8_x86_64.tar.gz gbase@47.99.146.16:/home/gbase/gbase_package/
gbase@47.99.146.16's password:
GBase8cV5_S3.0.0B76_cento | 262299 kB | 1847.2 kB/s | ETA: 00:00:00 | 100%

[gbase@ufo001 gbase_package]$ scp GBase8cV5_S3.0.0B76_centos7.8_x86_64.tar.gz gbase@172.16.144.2:/home/gbase/gbase_package/
GBase8cV5_S3.0.0B76_centos7.8_x86_64.tar.gz                                                                100%  256MB 186.0MB/s   00:01

[gbase@ufo001 gbase_package]$ scp GBase8cV5_S3.0.0B76_centos7.8_x86_64.tar.gz gbase@172.16.144.3:/home/gbase/gbase_package/
GBase8cV5_S3.0.0B76_centos7.8_x86_64.tar.gz 

[gbase@ufo001 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

[gbase@ufo001 gbase_package]$ tar xvf GBase8cV5_S3.0.0B76_CentOS_x86_64_om.tar.gz
...

  1. 编辑部署相关的配置文件(仅操作管理节点)

注意:配置文件中的缩进一定要对齐,否则后边执行安装会读取文件报错

[gbase@ufo001 gbase_package]$ vim /home/gbase/gbase_package/gbase.yml
gha_server:
  - gha_server1:
      host: 172.16.144.1
      port: 20001
      
dcs:
  - host: 172.16.144.1
    port: 2379
  - host: 172.16.144.2
    port: 2379
  - host: 172.16.144.3
    port: 2379
    
gtm:
  - gtm1:
      host: 172.16.144.1
      agent_host: 172.16.144.1
      role: primary
      port: 6666
      agent_port: 8001
      work_dir: /home/gbase/data/gtm/gtm1
      
coordinator:
  - cn1:
      host: 172.16.144.1
      agent_host: 172.16.144.1
      role: primary
      port: 5432
      agent_port: 8003
      work_dir: /home/gbase/data/coord/cn1

datanode:
  - dn1:
      - dn1_1:
          host: 172.16.144.2
          agent_host: 172.16.144.2
          role: primary
          port: 15432
          agent_port: 8005
          work_dir: /home/gbase/data/dn1/dn1_1
  - dn2:
      - dn2_1:
          host: 172.16.144.3
          agent_host: 172.16.144.3
          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
  1. 执行安装(主节点)
[gbase@ufo001 ~]$ cd /home/gbase/gbase_package/script
[gbase@ufo001 script]$ ./gha_ctl install -c gbase -p /home/gbase/gbase_package
{
    "ret":-1,
    "msg":"Host localhost install or upgrade dependency {'bzip2': None, 'libaio': None} failed!  Host 172.16.144.2 install or upgrade depende                   ncy {'bzip2': None, 'libaio': None} failed!  Host 172.16.144.3 install or upgrade dependency {'bzip2': None, 'libaio': None} failed!  "
}
# 安装报错,缺少依赖包
[root@ufo001 sudoers.d]# yum install bzip2 -y
[root@ufo001 sudoers.d]# yum install libaio -y

# 如下所示,安装成功
[gbase@ufo001 script]$ ./gha_ctl install -c gbase -p /home/gbase/gbase_package
{
    "ret":0,
    "msg":"Success"
}

  1. 节点状态检查
[gbase@ufo001 script]$ ./gha_ctl monitor -l http://172.16.144.1:2379
{
    "cluster": "gbase",
    "version": "V5_S3.0.0B76",
    "server": [
        {
            "name": "gha_server1",
            "host": "172.16.144.1",
            "port": "20001",
            "state": "running",
            "isLeader": true
...[gbase@ufo001 script]$ ./gha_ctl monitor -l http://172.16.144.1:2379 -H
+----+-------------+--------------+-------+---------+--------+
| No |     name    |     host     |  port |  state  | leader |
+----+-------------+--------------+-------+---------+--------+
| 0  | gha_server1 | 172.16.144.1 | 20001 | running |  True  |
+----+-------------+--------------+-------+---------+--------+
+----+------+--------------+------+---------------------------+---------+---------+
| No | name |     host     | port |          work_dir         |  state  |   role  |
+----+------+--------------+------+---------------------------+---------+---------+
| 0  | gtm1 | 172.16.144.1 | 6666 | /home/gbase/data/gtm/gtm1 | running | primary |
+----+------+--------------+------+---------------------------+---------+---------+
+----+------+--------------+------+----------------------------+---------+---------+
| No | name |     host     | port |          work_dir          |  state  |   role  |
+----+------+--------------+------+----------------------------+---------+---------+
| 0  | cn1  | 172.16.144.1 | 5432 | /home/gbase/data/coord/cn1 | running | primary |
+----+------+--------------+------+----------------------------+---------+---------+
+----+-------+-------+--------------+-------+----------------------------+---------+---------+
| No | group |  name |     host     |  port |          work_dir          |  state  |   role  |
+----+-------+-------+--------------+-------+----------------------------+---------+---------+
| 0  |  dn1  | dn1_1 | 172.16.144.2 | 15432 | /home/gbase/data/dn1/dn1_1 | running | primary |
| 1  |  dn2  | dn2_1 | 172.16.144.3 | 20010 | /home/gbase/data/dn2/dn2_1 | running | primary |
+----+-------+-------+--------------+-------+----------------------------+---------+---------+
+----+--------------------------+--------+---------+----------+
| No |           url            |  name  |  state  | isLeader |
+----+--------------------------+--------+---------+----------+
| 0  | http://172.16.144.3:2379 | node_2 | healthy |   True   |
| 1  | http://172.16.144.2:2379 | node_1 | healthy |  False   |
| 2  | http://172.16.144.1:2379 | node_0 | healthy |  False   |
+----+--------------------------+--------+---------+----------+


3. 数据库的启动与停止

  • 停止数据库服务
[gbase@ufo001 script]$ ./gha_ctl stop all -l http://172.16.144.1:2379
{
    "ret":0,
    "msg":"Success"
}
  • 启动数据库服务
[gbase@ufo001 script]$ ./gha_ctl start all -l http://172.16.144.1:2379
{
    "ret":0,
    "msg":"Success"
}

4. 数据库卸载

在主节点(172.16.144.1)执行以下命令即可:

# 停止所有节点的集群服务:
[gbase@ufo001 script]$ ./gha_ctl stop all -l http://172.16.144.1:2379
{
    "ret":0,
    "msg":"Success"
}
# 集群程序的卸载:
[gbase@ufo001 script]$ ./gha_ctl uninstall -l http://172.16.144.1:2379
{
    "ret":0,
    "msg":"Success"
}
# 移除 dcs 集群:
[gbase@ufo001 script]$ ./gha_ctl destroy dcs -l http://172.16.144.1:2379
{
    "ret":0,
    "msg":"Success"
}

5. 数据库连接与测试

在主节点(172.16.144.1)执行。

[gbase@ufo001 script]$ gsql -d postgres -p 5432
gsql ((multiple_nodes GBase8cV5 3.0.0B76 build 47948f99) compiled at 2023-02-27 16:04:20 commit 0 last mr 1232 )
Non-SSL connection (SSL connection is recommended when requiring high-security)
Type "help" for help.

postgres=#
postgres=#
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)
### 回答1: gbase8c认证考试是一项针对数据库相关知识和技能的考试。在这个考试中,学生需要通过理论和实践两部分来展示自己的能力。 理论部分要求学生掌握数据库的基本概念和原理,了解常见的数据库管理系统以及其特点和使用方法。学生需要熟悉SQL语言,包括SQL查询、SQL函数、SQL事务等。还需要明白数据库设计的基本原则,包括表的设计、关系的建立等。 实践部分要求学生通过实际操作来展示自己的数据库管理和维护能力。学生需要搭建数据库环境,创建数据库表格,并能够运行SQL查询和更新操作。还需要学习使用数据库备份和还原工具,了解数据库性能优化的方法和技巧。 为了准备这个考试,学生可以通过参加培训课程、阅读相关教材和参考书籍来增加自己的知识储备。还可以通过做练习题、参加模拟考试来提高自己的应试能力。此外,学生还可以通过实际项目来积累实践经验,并在实践中发现和解决问题。 总之,gbase8c认证考试是一项对数据库知识和技能的考核,要求学生掌握数据库的基本概念和原理,并具备数据库管理和维护的实践能力。通过系统的学习和实践准备,学生有望成功通过这个考试。 ### 回答2: Gbase8c认证考试是针对数据库领域的一个专业认证考试。以下是对该考试题目的回答: Gbase8c认证考试涵盖了数据库相关的知识和技能,是评估专业人员数据库能力和技术水平的重要标准之一。考试题目一般包括以下几个方面的内容: 第一,数据库基础知识。这部分内容主要考察考生对数据库系统的基本概念、体系结构和存储结构的了解,要求考生熟悉数据库的分类、数据库模型和数据库管理系统等相关概念。 第二,SQL语言应用。此部分考察考生对SQL语言的熟练掌握程度,包括对SQL语句的编写和优化、SQL语言的基本操作和高级应用等方面的知识。 第三,数据库性能优化。这一块考察的是考生对数据库性能优化的理解和实践能力,要求考生了解数据库性能瓶颈的原因和解决方法,掌握数据库调优的基本方法和技巧。 第四,数据库安全与高可用。这部分内容主要考察考生对数据库安全性和高可用性的了解,包括对数据库的备份和恢复、故障转移和容灾等方面的知识。 第五,数据库管理。此部分考察的是考生对数据库管理的能力,包括数据库的创建和维护、数据备份和恢复、性能监控和故障处理等方面的知识。 最后,考试可能还会涉及到一些实际案例分析和问题解决等内容,要求考生能够综合运用所学知识解决实际问题。 总的来说,Gbase8c认证考试题目的设计旨在全面评估考生在数据库领域的技术水平和实践能力,要求考生既要有扎实的理论基础,又要具备一定的实际操作经验。考生需要认真学习和掌握数据库相关知识,加强实践操作,以应对考试的挑战。 ### 回答3: gbase8c认证考试是一个IT行业的专业认证考试,考察的是与数据库管理和操作相关的知识和技能。 该考试的题目包含数据库设计、数据库管理、数据库优化、SQL语言等方面的内容。考生需要理解数据库的基本概念和原理,并能够运用相关工具和技术进行数据库的设计、管理和维护。 在考试中,可能会涉及到以下类型的题目: 1.选择题:要求考生从给出的选项中选择一个正确的答案,考察对相关概念的理解和掌握程度。 例如:以下哪个选项不是数据库管理的主要任务? a) 数据库的备份与恢复 b) 数据库的性能优化 c) 数据库的日常维护 d) 数据库的网络设置 2.填空题:要求考生填写一个或多个缺失的单词或短语,考察对相关术语和概念的记忆和理解。 例如:数据库中存储数据的最小单位是______。 3.应用题:要求考生运用已学知识和技能解决实际问题,考察对数据库管理和操作的能力。 例如:某公司使用MySQL数据库存储客户信息,请编写SQL语句查询出年龄大于30岁的客户信息。 总的来说,gbase8c认证考试涵盖了数据库管理和操作的各个方面,考察考生在数据库设计、管理、优化和SQL语言运用等方面的能力。合格的考生需要具备扎实的数据库知识和实际操作经验。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值