Configuration de l'environnement openGauss | Guide du débutant

1. Préparation du chantier

Le développement d'OpenGauss nécessite l'utilisation d'un environnement Linux. Téléchargez d'abord l'outil de connexion à distance Xshell/MobaXterm.

1. Utilisez des outils pour vous connecter au serveur Linux distant, connectez-vous à distance à l'aide du compte root et créez un compte personnel.

useradd -d /home/xxx -m xxx

2. Définissez un mot de passe.

passwd xxx

3. Basculez vers votre compte personnel et connectez-vous avec votre compte personnel pour de futures connexions.

su - xxx

2. Compilez le serveur openGauss

La compilation d'openGauss-server nécessite le code source d'openGauss-server et le référentiel de logiciels tiers openGauss-third_party dont il dépend.

Créez un dossier avec votre propre nom comme répertoire de travail sous le répertoire racine /data/, entrez le dossier et extrayez le dernier code source du serveur openGauss. Il est recommandé de d'abord accéder à votre propre entrepôt gitee, puis d'extraire le fichier. code pour faciliter le développement ultérieur de la communauté. Processus d'intégration du code, modifier le code et soumettre le PR.

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

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

Deux façons d'obtenir des outils logiciels tiers

1. Compilation du code source

Ces logiciels tiers open source sont stockés dans l'entrepôt openGauss-third_party. Les utilisateurs peuvent compiler le code après l'avoir extrait, généralement une seule fois. Si la version du logiciel open source est mise à jour, elle doit être reconstruite.

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

 2. Utilisez directement les fichiers compilés et construits

Étant donné que la compilation et la construction de logiciels open source prennent beaucoup de temps, la communauté propose aux utilisateurs de télécharger des fichiers binaires compilés par trois plates-formes.

● 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

Nous pouvons télécharger la version openEuler_arm du package compressé, utiliser l'outil Xftp pour le transférer dans le répertoire de travail, le décompresser et le renommer sous un nom fixe.

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

Une fois le code source prêt, le code peut être compilé.

Deux méthodes de compilation

1. Compilation de scripts en un clic.

Utilisez des scripts intégrés pour la compilation.

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

Le processus d'exécution se poursuivra sans réponse pendant 5 à 10 minutes et le journal sera automatiquement affiché. Enfin, le contenu suivant s'affichera, indiquant que la compilation est réussie.

make compile avec succès !

Importez des variables d'environnement pour l'initialisation et le démarrage ultérieurs de la base de données.

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. Compilation manuelle.

cd serveur openGauss

Les variables d'environnement configurées sont légèrement différentes de celles de la compilation de scripts en un 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

Sélectionnez la version à configurer

Trois versions cibles au choix

release : représente un programme binaire qui génère une version finale, lors de la compilation de cette version, configurez les options d'optimisation de haut niveau de GCC et supprimez le code de débogage du noyau. Il est généralement utilisé dans les environnements de production ou les environnements de test de performances.

debug : représente un programme binaire qui génère une version de débogage. Lorsque cette version est compilée, la fonction de débogage du code du noyau est ajoutée et est généralement utilisée pour développer un environnement d'auto-test.

memcheck : Représente le programme binaire qui génère la version memcheck. Lorsque cette version est compilée, elle ajoute essentiellement la fonction ASAN basée sur la version de débogage. Cette version est généralement utilisée pour localiser les problèmes de mémoire.

version de débogage :

./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

Version finale:

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

version de vérification de mémoire :

./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

Commencez à compiler

make -sj4
make install -sj4

-s indique le mode silencieux et certaines informations de compilation ne seront pas imprimées.

Si vous utilisez le paramètre -j, make continuera d'augmenter le nombre de concurrences lors de l'exécution, et parfois vous rencontrerez l'erreur « Impossible d'allouer de la mémoire ». Généralement, le nombre que vous pouvez spécifier après le paramètre -j est le nombre de processeurs X2. Si l'environnement de compilation est 4CPU, vous pouvez utiliser le paramètre make -j8 pour compiler.

Le contenu suivant s'affiche pour indiquer une compilation réussie.

openGauss InstallationGuide complete

3. compilation openGauss-OM

openGauss-OM est le module de gestion de l'exploitation et de la maintenance (OperationManager), qui fournit des interfaces et des outils de gestion pour la maintenance quotidienne et la gestion de la configuration d'openGauss.

Une fois le code source compilé dans l'entrepôt de code du serveur openGauss, il n'y a plus de gs_om. Vous devez compiler openGauss-OM séparément, copier le package openGauss-xxx-om.tar.gz compilé dans le répertoire où se trouve le package d'installation openGauss-server, puis l'installer en fonction de la version entreprise.

Pas

1. Téléchargez le référentiel de code.

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

2. Exécutez la compilation.

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

Le contenu suivant s'affiche, indiquant que gauss-OM a été compilé avec succès.

ROOT_DIR:XXXXX
Everything is ready.
success!

Entrez dans le répertoire du package, copiez le package openGauss-xxx-om.tar.gz compilé dans le répertoire où se trouve le package d'installation openGauss-server, puis installez-le selon la version entreprise.

4. Compilez le package d'installation du produit

Cette étape consiste à créer le package d'installation du logiciel openGauss. Le processus de compilation et d'empaquetage du package d'installation est également intégré dans build.sh.

Pas

1. Entrez dans le répertoire openGauss-server.

2. Exécutez la commande pour compiler le package d'installation.

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

3. Le contenu suivant s'affiche pour indiquer que le package d'installation est compilé.

make server(all) package success!

4. Le package d'installation emballé est stocké dans le répertoire ./output.

5. Vérification post-compilation

Après compilation, l'openGauss compilé peut être vérifié comme suit :

1. Créez un répertoire de données et un répertoire de journaux.

mkdir ~/data
mkdir ~/log

2. Initialisation de la base de données.

gs_initdb -D ~/data --nodename=db1

3. Démarrez le serveur de base de données.

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

4. Entrez le serveur de base de données.

Une fois l'installation de la base de données terminée, une base de données nommée postgres sera générée par défaut. Vous pouvez vous connecter à cette base de données pour des tests.

gsql -d postgres

Une fois la connexion établie, des informations similaires aux suivantes s'afficheront.

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

5. Utilisez openGauss.

5.1 Créer un utilisateur de base de données.

CREATE USER XXX WITH PASSWORD "xxxxxxx";

5.2 Définissez l'utilisateur comme administrateur système.

GRANT ALL PRIVILEGES TO xxx;

5.3 Créer une base de données.

CREATE DATABASE db_tpcc OWNER XXX;

5.4 Une fois la base de données db_tpcc créée, vous pouvez quitter la base de données postgres comme suit et utiliser un nouvel utilisateur pour vous connecter à la base de données db_tpcc afin d'effectuer la création de table et d'autres opérations.

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

5.5 Créer un SCHÉMA.

CREATE SCHEMA test AUTHORIZATION XXX;

5.6 Créer des tableaux.

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

5.7 Insérer des données dans le tableau.

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

5.8 Afficher les données dans le tableau.

SELECT * FROM mytable;

6. Résumé

openGauss est un système de gestion de base de données relationnelle open source, publié sous la licence permissive Mulan v2. Le noyau openGauss intègre profondément les nombreuses années d'expérience de Huawei dans le domaine des bases de données, combinées aux besoins des scénarios au niveau de l'entreprise, pour créer en permanence des fonctionnalités compétitives. 

C'est tout pour le partage d'aujourd'hui, bienvenue pour communiquer~ 

Un camarade de poulet "open source" deepin-IDE et a finalement réalisé l'amorçage ! Bon gars, Tencent a vraiment transformé Switch en une « machine d'apprentissage pensante » Examen des échecs de Tencent Cloud le 8 avril et explication de la situation Reconstruction du démarrage du bureau à distance RustDesk Client Web La base de données de terminal open source de WeChat basée sur SQLite WCDB a inauguré une mise à niveau majeure Liste d'avril TIOBE : PHP est tombé à un plus bas historique, Fabrice Bellard, le père de FFmpeg, a sorti l'outil de compression audio TSAC , Google a sorti un gros modèle de code, CodeGemma , est-ce que ça va vous tuer ? C'est tellement bon qu'il est open source - outil d'édition d'images et d'affiches open source
{{o.name}}
{{m.nom}}

Je suppose que tu aimes

Origine my.oschina.net/gaussdb/blog/11052552
conseillé
Classement