目录

1.执行前提条件

1.1设置OS参数:

1.2定时任务权限

1.3 修改最大文件描述符

2.切换至omm用户,执行preinstall

3.source环境变量

4.执行gs_install


在给客户部署业务系统时,由于openGauss数据库的预安装过程需要用到root用户执行,总会被挑战root用户权限太大,若有风险谁负责,只能怯怯的说我们仅安装一个数据库,很快用完了就释放。而openGauss 6.0版本和5.0版本相比,数据库安装流程中的预安装命令(gs_preinstall)以及校验操作系统命令,同时扩容命令可以用非root命令执行了。用非root命令执行预命令,在安全和易用性等方面都有很大的改进(当然还有一些前提条件需要root用户执行),可以减少用户执行过程的用户切换,也可以控制root用户权限控制。一定程度减少了用户误操作对整个系统的影响范围。除了gs_preinstall外,做了类似改进的还有扩容(gs_checkos)和校验(gs_checkos),本文仅介绍gs_preinstall。(其余命令待后文整理)。

1.执行前提条件

本文由于是单机版安装所以未执行gs_sshexkey -f host,直接执行设置os参数这步,需要注意的是,前提条件的操作,仍然需要以root用户执行。详情参考官网资料,点击文末阅读原文。

1.1设置OS参数:

注意直接按照官网资料执行会报错Invalid argument,如下:

该问题为已知资料问题,执行时需去掉双引号,即可成功。

echo 'kernel.sem=250 6400000 1000 25600' >> /etc/sysctl.conf

1.2定时任务权限

赋予普通用户执行定时任务的权限

echo "xxx" >> /etc/cron.allow

重启定时任务使生效。

systemctl restart crond

1.3 修改最大文件描述符

2.切换至omm用户,执行preinstall

[omm@ecs-oe-2203 script]$ ./gs_preinstall -U omm -G dbgrp -X /opt/software/opengauss/clusterconfig.xml

3.source环境变量

preinstall成功后,用omm用户执行gs_install,报错:

因是环境变量问题,因此回退至root用户,先source环境变量,再执行gs_install命令,就可以成功。

[root@ecs-oe-2203 script]# source /home/omm/.bashrc
​
[root@ecs-oe-2203 script]# su omm

4.执行gs_install

切换至omm用户,继续执行gs_install,安装成功,登录默认数据库并查询。

Gs_checkos和gs_expansion的会在后续发出,敬请关注。

本文作者

本文内容来自于数据库领域资深技术专家赵锋老师,希望我们的文章正好能解决你的问题。

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐