# 更新yum源
cp -a /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.bak #复制备份
cd /etc/yum.repos.d/
ls -lrt Cent*
wget -O /etc/yum.repos.d/CentOS-Base.repo https://repo.huaweicloud.com/repository/conf/CentOS-7-reg.repo # 更新yum源为华为云源
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo # 更新yum源为阿里云源
# 清除原有yum缓存并更新缓存:
yum clean all
yum makecache
# 安装Python 3.6
# 查看python版本
python -V
yum install python3
python -V
python3 -V
#安装依赖包
yum install -y libaio-devel flex bison ncurses-devel glibc-devel patch redhat-lsb-core readline-devel zlib readline gcc perl-ExtUtils-Embed readline-devel zlib-devel expect
-- 检查是否已安装
rpm -qa --queryformat "%{NAME}-%{VERSION}-%{RELEASE} (%{ARCH})\n" | grep -E "libaio-devel|flex|bison|ncurses-devel|glibc-devel|patch|redhat-lsb-core|readline-devel|zlib|readline|gcc|python|python-devel|perl-ExtUtils-Embed|readline-devel|zlib-devel|expect"
# 关闭透明大页
su root
# 全部粘贴 begin
echo never > /sys/kernel/mm/transparent_hugepage/defrag
echo never > /sys/kernel/mm/transparent_hugepage/enabled
echo 'echo never > /sys/kernel/mm/transparent_hugepage/defrag' >> /etc/rc.d/rc.local
echo 'echo never > /sys/kernel/mm/transparent_hugepage/enabled' >> /etc/rc.d/rc.local
chmod +x /etc/rc.d/rc.local
/usr/bin/sh /etc/rc.d/rc.local
# 全部粘贴 end
# 准备软硬件安装环境
# 准备软硬件安装环境
# 准备软硬件安装环境
# Step 1: 新建用户组、用户
groupadd dbgrp
useradd -g dbgrp omm
passwd omm
新密码:abcd@123456
# Step 2: 创建文件夹
mkdir -p /opt/software/openGauss
chown 755 -R /opt/software
chown -R omm /opt/software/openGauss
# Step 3: 下载安装包
下载地址:https://opengauss.org/zh/download
下载【openGauss_3.1.0 企业版】
把下载文件【openGauss-3.1.0-CentOS-64bit-all.tar.gz】拷贝到【/opt/software/openGauss】目录
# Step 4: 关闭防火墙
systemctl disable firewalld.service
systemctl stop firewalld.service
# Step 5: 关闭 selinux,目前仅支持在防火墙关闭的状态下进行安装
# 将 SELINUX=enforcing 改为 SELINUX=disabled
vim /etc/selinux/config
SELINUX=disabled
# 重启操作系统
reboot
# Step 6: 设置网卡MTU值,MTU为1500
# 将各数据库节点的网卡MTU值设置为相同大小。对于x86,MTU值推荐1500;对于ARM,MTU值推荐8192。
ifconfig #查询网卡名称
# 语法:设置网卡为1500
ifconfig 网卡名称 mtu 1500
ifconfig ens33 mtu 1500
#查看
ifconfig -a |grep -i mtu
# 关闭virbr0网卡(centos 7.6)
ifconfig virbr0 down
systemctl disable libvirtd.service
# Step 6.1: 更改hostname
vim /etc/hosts
# 原有内容
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
# 追加内容
192.168.176.132 master01
# Step 6.2: 修改系统参数sysctl.conf【忽略】
vim /etc/sysctl.conf
sysctl -p #生效参数
# Step 6.3: 修改文件句柄
echo "* soft nofile 1000000" >>/etc/security/limits.conf
echo "* hard nofile 1000000" >>/etc/security/limits.conf
# Step 6.4: 重启操作系统
reboot
# Step 7: 关闭HISTORY记录
vim /etc/profile
HISTSIZE=0
source /etc/profile
# Step 8: 将交换内存关闭
swapoff -a #关闭
swapon -a #开启
# Step 9: 关闭RemoveIPC【可以跳过】
vim /etc/systemd/logind.conf
RemoveIPC=no
vim /usr/lib/systemd/system/systemd-logind.service
RemoveIPC=no
#重新加载配置参数
systemctl daemon-reload
systemctl restart systemd-logind
#检查修改是否生效
loginctl show-session | grep RemoveIPC
systemctl show systemd-logind | grep RemoveIPC
# Step 10: 设置字符集参数
cat /etc/profile
vim /etc/profile
LANG=en_US.UTF-8
# 重新加载etc/profile
source /etc/profile
# Step 11: 重启操作系统
reboot
# Step 12: 切换omm用户
su omm
# Step 13: 解压安装包
cd /opt/software/openGauss
tar -zxvf openGauss-3.1.0-CentOS-64bit-all.tar.gz -C /opt/software/openGauss/
tar -xvf openGauss-3.1.0-CentOS-64bit-all.tar.gz
ls -lrt
# Step 14: 创建配置文件
# 说明:openGauss 提供了 XML 文件模板,在安装包解压后的 script 目录中。
文件模板路径:/script/gspylib/etc/conf/cluster_config_template.xml
cd /opt/software/openGauss/script/gspylib/etc/conf
cat /opt/software/openGauss/script/gspylib/etc/conf/cluster_config_template.xml
vim /opt/software/openGauss/script/gspylib/etc/conf/cluster_config_template.xml
# 说明:配置文件包含部署 openGauss的服务器信息、安装路径、IP地址以及端口号等,用于告知openGauss如何部署。
# 操作:在/opt/software/openGauss 目录下创建 cluster_config.xml 配置文件
cd /opt/software/openGauss
vim cluster_config.xml【或者直接将配置文件拷贝到服务器】
cluster_config.xml配置文件,内容如下
# Step 15: 解压 om 压缩包
# 在/opt/software/openGauss路径下自动生成script子目录,并且在script目录下生成gs_preinstall等各种OM工具脚本
su root
tar -zxvf openGauss-3.1.0-CentOS-64bit-om.tar.gz
chmod -R 777 /opt/software/openGauss
# Step 15: 执行安装
su omm
cd /opt/software/openGauss/script
ls -l
# 执行 gs_preinstall 脚本,初始化安装环境
./gs_preinstall -U omm -G dbgrp -X /opt/software/openGauss/cluster_config.xml
#说明:自动创建用户组和用户
-U omm:用户omm
-G dbgrp:用户组dbgrp
-X:指定配置文件
#执行完提示
Are you sure you want to create the user[omm] (yes/no)? yes
# 输入:yes
# 检查系统环境
/opt/software/openGauss/script/gs_checkos -i A -h master01 --detail
# Step 16.1:切换到omm
su omm
cd /opt/software/openGauss/script
gs_install -X /opt/software/openGauss/cluster_config.xml
gs_install -X /opt/software/openGauss/cluster_config.xml --gsinit-parameter="--locale=zh_CN.utf8"
# 提示:find: 无法更改目录: 权限不够,
# 先执行【chmod -R 777 /opt/software/openGauss】再执行【gs_install -X /opt/software/openGauss/cluster_config.xml】
# 提示:Please enter password for database:【输入数据库密码】
Gauss$123456
# 执行ps命令,查看进程是否正常
ps -ef | grep gauss
gs_om -t status
# 连接数据库
su omm
gs_om -t start # 启动
gs_om -t stop # 停止
gs_om -t restart # 重启
gsql -d postgres -p 15400
# 卸载数据库
su omm
gs_uninstall --delete-data #集群卸载
gs_uninstall --delete-data -L
# 清理环境
su root
cd /opt/software/openGauss/script
./gs_postuninstall -U omm -X /opt/software/openGauss/cluster_config.xml --delete-user --delete-group
##########################################
# gsql 连接与使用方法 #
##########################################
# 查询所有的数据库,需要先切换omm用户,su omm
[omm@localhost /]$ gsql -d postgres -p 15400 -l【success,默认omm用户】
[omm@localhost /]$ gsql -d postgres -U omm -p 15400 【无须输入密码,Gauss$123456】
[omm@localhost /]$ gsql -d postgres -U jim -p 15400 -W Bigdata@123【success】
[omm@localhost /]$ gsql -d postgres -h localhost -U zhangsan -p 15400 -W Gauss$123456【success】
[omm@localhost /]$ gsql -d db_test -U zhangsan -p 15400 -W Gauss$123456【success】
[omm@localhost /]$ gsql -d db_test -h 192.168.176.131 -U zhangsan -p 15400 -W Gauss$123456【fail】
# 创建用户
# Step 1: 连接数据库
[omm@localhost /]$ gsql -d postgres -p 15400 -r
# Step 2: 创建用户,注意加分号
# 语法:create user 用户名 with password "密码";
openGauss=# create user zhangsan with password "Gauss$123456";
openGauss=# create user zhaoliu with password 'Gauss$123456';
openGauss=# CREATE USER lisi WITH PASSWORD 'Gauss$123456';
openGauss=# CREATE USER jim CREATEDB PASSWORD 'Bigdata@123'; #创建有“创建数据库”权限的用户,则需要加CREATEDB关键字。
# Step 3: 查看数据库用户列表
openGauss=# select * from pg_user;
# 查看所有角色
openGauss=# select * from PG_ROLES;
# 删除数据库用户,注意加分号
openGauss=# drop user zhangsan cascade;
openGauss=# drop user lisi cascade;
# 创建数据库,并指定所有者owner,注意加分号
语法:create database 数据库名 owner 用户名;
openGauss=# create database db_test owner zhangsan;
# 删除数据库,注意加分号
语法:drop database 数据库名;
openGauss=# drop database db_test;
# Step 4: 查看对象
openGauss=# \l #查看数据库
openGauss=# \c school #查看数据库
openGauss=# \dt #查看数据库所有表名
openGauss=# \d student #查看表结构
# 使用[【\c + 数据库名】进入已存在数据库
openGauss=# \c school
# Step 5: 退出
openGauss=# \du
# 修改密码
postgres=# ALTER USER 用户名 IDENTIFIED BY '新密码' REPLACE '旧密码';
postgres=# ALTER USER lisi IDENTIFIED BY 'Gauss$123456' REPLACE 'Jiuyi8899';
postgres=# ALTER USER jim IDENTIFIED BY 'Abcd@123' REPLACE 'Bigdata@123';
alter user <用户名> identified by '密码';
# 切换用户
postgres=# \c 用户名
#退出数据库
postgres=# \q
# 查询 school 数据库 student 表数据,注意加分号
school=# select * from student;
school=# select * from student where std_name like '%张%';
# 配置外网访问
# 配置远程连接
# 配置允许远程连接,切换omm用户,su - omm
vim /etc/ssh/sshd_config
# 注释掉 PermitRootLogin no
#PermitRootLogin no
# 将 PermitRootLogin 改为 yes
PermitRootLogin yes
# 设置生效
systemctl restart sshd.service
##########################################
# DataStudio #
##########################################
# 使用 DataStudio 客户端连接 openGauss
远程连接主机地址:192.168.159.130
远程连接端口号:5432
数据库:postgres
用户名:lisi
密码:Gauss$123456
##########################################
# gs_om #
##########################################
gs_om -t start
gs_om -t stop
gs_om -t restart
##########################################
# .NET #
##########################################
C# 采用 Npgsql 访问openGauss,因为 Npgsql 不支持 sha256 加密,所以将服务器端的认证加密更改为md5,如果改成MD5加密,Data Studio管理工具无法连接。首先设置 pg_hba.conf 和 postgresql.conf 文件,修改 postgresql.conf 文件,将 password_encryption_type 修改为1,同时支持 sha256 和 md5,然后修改数据库用户密码,这样密码才会存储为 sha256 和 md5 加密的字符串。
*
*
*