diff --git "a/content/zh/post/lijun/figures/\345\255\246\346\240\241\346\225\260\346\215\256\346\250\241\345\236\213.png" "b/content/zh/post/lijun/figures/\345\255\246\346\240\241\346\225\260\346\215\256\346\250\241\345\236\213.png" new file mode 100644 index 0000000000000000000000000000000000000000..1499e6a001e4245159074c50a5a1c3530a11bbec Binary files /dev/null and "b/content/zh/post/lijun/figures/\345\255\246\346\240\241\346\225\260\346\215\256\346\250\241\345\236\213.png" differ diff --git "a/content/zh/post/lijun/figures/\351\207\221\350\236\215\346\225\260\346\215\256\346\250\241\345\236\213.png" "b/content/zh/post/lijun/figures/\351\207\221\350\236\215\346\225\260\346\215\256\346\250\241\345\236\213.png" new file mode 100644 index 0000000000000000000000000000000000000000..18bc4a92a1f59b0e17334a0ee161256896b71385 Binary files /dev/null and "b/content/zh/post/lijun/figures/\351\207\221\350\236\215\346\225\260\346\215\256\346\250\241\345\236\213.png" differ diff --git a/content/zh/post/lijun/title/title.png b/content/zh/post/lijun/title/title.png new file mode 100644 index 0000000000000000000000000000000000000000..912319f07cad56d38dd41efe4125c4959c0da394 Binary files /dev/null and b/content/zh/post/lijun/title/title.png differ diff --git "a/content/zh/post/lijun/\347\256\200\345\214\226\345\256\211\350\243\205\346\214\207\345\257\274.md" "b/content/zh/post/lijun/\347\256\200\345\214\226\345\256\211\350\243\205\346\214\207\345\257\274.md" new file mode 100644 index 0000000000000000000000000000000000000000..8856d19b75be96a529e18f0af3d15b85431582c3 --- /dev/null +++ "b/content/zh/post/lijun/\347\256\200\345\214\226\345\256\211\350\243\205\346\214\207\345\257\274.md" @@ -0,0 +1,253 @@ ++++ +title = "openGauss简化安装指导" + +date = "2020-09-28" + +tags = ["openGauss简化安装指导"] + +archives = "2020-09" + +author = "lijun" + +summary = "openGauss简化安装指导" + +img = "/zh/post/lijun/title/title.png" + +times = "15:30" + ++++ + + +# 概述 + +本章节主要介绍采用openGauss简化安装脚本(以下简称安装脚本),一键式安装openGauss数据库所必须的系统环境及安装步骤。 + +# 安装环境要求 + + +## openGauss环境要求 + +安装openGauss的具体环境要求,请参考《openGauss安装指南》中的“2.3.1节软硬件环境要求”章节。 + +## 安装脚本环境要求 + +### 硬件环境要求 + +安装脚本对安装环境的操作系统及对应处理器架构进行了限制,目前支持的环境如[表1 ](#table1424418)所示。 + +**表 1** 硬件环境要求 + + + + + + + + + + + + + + + +

操作系统

+

处理器架构

+

openEuler

+

aarch64

+

CentOS

+

x86_64

+

openEuler

+

x86_64

+
+ + + +### 软件依赖要求 + +安装脚本依赖于其它软件的支持,如[表2 ](#table23052927)所示。 + +**表 2** 软件依赖要求 + + + + + + + + + + + + +

所需软件

+

建议版本

+

firewalld

+

-

+

python

+

3

+
+ +# 安装openGauss + + +## 安装前准备 + +### 导入安装脚本 + +安装脚本包含了多个文件,其用途如[表1 ](#table32787233)所示。导入安装脚本时,建议直接导入tar包至安装环境中,随后在安装环境中进行解压,否则可能出现window与unix风格不兼容的问题。若出现此类问题,可以使用dos2unix命令对安装脚本进行格式转换。 + +**表 1** 安装脚本清单 + + + + + + + + + + + + + + + + + + + + + + + + +

文件名称

+

用途

+

install.sh

+

简化安装主程序

+

common.sh

+

公共命令

+

README.md

+

参考文档

+

template.xml

+

xml模板

+

finances.sql

+

金融数据模型展示数据库

+

school.sql

+

学校数据模型展示数据库

+
+ + + +### 导入openGauss数据库安装包 + +安装脚本支持以下两种方式导入openGauss数据库安装包: + +- 手动导入 + +在openGauss官网下载对应版本安装包拷贝至安装环境中,存放路径为安装脚本的上层目录。 + +- 自动导入 + +配置安装环境外网访问,并确保安装脚本上层路径不存在openGauss数据库安装包。当运行安装脚本时,会自动下载对应版本安装包进行安装。 + +## 执行安装 + +使用如下命令执行安装脚本。 + +``` +sh install.sh user_name user_group host_ip host_port [install_path] +``` + +### 参数说明 + +- user\_name为openGauss数据库的安装用户。 + +- user\_group为openGauss数据库安装用户所属用户组。 +- host\_ip为主机在后端存储网络中的IP地址(内网IP)。 +- host\_port为数据库节点的基础端口号。 +- install\_path为openGauss数据库安装路径,该参数为可选参数。 + +以上参数的详细信息,请参考《openGauss安装指南》中的3.1节创建XML配置文件。 + +### 注意事项 + +- 不指定install\_path参数时,数据库默认安装在/opt/user\_name路径下。 +- 无论采用何种方式导入openGauss安装包,安装脚本都会在/home/user\_name/openGaussTar路径下建立本地安装包文件。该路径支持修改,请在install.sh中修改install\_location参数,但是需要与安装路径install\_path不同。 +- 安装脚本必须在root下执行,且同一时刻只有1个安装脚本正在运行。 + +# 导入展示数据库 + +## 学校数据模型 + +假设A市B学校为了加强对学校的管理,引入了openGauss数据库。在B学校里,主要涉及的对象有学生、教师、班级、院系和课程。本文假设在B学校数据库中,教师会教授课程,学生会选修课程,院系会聘请教师,班级会组成院系,学生会组成班级。因此,根据此关系,本文给出了相应的关系模式和ER图。在运行安装脚本时,会根据用户选择安装该展示模型。 + +### 关系模式 + +对于B校中的5个对象,分别建立属于每个对象的属性集合,具体属性描述如下: + +- 学生(学号,姓名,性别,出生日期,入学日期,家庭住址) +- 教师(教师编号,教师姓名,职称,性别,年龄,入职日期) +- 班级(班级编号,班级名称,班主任) +- 院系(系编号,系名称,系主任) +- 课程(课程编号,课程名称,课程类型,学分) + +上述属性对应的编号为: + +- student(std\_id,std\_name,std\_sex,std\_birth,std\_in,std\_address) +- teacher(tec\_id,tec\_name,tec\_job,tec\_sex,tec\_age,tec\_in) +- class(cla\_id,cla\_name,cla\_teacher) +- school\_department(depart\_id,depart\_name,depart\_teacher) +- course(cor\_id,cor\_name,cor\_type,credit) + +对象之间的关系: + +- 一位学生可以选择多门课程,一门课程可被多名学生选择 +- 一位老师可以选择多门课程,一门课程可被多名老师教授 +- 一个院系可由多个班级组成 +- 一个院系可聘请多名老师 +- 一个班级可由多名学生组成 + +### ER图 + +**图 1** 学校数据模型 +![](../figures/学校数据模型.png "学校数据模型") + +## 金融数据模型 + +假设A市C银行为了方便对银行数据的管理和操作,引入了openGauss数据库。针对C银行的业务,本文主要将对象分为客户、银行卡、理财产品、保险、基金和资产。因此,针对这些数据库对象,本文假设C银行的金融数据库存在着以下关系:客户可以办理银行卡,同时客户可以购买不用的银行产品,如资产,理财产品,基金和保险。那么,根据C银行的对象关系,本文给出了相应的关系模式和ER图。在运行安装脚本时,会根据用户选择安装该展示模型。 + +### 关系模式 + +对于C银行中的6个对象,分别建立属于每个对象的属性集合,具体属性描述如下: + +- 客户(客户编号、客户名称、客户邮箱,客户身份证,客户手机号,客户登录密码) +- 银行卡(银行卡号,银行卡类型,所属客户编号) +- 理财产品(产品名称,产品编号,产品描述,购买金额,理财年限) +- 保险(保险名称,保险编号,保险金额,适用人群,保险年限,保障项目) +- 基金(基金名称,基金编号,基金类型,基金金额,风险等级,基金管理者) +- 资产(客户编号,商品编号,商品状态,商品数量,商品收益,购买时间) + +上述属性对应的编号为: + +- client(c\_id,c\_name,c\_mail,c\_id\_card,c\_phone,c\_password) +- bank\_card(b\_number,b\_type,b\_c\_id) +- finances\_product(p\_name,p\_id,p\_description,p\_amount,p\_year) +- insurance(i\_name,i\_id,i\_amount,i\_person,i\_year,i\_project) +- fund(f\_name,f\_id,f\_type,f\_amount,risk\_level,f\_manager) +- property(pro\_c\_id,pro\_id,pro\_status,pro\_quantity,pro\_income,pro\_purchase\_time) + +对象之间的关系: + +- 一个客户可以办理多张银行卡 +- 一个客户可有多笔资产 +- 一个客户可以购买多个理财产品,同一类理财产品可由多个客户购买 +- 一个客户可以购买多个基金,同一类基金可由多个客户购买 +- 一个客户可以购买多个保险,同一类保险可由多个客户购买 + +### ER图 + +**图 1** 金融数据模型 +![](../figures/金融数据模型.png "金融数据模型") +