Sonar Configuration PostgreSQL : Différence entre versions

De EjnTricks
(Page créée avec « La première installation de Sonar étudiée est basée sur <code>MySql</code>. Depuis la version <code>7.9</code>, cette base n'est plus supportée... »)
 
m
Ligne 16 : Ligne 16 :
 
</syntaxhighlight>
 
</syntaxhighlight>
  
 +
Où <code>SONAR_PASSWORD</code> est remplacé par le mot de passe souhaité.
  
 
== [[File:Icon-database-init.png]] Création de la base ==
 
== [[File:Icon-database-init.png]] Création de la base ==
Ligne 23 : Ligne 24 :
 
CREATE DATABASE
 
CREATE DATABASE
 
</syntaxhighlight>
 
</syntaxhighlight>
 
Où <code>SONAR_PASSWORD</code> est remplacé par le mot de passe souhaité.
 
  
 
'''A noter''' que le rôle mis en place, dans ce cas, est le propriétaire de la nouvelle base. Aucune restriction ne sera appliqué à ce compte.
 
'''A noter''' que le rôle mis en place, dans ce cas, est le propriétaire de la nouvelle base. Aucune restriction ne sera appliqué à ce compte.
 
  
 
== [[File:Icon-Configuration-Settings.png|link=]] Configuration de la base de données ==
 
== [[File:Icon-Configuration-Settings.png|link=]] Configuration de la base de données ==

Version du 22 décembre 2020 à 18:40

La première installation de Sonar étudiée est basée sur MySql. Depuis la version 7.9, cette base n'est plus supportée et l'installation a été migrée sous PostgreSQL.


Hand-icon.png Votre avis

Nobody voted on this yet

 You need to enable JavaScript to vote


User-icon.png Création du role PostgreSQL

Un rôle est mis en place spécifiquement pour l'application.

postgres=# CREATE ROLE sonar WITH LOGIN PASSWORD 'SONAR_PASSWORD' NOSUPERUSER NOCREATEDB;
CREATE ROLE

SONAR_PASSWORD est remplacé par le mot de passe souhaité.

Icon-database-init.png Création de la base

Une nouvelle base est créée.

postgres=# CREATE DATABASE sonarqube WITH ENCODING 'UTF8' OWNER sonar;
CREATE DATABASE

A noter que le rôle mis en place, dans ce cas, est le propriétaire de la nouvelle base. Aucune restriction ne sera appliqué à ce compte.

Icon-Configuration-Settings.png Configuration de la base de données

La dernière étape consiste à référencer ce compte au niveau de Sonar. Pour cela, il faut éditer le fichier <UNZIP_DIRECTORY>/conf/sonar.properties et éditer la section #----- PostgreSQL 9.3 or greater ainsi:

#----- Embedded Database (default)
# H2 embedded database server listening port, defaults to 9092
#sonar.embeddedDatabase.port=9092


#----- Oracle 11g/12c/18c/19c
# The Oracle JDBC driver must be copied into the directory extensions/jdbc-driver/oracle/.
# Only the thin client is supported, and we recommend using the latest Oracle JDBC driver. See
# https://jira.sonarsource.com/browse/SONAR-9758 for more details.
# If you need to set the schema, please refer to http://jira.sonarsource.com/browse/SONAR-5000
#sonar.jdbc.url=jdbc:oracle:thin:@localhost:1521/XE


#----- PostgreSQL 9.3 or greater
# By default the schema named "public" is used. It can be overridden with the parameter "currentSchema".
#sonar.jdbc.url=jdbc:postgresql://localhost/sonarqube?currentSchema=my_schema
sonar.jdbc.url=jdbc:postgresql://localhost/sonarqube

Cela permet d'activer l'utilisation de PostgreSQL au lieu de la base Derby embarquée. Il faut ensuite renseigné le compte et le mot de passe utilisé pour se connecter à cette base de données, en reprenant la définition du compte déclaré dans la base

# User credentials.
# Permissions to create tables, indices and triggers must be granted to JDBC user.
# The schema must be created first.
#sonar.jdbc.username=
#sonar.jdbc.password=
sonar.jdbc.username=sonar
sonar.jdbc.password=SONAR_PASSWORD