Initialisation
This commit is contained in:
36
data/pages/informatique/linux/applications/sgbd/index.txt
Normal file
36
data/pages/informatique/linux/applications/sgbd/index.txt
Normal file
@@ -0,0 +1,36 @@
|
||||
====== SGBD ======
|
||||
|
||||
Un SGBD est l'acronyme de **Système de Gestion de Base de Données**, c'est un logiciel informatique qui permet de stocker, organiser, gérer et manipuler des données dans une base de données.
|
||||
|
||||
Le **SGBD** fournit une interface pour les utilisateurs et les applications qui leur permet d'ajouter, de modifier, de supprimer et de consulter des données dans la base de données, tout en s'assurant que les données sont cohérentes, précises, fiables et sécurisées. Le **SGBD** est également responsable de l'optimisation des requêtes pour améliorer les performances de la base de données, de la gestion des transactions pour garantir l'intégrité des données, de la gestion des accès et des autorisations pour contrôler l'accès à la base de données, et de la sauvegarde et de la récupération de données pour assurer la disponibilité et la récupération des données en cas de panne.
|
||||
|
||||
Les **SGBD** sont utilisés dans de nombreux domaines, tels que les entreprises, les organisations gouvernementales, les institutions académiques et les applications web. Les exemples de **SGBD** populaires comprennent **PostgreSQL**, **MySQL**, **MariaDB**, **Oracle**, **Microsoft SQL Server**, **MongoDB** et **Cassandra**.
|
||||
|
||||
===== Table des matières =====
|
||||
|
||||
<WRAP clear/>
|
||||
|
||||
|
||||
<WRAP group>
|
||||
<WRAP half column>
|
||||
==== Les pages ====
|
||||
|
||||
<nav stacked="true" fade="true">
|
||||
<nspages . -h1 -nbCol=1 -textNS=" " -textPages=" " -simpleList -exclude:cookie: -exclude:user: -exclude:playground: -exclude:[sidebar index start rightsidebar navbar topheader header help pageheader pagefooter legal-notices footer 404]>
|
||||
</nav>
|
||||
</WRAP>
|
||||
|
||||
<WRAP half column>
|
||||
==== Les sous-catégories ====
|
||||
|
||||
<nav stacked="true" fade="true">
|
||||
<nspages . -h1 -nbCol=1 -noPages -subns -textNS=" " -textPages=" " -simpleList -exclude:cookie: -exclude:user: -exclude:playground: -exclude:[sidebar index start rightsidebar navbar topheader header help pageheader pagefooter legal-notices footer 404]>
|
||||
</nav>
|
||||
</WRAP>
|
||||
</WRAP>
|
||||
|
||||
|
||||
~~NOTOC~~
|
||||
~~NOCACHE~~
|
||||
|
||||
|
||||
@@ -0,0 +1,46 @@
|
||||
====== Base de données MariaDB ======
|
||||
|
||||
**MariaDB** est un système de gestion de base de données relationnelle (SGBD) open-source, créé par les développeurs qui ont initié le développement de **MySQL**. Il est conçu pour être une alternative à **MySQL**, offrant des fonctionnalités similaires tout en ajoutant des améliorations et des nouvelles fonctionnalités.
|
||||
|
||||
**MariaDB** utilise le langage de requête SQL (Structured Query Language) pour gérer les bases de données et permet de stocker, organiser, rechercher et récupérer des données.
|
||||
|
||||
Les caractéristiques clés de **MariaDB** incluent la compatibilité avec **MySQL**, la haute disponibilité, la scalabilité, la sécurité, la réplication et la gestion des transactions. Il offre également une variété de moteurs de stockage, y compris **InnoDB**, **MyISAM** et **Aria**, pour offrir des fonctionnalités de stockage flexibles pour les différents cas d'utilisation.
|
||||
|
||||
En raison de sa licence open source, **MariaDB** est utilisé par de nombreuses organisations pour stocker et gérer des données de toutes tailles et de tous types. Il est souvent utilisé dans des environnements d'entreprise pour des applications critiques telles que les systèmes de gestion de contenu (CMS), les systèmes de gestion de l'information (SGI), les applications Web et les systèmes de business intelligence.
|
||||
|
||||
En 1995 est sortie la première version internationale du SGBD open source MySQL de **MySQL AB**.
|
||||
|
||||
En 2009, à la suite du rachat de **MySQL** par **Sun Microsystems** et des annonces du rachat de **Sun Microsystems** par **Oracle Corporation**, le fondateur de MySQL quitte cette société pour lancer le projet **MariaDB**, dans une démarche visant à remplacer **MySQL** tout en assurant l’interopérabilité.
|
||||
|
||||
À ce jour, en octobre 2020, le SGBD standard libre de diffusion (licence GPL) s'appelle **MariaDB Community Server**. Certains moteurs proposés par MariaDb (MaxScale) sont soumis aux termes de la licence **Business Source License** (BSL), licence payante dans certaines conditions.
|
||||
|
||||
À partir de la version 8.0, **MariaDB** n'assure plus la compatibilité parfaite de MySQL au niveau binaire.
|
||||
|
||||
Voir les notes des versions : [[https://mariadb.com/kb/en/release-notes/]]
|
||||
|
||||
===== Table des matières =====
|
||||
|
||||
<WRAP clear/>
|
||||
|
||||
|
||||
<WRAP group>
|
||||
<WRAP half column>
|
||||
==== Les pages ====
|
||||
|
||||
<nav stacked="true" fade="true">
|
||||
<nspages . -h1 -nbCol=1 -textNS=" " -textPages=" " -simpleList -exclude:cookie: -exclude:user: -exclude:playground: -exclude:[sidebar index start rightsidebar navbar topheader header help pageheader pagefooter legal-notices footer 404]>
|
||||
</nav>
|
||||
</WRAP>
|
||||
|
||||
<WRAP half column>
|
||||
==== Les sous-catégories ====
|
||||
|
||||
<nav stacked="true" fade="true">
|
||||
<nspages . -h1 -nbCol=1 -noPages -subns -textNS=" " -textPages=" " -simpleList -exclude:cookie: -exclude:user: -exclude:playground: -exclude:[sidebar index start rightsidebar navbar topheader header help pageheader pagefooter legal-notices footer 404]>
|
||||
</nav>
|
||||
</WRAP>
|
||||
</WRAP>
|
||||
|
||||
|
||||
~~NOTOC~~
|
||||
~~NOCACHE~~
|
||||
@@ -0,0 +1,42 @@
|
||||
====== Installer MariaDB-Server ======
|
||||
|
||||
Pour installer MariaDB-server sous Debian, vous pouvez suivre les étapes suivantes.
|
||||
|
||||
<panel>
|
||||
Mettez à jour le système en exécutant la commande suivante :
|
||||
|
||||
sudo apt-get update
|
||||
</panel>
|
||||
|
||||
<panel>Installez le paquet ''mariadb-server'' en exécutant la commande suivante :
|
||||
|
||||
sudo apt-get install mariadb-server
|
||||
|
||||
Pendant l'installation, vous serez invité à saisir un mot de passe pour l'utilisateur root de la base de données MariaDB. Entrez un mot de passe fort et notez-le soigneusement.
|
||||
</panel>
|
||||
|
||||
<panel>
|
||||
Une fois l'installation terminée, vous pouvez démarrer le service MariaDB en exécutant la commande suivante :
|
||||
|
||||
sudo systemctl start mariadb
|
||||
</panel>
|
||||
|
||||
<panel>
|
||||
Vous pouvez vérifier que le service est en cours d'exécution en exécutant la commande suivante :
|
||||
|
||||
sudo systemctl status mariadb
|
||||
</panel>
|
||||
|
||||
<panel>
|
||||
Si vous voulez que MariaDB démarre automatiquement au démarrage de votre système, vous pouvez activer le service en exécutant la commande suivante :
|
||||
sudo systemctl enable mariadb
|
||||
</panel>
|
||||
|
||||
<panel>
|
||||
Et voilà, MariaDB est maintenant installé sur votre système Debian. Vous pouvez accéder à la console MariaDB en exécutant la commande suivante :
|
||||
|
||||
sudo mariadb
|
||||
|
||||
Et vous pouvez utiliser la commande exit pour quitter la console.
|
||||
</panel>
|
||||
|
||||
@@ -0,0 +1,28 @@
|
||||
====== Maintenance ======
|
||||
===== Table des matières =====
|
||||
|
||||
<WRAP clear/>
|
||||
|
||||
|
||||
<WRAP group>
|
||||
<WRAP half column>
|
||||
==== Les pages ====
|
||||
|
||||
<nav stacked="true" fade="true">
|
||||
<nspages . -h1 -nbCol=1 -textNS=" " -textPages=" " -simpleList -exclude:cookie: -exclude:user: -exclude:playground: -exclude:[sidebar index start rightsidebar navbar topheader header help pageheader pagefooter legal-notices footer 404]>
|
||||
</nav>
|
||||
</WRAP>
|
||||
|
||||
<WRAP half column>
|
||||
==== Les sous-catégories ====
|
||||
|
||||
<nav stacked="true" fade="true">
|
||||
<nspages . -h1 -nbCol=1 -noPages -subns -textNS=" " -textPages=" " -simpleList -exclude:cookie: -exclude:user: -exclude:playground: -exclude:[sidebar index start rightsidebar navbar topheader header help pageheader pagefooter legal-notices footer 404]>
|
||||
</nav>
|
||||
</WRAP>
|
||||
</WRAP>
|
||||
|
||||
~~NOTOC~~
|
||||
~~NOCACHE~~
|
||||
|
||||
|
||||
@@ -0,0 +1,17 @@
|
||||
====== Savoir si MariaDB est installé ======
|
||||
{{ :dummy.png?75x75|}}
|
||||
|
||||
Sous Linux, pour savoir si MariaDB est installé sur un système, vous pouvez utiliser l'une des méthodes suivantes :
|
||||
|
||||
<panel>
|
||||
Vous pouvez ouvrir un terminal et exécuter la commande suivante pour vérifier si PostgreSQL est installé :
|
||||
|
||||
sudo systemctl status mariadb
|
||||
|
||||
Cette commande va afficher le statut de **MariaDB** s'il est installé sur votre système. Si vous voyez un message indiquant que le service est actif (running) et que le processus est en cours d'exécution, cela signifie que **MariaDB** est installé et en cours d'exécution.
|
||||
|
||||
{{ informatique:linux:sgbd:mysql:pasted:20230216-004307.png }}
|
||||
|
||||
</panel>
|
||||
|
||||
Si **MariaDB** n'est pas installé sur votre système, vous verrez un message d'erreur indiquant que le service n'est pas trouvé. Dans ce cas, vous pouvez l'installer en utilisant la commande appropriée pour votre distribution Linux (par exemple, ''sudo apt-get install mariadb-server'' pour les distributions basées sur **Debian**/**Ubuntu** ou ''sudo yum install mariadb-server'' pour les distributions basées sur **Red Hat**/**CentOS**/**Fedora**).
|
||||
@@ -0,0 +1,28 @@
|
||||
====== Scripts ======
|
||||
===== Table des matières =====
|
||||
|
||||
<WRAP clear/>
|
||||
|
||||
|
||||
<WRAP group>
|
||||
<WRAP half column>
|
||||
==== Les pages ====
|
||||
|
||||
<nav stacked="true" fade="true">
|
||||
<nspages . -h1 -nbCol=1 -textNS=" " -textPages=" " -simpleList -exclude:cookie: -exclude:user: -exclude:playground: -exclude:[sidebar index start rightsidebar navbar topheader header help pageheader pagefooter legal-notices footer 404]>
|
||||
</nav>
|
||||
</WRAP>
|
||||
|
||||
<WRAP half column>
|
||||
==== Les sous-catégories ====
|
||||
|
||||
<nav stacked="true" fade="true">
|
||||
<nspages . -h1 -nbCol=1 -noPages -subns -textNS=" " -textPages=" " -simpleList -exclude:cookie: -exclude:user: -exclude:playground: -exclude:[sidebar index start rightsidebar navbar topheader header help pageheader pagefooter legal-notices footer 404]>
|
||||
</nav>
|
||||
</WRAP>
|
||||
</WRAP>
|
||||
|
||||
~~NOTOC~~
|
||||
~~NOCACHE~~
|
||||
|
||||
|
||||
@@ -0,0 +1,35 @@
|
||||
====== Base de données PostgreSQL ======
|
||||
|
||||
**PostgreSQL** est un système de gestion de bases de données relationnelles (SGBDR) open source, également connu sous le nom de **Postgres**. Il est conçu pour stocker et gérer des données structurées, telles que des informations de clients, des transactions financières ou des données de suivi de production. **PostgreSQL** est utilisé par de nombreuses entreprises, organisations et gouvernements du monde entier pour stocker et gérer des données importantes et sensibles.
|
||||
|
||||
**PostgreSQL** est connu pour sa fiabilité, sa stabilité et sa conformité aux normes du secteur, telles que SQL et ACID (Atomicité, Cohérence, Isolation, Durabilité). Il offre également des fonctionnalités avancées telles que les transactions, les vues, les déclencheurs, les procédures stockées, les fonctions utilisateur, la réplication et la gestion de la sécurité.
|
||||
|
||||
**PostgreSQL** est distribué sous une licence open source, ce qui signifie qu'il est gratuit et peut être utilisé, modifié et distribué librement. En raison de sa stabilité, de sa sécurité et de sa flexibilité, **PostgreSQL** est souvent choisi comme alternative aux systèmes de gestion de bases de données commerciaux tels qu'**Oracle** ou **Microsoft SQL Server**.
|
||||
|
||||
|
||||
===== Table des matières =====
|
||||
|
||||
<WRAP clear/>
|
||||
|
||||
|
||||
<WRAP group>
|
||||
<WRAP half column>
|
||||
==== Les pages ====
|
||||
|
||||
<nav stacked="true" fade="true">
|
||||
<nspages . -h1 -nbCol=1 -textNS=" " -textPages=" " -simpleList -exclude:cookie: -exclude:user: -exclude:playground: -exclude:[sidebar index start rightsidebar navbar topheader header help pageheader pagefooter legal-notices footer 404]>
|
||||
</nav>
|
||||
</WRAP>
|
||||
|
||||
<WRAP half column>
|
||||
==== Les sous-catégories ====
|
||||
|
||||
<nav stacked="true" fade="true">
|
||||
<nspages . -h1 -nbCol=1 -noPages -subns -textNS=" " -textPages=" " -simpleList -exclude:cookie: -exclude:user: -exclude:playground: -exclude:[sidebar index start rightsidebar navbar topheader header help pageheader pagefooter legal-notices footer 404]>
|
||||
</nav>
|
||||
</WRAP>
|
||||
</WRAP>
|
||||
|
||||
|
||||
~~NOTOC~~
|
||||
~~NOCACHE~~
|
||||
@@ -0,0 +1,19 @@
|
||||
====== Écrire dans un fichier CSV ======
|
||||
{{ :dummy.png?75x75|}}
|
||||
|
||||
Voici une commande SQL qui permet de copier des données d'une table **PostgreSQL** vers un **fichier CSV**.
|
||||
|
||||
Depuis le prompt de commande de PostgreSQL (psql) :
|
||||
|
||||
<code>
|
||||
\COPY (SELECT DISTINCT * FROM files t1 WHERE EXISTS ( SELECT * FROM files t2 WHERE t1.ID <> t2.ID AND t1.sha1 = t2.sha1 )) TO '/home/cedric/doublons.csv' WITH (FORMAT csv, DELIMITER ';')
|
||||
</code>
|
||||
|
||||
* ''\COPY'' est une commande SQL spécifique à **PostgreSQL** qui permet de copier des données depuis ou vers un fichier.
|
||||
|
||||
* ''TO '/home/cedric/doublons.csv''' spécifie le chemin d'accès et le nom du fichier CSV dans lequel les données sélectionnées doivent être copiées.
|
||||
|
||||
* ''WITH (FORMAT csv, DELIMITER ';')'' spécifie le format de sortie et le délimiteur de champ du fichier CSV.
|
||||
|
||||
|
||||
--- //[[user:cedricabonnel]]//
|
||||
@@ -0,0 +1,33 @@
|
||||
====== psql ======
|
||||
{{ :dummy.png?75x75|}}
|
||||
|
||||
**psql** est un outil puissant pour gérer les bases de données **PostgreSQL** en ligne de commande, et est souvent utilisé par les administrateurs de base de données, les développeurs, les analystes de données et les scientifiques de données pour travailler avec des données stockées dans une base de données **PostgreSQL**.
|
||||
|
||||
|
||||
===== Table des matières =====
|
||||
|
||||
<WRAP clear/>
|
||||
|
||||
|
||||
<WRAP group>
|
||||
<WRAP half column>
|
||||
==== Les pages ====
|
||||
|
||||
<nav stacked="true" fade="true">
|
||||
<nspages . -h1 -nbCol=1 -textNS=" " -textPages=" " -simpleList -exclude:cookie: -exclude:user: -exclude:playground: -exclude:[sidebar index start rightsidebar navbar topheader header help pageheader pagefooter legal-notices footer 404]>
|
||||
</nav>
|
||||
</WRAP>
|
||||
|
||||
<WRAP half column>
|
||||
==== Les sous-catégories ====
|
||||
|
||||
<nav stacked="true" fade="true">
|
||||
<nspages . -h1 -nbCol=1 -noPages -subns -textNS=" " -textPages=" " -simpleList -exclude:cookie: -exclude:user: -exclude:playground: -exclude:[sidebar index start rightsidebar navbar topheader header help pageheader pagefooter legal-notices footer 404]>
|
||||
</nav>
|
||||
</WRAP>
|
||||
</WRAP>
|
||||
|
||||
|
||||
~~NOTOC~~
|
||||
~~NOCACHE~~
|
||||
|
||||
@@ -0,0 +1,43 @@
|
||||
====== Savoir si PostgreSQL est installé ======
|
||||
{{tag>"script linux"}}
|
||||
{{ :dummy.png?75x75|Nom de la section}}
|
||||
|
||||
Sous Linux, pour savoir si PostgreSQL est installé sur un système, vous pouvez utiliser l'une des méthodes suivantes :
|
||||
|
||||
<panel>
|
||||
Vous pouvez ouvrir un terminal et exécuter la commande suivante pour vérifier si PostgreSQL est installé :
|
||||
|
||||
psql --version
|
||||
|
||||
Si PostgreSQL est installé, cette commande affichera la version de PostgreSQL installée. Si PostgreSQL n'est pas installé, vous recevrez un message d'erreur indiquant que la commande n'a pas été trouvée.
|
||||
</panel>
|
||||
|
||||
<panel>
|
||||
Si vous voulez vérifier si **PostgreSQL** est installé sur votre système Linux mais que **psql** n'est pas disponible, vérifier les services en cours d'exécution. Vous pouvez vérifier si le service PostgreSQL est en cours d'exécution sur votre système en utilisant la commande suivante :
|
||||
|
||||
sudo systemctl status postgresql
|
||||
|
||||
Cette commande affichera le statut du service PostgreSQL s'il est installé et en cours d'exécution. Si le service n'est pas installé, vous recevrez un message d'erreur indiquant que le service est introuvable.
|
||||
</panel>
|
||||
|
||||
<panel>
|
||||
**PostgreSQL** est généralement installé dans le répertoire ''/usr/lib/postgresql/'' suivi du numéro de version de **PostgreSQL** installé. Vous pouvez vérifier si ce répertoire existe en utilisant la commande suivante :
|
||||
|
||||
ls /usr/lib/postgresql/
|
||||
</panel>
|
||||
|
||||
<panel>
|
||||
**PostgreSQL** utilise plusieurs fichiers de configuration pour fonctionner, tels que ''pg_hba.conf'', ''postgresql.conf'', etc. Vous pouvez vérifier si ces fichiers existent sur votre système en utilisant la commande suivante :
|
||||
|
||||
ls /etc/postgresql/
|
||||
</panel>
|
||||
|
||||
<panel>
|
||||
Le fichier ''pg_hba.conf'' est un fichier de configuration utilisé par **PostgreSQL** pour contrôler l'accès aux bases de données. Voici comment rechercher ce fichier dans votre système Linux :
|
||||
|
||||
sudo find / -name pg_hba.conf
|
||||
|
||||
</panel>
|
||||
|
||||
|
||||
Si **PostgreSQL** n'est pas installé sur votre système, vous devrez l'installer avant de pouvoir l'utiliser.
|
||||
Reference in New Issue
Block a user