openGauss执行下面命令准备安装环境时报错

openGauss执行下面命令准备安装环境时报错,求指点

[root@db-oracle script]# ./gs_preinstall -U omm -G dbgrp -X /opt/software/openGauss/cluster_config.xml
Traceback (most recent call last):
  File "/opt/software/openGauss/script/gspylib/os/gsfile.py", line 31, in <module>
    import psutil
  File "/opt/software/openGauss/script/gspylib/os/../../../lib/psutil/__init__.py", line 101, in <module>
    from . import _pslinux as _psplatform
  File "/opt/software/openGauss/script/gspylib/os/../../../lib/psutil/_pslinux.py", line 26, in <module>
    from . import _psutil_linux as cext
  File "/opt/software/openGauss/script/gspylib/os/../../../lib/psutil/_psutil_linux.py", line 7, in <module>
    __bootstrap__()
  File "/opt/software/openGauss/script/gspylib/os/../../../lib/psutil/_psutil_linux.py", line 6, in __bootstrap__
    imp.load_dynamic(__name__,__file__)
  File "/usr/lib64/python3.6/imp.py", line 343, in load_dynamic
    return _load(spec)
ImportError: /opt/software/openGauss/script/gspylib/os/../../../lib/psutil/_psutil_linux.so: cannot open shared object file: No such file or directory

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "./gs_preinstall", line 32, in <module>
    from gspylib.common.DbClusterInfo import dbClusterInfo, \
  File "/opt/software/openGauss/script/gspylib/common/DbClusterInfo.py", line 36, in <module>
    from gspylib.os.gsfile import g_file
  File "/opt/software/openGauss/script/gspylib/os/gsfile.py", line 65, in <module>
    import psutil
  File "/opt/software/openGauss/script/gspylib/os/../../../lib/psutil/__init__.py", line 101, in <module>
    from . import _pslinux as _psplatform
  File "/opt/software/openGauss/script/gspylib/os/../../../lib/psutil/_pslinux.py", line 26, in <module>
    from . import _psutil_linux as cext
ImportError: libpython3.7m.so.1.0: cannot open shared object file: No such file or directory
[root@db-oracle script]# python 
Python 2.7.5 (default, Mar 20 2020, 17:08:22) 
[GCC 4.8.5 20150623 (Red Hat 4.8.5-39)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> 
[1]+  Stopped                 python
[root@db-oracle script]#

2段报错提示,都说你缺少 对象哦。。。
第一段,/lib/psutil/_psutil_linux.so,,这个的话,明确安装好 psutil 没有,安装了,如果不能用,还需要看看环境变量的调用是否OK,不OK,就需要手动设置。


第二段, libpython3.7m.so.1.0,,这个的话,人家需要PY3.7啊。。。你用PY2.。。。肯定报错呢。。。


综上,你先安装好PY3.7的环境,装好一些常用的库,再来执行吧。

  • 建议你看下这篇博客👉 :OpenGauss数据库的安装与运行
  • 除此之外, 这篇博客: openGauss 多线程架构启动过程详解中的 openGauss为什么要使用多线程架构 部分也许能够解决你的问题, 你可以仔细阅读以下内容或跳转源博客中阅读:
  • 随着计算机领域多核技术的发展,如何充分有效的利用多核的并行处理能力,是每个服务器端应用程序都必须考虑的问题。由于数据库服务器的服务进程或线程间存在着大量数据共享和同步,而多线程可以充分利用多CPU来并行执行多个强相关任务,例如执行引擎可以充分的利用线程的并发执行以提供性能。在多线程的架构下,数据共享的效率更高,能提高服务器访问的效率和性能,同时维护开销和复杂度更低,这对于提高数据库系统的并行处理能力非常重要。

    多线程的三大主要优势:

    优势一:线程启动开销远小于进程启动开销。与进程相比,它是一种非常“节俭”的多任务操作方式。在Linux系统下,启动一个新的进程必须分配给它独立的地址空间,建立众多的数据表来维护它的代码段、堆栈段和数据段,这是一种“昂贵”的多任务工作方式。而运行于一个进程中的多个线程,它们彼此之间使用相同的地址空间,共享大部分数据,启动一个线程所花费的空间远远小于启动一个进程所花费的空间。

    优势二:线程间方便的通信机制:对不同进程来说,它们具有独立的数据空间,要进行数据的传递只能通过通信的方式进行,这种方式不仅费时,而且很不方便。线程则不然,由于同一进程下的线程之间共享数据空间,所以一个线程的数据可以直接为其他线程所用,这不仅快捷,而且方便。

    优势三:线程切换开销小于进程切换开销,对于Linux系统来讲,进程切换分两步:1.切换页目录以使用新的地址空间;2.切换内核栈和硬件上下文。对线程切换,第1步是不需要做的,第2步是进程和线程都要做的,所以明显线程切换开销小。