Configuración del entorno openGauss | Guía para principiantes

1. Preparación de la construcción

El desarrollo de OpenGauss requiere el uso de un entorno Linux. Primero descargue la herramienta de conexión remota Xshell/MobaXterm.

1. Utilice herramientas para conectarse al servidor Linux remoto, inicie sesión de forma remota utilizando la cuenta raíz y cree una cuenta personal.

useradd -d /home/xxx -m xxx

2. Establezca una contraseña.

passwd xxx

3. Cambie a su cuenta personal e inicie sesión con su cuenta personal para futuras conexiones.

su - xxx

2. Compile el servidor openGauss

La compilación de openGauss-server requiere el código fuente de openGauss-server y el repositorio de software de terceros openGauss-third_party del que depende.

Cree una carpeta con su propio nombre como directorio de trabajo en el directorio raíz /data/, ingrese a la carpeta y extraiga el último código fuente de openGauss-server. Se recomienda bifurcarlo primero en su propio almacén de gitee y luego extraerlo. Código para facilitar el desarrollo posterior de la comunidad. Proceso de integración del código, modificación del código y envío de relaciones públicas.

mkdir xxx
cd xxx
git clone https://gitee.com/opengauss/openGauss-server.git

openGauss的编译,需要提前把所依赖的开源第三方软件进行编译和构建。

Dos formas de obtener herramientas de software de terceros

1. Compilación del código fuente

Este software de terceros de código abierto se almacena en el almacén openGauss-third_party. Los usuarios pueden compilar el código después de extraerlo, generalmente solo una vez. Si la versión del software de código abierto se actualiza, es necesario reconstruirla.

git clone https://gitee.com/opengauss/openGauss-third_party.git
cd openGauss-third_party/build
sh build_all.sh

 2. Utilice directamente los archivos compilados y creados.

Dado que la compilación y construcción de software de código abierto lleva mucho tiempo, la comunidad proporciona archivos binarios compilados por tres plataformas para que los usuarios los descarguen.

● openEuler_arm : https://opengauss.obs.cn-south-1.myhuaweicloud.com/5.0.0/binarylibs/openGauss-third_party_binarylibs_openEuler_arm.tar.gz

● openEuler_x86 : https://opengauss.obs.cn-south-1.myhuaweicloud.com/5.0.0/binarylibs/openGauss-third_party_binarylibs_openEuler_x86_64.tar.gz

● Centos_x86 : https://opengauss.obs.cn-south-1.myhuaweicloud.com/5.0.0/binarylibs/openGauss-third_party_binarylibs_Centos7.6_x86_64.tar.gz

Podemos descargar la versión openEuler_arm del paquete comprimido, usar la herramienta Xftp para transferirlo al directorio de trabajo, descomprimirlo y cambiarle el nombre a un nombre fijo.

tar -zxvf openGauss-third_party_binarylibs_openEuler_arm.tar.gz
mv openGauss-third_party_binarylibs_openEuler_arm binarylibs

Una vez que el código fuente esté listo, se puede compilar el código.

Dos métodos de compilación

1. Compilación de scripts con un solo clic.

Utilice scripts integrados para la compilación.

cd openGauss-server
sh build.sh -m release -3rd /data/meicheng/opengauss_src/install/binarylibs  
#debug版将release换成debug

El proceso de ejecución continuará sin respuesta durante 5 a 10 minutos y el registro se generará automáticamente. Finalmente, se mostrará el siguiente contenido, lo que indica que la compilación se realizó correctamente.

¡haga que la compilación sea exitosa!

Importar variables de entorno para su posterior inicialización y puesta en marcha de la base de datos.

export CODE_BASE=_________    #openGauss-server的路径
export GAUSSHOME=$CODE_BASE/mppdb_temp_install/
export LD_LIBRARY_PATH=$GAUSSSHOME/lib:$LD_LIBRARY_PATH
export PATH=$GAUSSHOME/bin:$PATH

2. Compilación manual.

cd servidor openGauss

Las variables de entorno configuradas son ligeramente diferentes de las de la compilación de scripts con un solo clic.

export CODE_BASE=_________    #openGauss-server的路径
export BINARYLIBS=_________    #binarylibs的路径
export GAUSSHOME=$CODE_BASE/dest/
export GCC_PATH=$BINARYLIBS/buildtools/gcc7.3/
export CC=$GCC_PATH/gcc/bin/gcc
export CXX=$GCC_PATH/gcc/bin/g++
export LD_LIBRARY_PATH=$GAUSSSHOME/lib:$GCC_PATH/gcc/lib64:$GCC_PATH/isl/lib/:$GCC_PATH/mpc/lib/:$GCC_PATH/mpfr/lib/:$GCC_PATH/gmp/lib/:$LD_LIBRARY_PATH
export PATH=$GAUSSHOME/bin:$GCC_PATH/gcc/bin:$PATH

Seleccione la versión para configurar

Tres versiones de destino para elegir

lanzamiento: representa un programa binario que genera una versión de lanzamiento. Al compilar esta versión, configure las opciones de optimización de alto nivel de GCC y elimine el código de depuración del kernel. Generalmente se usa en entornos de producción o entornos de prueba de rendimiento.

depuración: representa un programa binario que genera una versión de depuración. Cuando se compila esta versión, se agrega la función de depuración del código del kernel y generalmente se usa para desarrollar un entorno de autoprueba.

memcheck: representa el programa binario que genera la versión de memcheck. Cuando se compila esta versión, esencialmente agrega la función ASAN basada en la versión de depuración. Esta versión generalmente se usa para localizar problemas de memoria.

versión de depuración:

./configure --gcc-version=7.3.0 CC=g++ CFLAGS='-O0' 
--prefix=$GAUSSHOME --3rd=$BINARYLIBS --enable-debug 
--enable-cassert --enable-thread-safety 
--with-readline --without-zlib

Versión de lanzamiento:

./configure --gcc-version=7.3.0 CC=g++ CFLAGS='-O2 
-g3' --prefix=$GAUSSHOME --3rd=$BINARYLIBS 
--enable-cassert --enable-thread-safety 
--with-readline --without-zlib

versión de verificación de memoria:

./configure --gcc-version=7.3.0 CC=g++ CFLAGS='-O0' 
--prefix=$GAUSSHOME --3rd=$BINARYLIBS --enable-debug 
--enable-cassert --enable-thread-safety --with-readline 
--without-zlib --enable-memory-check

Empezar a compilar

make -sj4
make install -sj4

-s indica modo silencioso y parte de la información de compilación no se imprimirá.

Si usa el parámetro -j, make seguirá aumentando el número de concurrencias durante la ejecución y, a veces, encontrará el error "no se puede asignar memoria". Generalmente, el número que puede especificar después del parámetro -j es el número de CPU X2. Si el entorno de compilación es 4CPU, puede usar el parámetro make -j8 para compilar.

El siguiente contenido se muestra para indicar una compilación exitosa.

openGauss InstallationGuide complete

3. Compilación openGauss-OM

openGauss-OM es el módulo de gestión de operación y mantenimiento (OperationManager), que proporciona interfaces de gestión y herramientas para el mantenimiento diario y la gestión de configuración de openGauss.

Una vez compilado el código fuente en el almacén de códigos del servidor openGauss, no existe gs_om. Debe compilar openGauss-OM por separado, copiar el paquete openGauss-xxx-om.tar.gz compilado al directorio donde se encuentra el paquete de instalación de openGauss-server y luego instalarlo de acuerdo con la versión empresarial.

Pasos

1. Descargue el repositorio de códigos.

git clone https://gitee.com/opengauss/openGauss-OM.git

2. Ejecute la compilación.

ocd openGauss-OM
chmod +x build.sh
export BINARYLIBS=/data/XXX/binarylibs      #这里写你的第三方软件包的文件目录
./build.sh -3rd $BINARYLIBS

Se muestra el siguiente contenido, lo que indica que gauss-OM se compiló correctamente.

ROOT_DIR:XXXXX
Everything is ready.
success!

Ingrese al directorio del paquete, copie el paquete openGauss-xxx-om.tar.gz compilado al directorio donde se encuentra el paquete de instalación de openGauss-server y luego instálelo de acuerdo con la versión empresarial.

4. Compile el paquete de instalación del producto.

Este paso es para crear el paquete de instalación del software openGauss. El proceso de compilación y empaquetado del paquete de instalación también está integrado en build.sh.

Pasos

1. Ingrese al directorio del servidor openGauss.

2. Ejecute el comando para compilar el paquete de instalación.

osh build.sh -m [debug | release | memcheck] -3rd [binarylibs path] -pkg

3. Se muestra el siguiente contenido para indicar que el paquete de instalación está compilado.

make server(all) package success!

4. El paquete de instalación empaquetado se almacena en el directorio ./output.

5. Verificación posterior a la compilación

Después de la compilación, el openGauss compilado se puede verificar de la siguiente manera:

1. Cree un directorio de datos y un directorio de registro.

mkdir ~/data
mkdir ~/log

2. Inicialización de la base de datos.

gs_initdb -D ~/data --nodename=db1

3. Inicie el servidor de base de datos.

gs_ctl start -D ~/data -Z single_node -l ~/log/opengauss.log

4. Ingrese al servidor de la base de datos.

Una vez completada la instalación de la base de datos, se generará una base de datos llamada postgres de forma predeterminada. Puede conectarse a esta base de datos para realizar pruebas.

gsql -d postgres

Una vez que la conexión sea exitosa, se mostrará información similar a la siguiente.

gsql(一些版本时间信息)
Non-SSL connection (SSL connection is recommended when requiring high-security)
Type "help" for help
openGauss=#

5. Utilice openGauss.

5.1 Crear usuario de base de datos.

CREATE USER XXX WITH PASSWORD "xxxxxxx";

5.2 Establecer el usuario como administrador del sistema.

GRANT ALL PRIVILEGES TO xxx;

5.3 Crear base de datos.

CREATE DATABASE db_tpcc OWNER XXX;

5.4 Una vez creada la base de datos db_tpcc, puede salir de la base de datos postgres de la siguiente manera y utilizar un nuevo usuario para conectarse a la base de datos db_tpcc para realizar la creación de tablas y otras operaciones.

\q      #退出当前数据库
gsql -d db_tpcc -U XXX    #连接数据库db_tpcc

5.5 Crear ESQUEMA.

CREATE SCHEMA test AUTHORIZATION XXX;

5.6 Crear tablas.

CREATE TABLE mytable (name varchar(16), age int);

5.7 Insertar datos en la tabla.

INSERT INTO mytable values("XXX", 18);

5.8 Ver los datos en la tabla.

SELECT * FROM mytable;

6. Resumen

openGauss es un sistema de gestión de bases de datos relacionales de código abierto, lanzado bajo la Licencia Permisiva Mulan v2. El núcleo openGauss integra profundamente los muchos años de experiencia de Huawei en el campo de las bases de datos, combinados con las necesidades de los escenarios de nivel empresarial, para crear continuamente características competitivas. 

Eso es todo para compartir hoy, bienvenido a comunicarnos ~ 

¡Compañero pollo deepin-IDE de "código abierto" y finalmente logró el arranque! Buen chico, Tencent realmente ha convertido Switch en una "máquina de aprendizaje pensante" Revisión de fallas de Tencent Cloud del 8 de abril y explicación de la situación Reconstrucción de inicio de escritorio remoto de RustDesk Cliente web Base de datos de terminal de código abierto WeChat basada en SQLite WCDB marcó el comienzo de una actualización importante Lista de abril de TIOBE: PHP cayó a un mínimo histórico, Fabrice Bellard, el padre de FFmpeg, lanzó la herramienta de compresión de audio TSAC , Google lanzó un modelo de código grande, CodeGemma , ¿te va a matar? Es tan bueno que es de código abierto: herramienta de edición de carteles e imágenes de código abierto
{{o.nombre}}
{{m.nombre}}

Supongo que te gusta

Origin my.oschina.net/gaussdb/blog/11052552
Recomendado
Clasificación