Outils pour utilisateurs

Outils du site


informatique:databases

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
Prochaine révision
Révision précédente
informatique:databases [2022/08/23 14:29] – [Représentation visuelle des jointures] alexisinformatique:databases [2023/09/18 04:58] (Version actuelle) – [Types de bases de données] alexis
Ligne 8: Ligne 8:
   * Relationnelle -- [[https://en.wikipedia.org/wiki/MySQL|MySQL]], [[https://en.wikipedia.org/wiki/Oracle_Database|Oracle Database]], [[https://en.wikipedia.org/wiki/PostgreSQL|PostgreSQL]], [[https://en.wikipedia.org/wiki/SQLite|SQLite]].   * Relationnelle -- [[https://en.wikipedia.org/wiki/MySQL|MySQL]], [[https://en.wikipedia.org/wiki/Oracle_Database|Oracle Database]], [[https://en.wikipedia.org/wiki/PostgreSQL|PostgreSQL]], [[https://en.wikipedia.org/wiki/SQLite|SQLite]].
   * Orientée documents -- [[https://en.wikipedia.org/wiki/Elasticsearch|Elasticsearch]], [[https://en.wikipedia.org/wiki/MongoDB|MongoDB]].   * Orientée documents -- [[https://en.wikipedia.org/wiki/Elasticsearch|Elasticsearch]], [[https://en.wikipedia.org/wiki/MongoDB|MongoDB]].
-  * Clé-valeur -- [[https://en.wikipedia.org/wiki/LevelDB|LevelDB]], [[https://github.com/cockroachdb/pebble|Pebble]], [[https://en.wikipedia.org/wiki/RocksDB|RocksDB]].+  * Clé-valeur -- [[https://en.wikipedia.org/wiki/LevelDB|LevelDB]], [[https://github.com/cockroachdb/pebble|Pebble]], [[https://en.wikipedia.org/wiki/Redis|Redis]], [[https://en.wikipedia.org/wiki/RocksDB|RocksDB]], [[https://en.wikipedia.org/wiki/FoundationDB|FoundationDB]].
   * Série temporelle -- [[https://en.wikipedia.org/wiki/Prometheus_(software)|Prometheus]], [[https://en.wikipedia.org/wiki/TimescaleDB|TimescaleDB]].   * Série temporelle -- [[https://en.wikipedia.org/wiki/Prometheus_(software)|Prometheus]], [[https://en.wikipedia.org/wiki/TimescaleDB|TimescaleDB]].
 +  * Vectorielle -- [[https://github.com/featureform/featureform|featureform]], [[https://milvus.io/|Milvus]], [[https://www.pinecone.io/|Pinecone]], [[https://weaviate.io/|Weaviate]].
 +
  
  
Ligne 55: Ligne 57:
 ==== Permissions ==== ==== Permissions ====
 Pour pouvoir modifier une base de données Sqlite, il faut non seulement que le fichier qui la contienne ait les bonnes permissions mais aussi que le répertoire parent ait les mêmes permissions. Pour pouvoir modifier une base de données Sqlite, il faut non seulement que le fichier qui la contienne ait les bonnes permissions mais aussi que le répertoire parent ait les mêmes permissions.
 +<WRAP prewrap>
 <code bash> <code bash>
 # La base de données n'est pas accessible en écriture # La base de données n'est pas accessible en écriture
Ligne 68: Ligne 71:
 -rwxrwxrwx 1    100 82 6696960 Feb 22 06:41 db.sqlite -rwxrwxrwx 1    100 82 6696960 Feb 22 06:41 db.sqlite
 </code> </code>
 +</WRAP>
  
 ==== Requête sur plusieurs bases de données ==== ==== Requête sur plusieurs bases de données ====
 Il est possible de faire des requêtes en ciblant des tables situées dans des bases de données différentes. Il est possible de faire des requêtes en ciblant des tables situées dans des bases de données différentes.
 Pour cela, il faut commencer par [[https://www.sqlite.org/lang_attach.html|attacher la base de données]] ciblée à celle utilisée ((Attention, le nombre de base de données attachées est limité)) avec la commande suivante : Pour cela, il faut commencer par [[https://www.sqlite.org/lang_attach.html|attacher la base de données]] ciblée à celle utilisée ((Attention, le nombre de base de données attachées est limité)) avec la commande suivante :
 +<WRAP prewrap>
 <code sql> <code sql>
 ATTACH 'db.sqlite' AS other; ATTACH 'db.sqlite' AS other;
 </code> </code>
 +</WRAP>
  
 Ensuite, il suffit de référencer les tables de cette base de données de la manière suivante : Ensuite, il suffit de référencer les tables de cette base de données de la manière suivante :
 +<WRAP prewrap>
 <code sql> <code sql>
 SELECT * SELECT *
Ligne 82: Ligne 89:
 JOIN other.table AS b ON a.id = b.id JOIN other.table AS b ON a.id = b.id
 </code> </code>
 +</WRAP>
 +====== DBeaver ======
 +
 +===== Récupérer les mots de passe sauvegardés =====
  
 +  - Localiser le fichier contenant les mots de passe avec la commande suivante : <WRAP prewrap><code bash>find . -iname \*credentials-config.json</code></WRAP>
 +  - Déchiffrer le fichier contenant les mots de passe avec la commande suivante : <WRAP prewrap><code bash>openssl aes-128-cbc -d -K babb4a9f774ab853c96c2d653dfe544a -iv 00000000000000000000000000000000 -in "${HOME}/.local/share/DBeaverData/workspace6/General/.dbeaver/credentials-config.json" | dd bs=1 skip=16 2>/dev/null | jq</code></WRAP>
 +  - Afficher les informations des bases de données en ouvrant le fichier de configuration des connexions avec la commande suivante : <WRAP prewrap><code bash>cat .local/share/DBeaverData/workspace6/General/.dbeaver/data-sources.json | jq</code></WRAP>
 +  - Comparer les résultats des 2 commandes précédentes pour lier une connexion à son utilisateur et son mot de passe.
informatique/databases.1661290142.txt.gz · Dernière modification : 2022/08/23 14:29 de alexis