Python #32 - base de données
Table des matières:
Lors de l'administration des serveurs de bases de données PostgreSQL, l'une des tâches les plus courantes que vous effectuerez probablement consiste à répertorier les bases de données et leurs tables.
PostgreSQL est livré avec un outil interactif appelé
psql
qui vous permet de vous connecter au serveur et d'exécuter des requêtes sur celui-ci. Lorsque vous utilisez
psql
vous pouvez également profiter de ses méta-commandes. Ces commandes sont utiles pour les scripts et l'administration de la ligne de commande. Toutes les méta-commandes commencent par une barre oblique inverse sans guillemets et sont également appelées commandes de barre oblique inverse.
Ce didacticiel explique comment afficher des bases de données et des tables dans un serveur PostgreSQL à l'aide de
psql
.
Liste des bases de données
Vous pouvez vous connecter au serveur PostgreSQL en utilisant la commande
psql
comme n'importe quel utilisateur du système. Selon la configuration du serveur, l'utilisateur peut avoir besoin d'entrer son mot de passe pour se connecter au terminal psql. Pour accéder au terminal psql en tant qu'utilisateur auquel vous êtes actuellement connecté, tapez simplement
psql
.
Lorsque le package PostgreSQL est installé, un utilisateur administratif nommé «postgres» est créé. Par défaut, cet utilisateur peut se connecter au serveur PostgreSQL local sans mot de passe.
Pour accéder au terminal
psql
tant qu'utilisateur «postgres», exécutez:
sudo -u postgres psql
La commande
sudo
vous permet d'exécuter des commandes en tant qu'autre utilisateur.
Depuis le terminal psql, exécutez la méta-commande
\l
ou
\list
pour répertorier toutes les bases de données:
\l
Le résultat comprendra le nombre de bases de données, le nom de chaque base de données, son propriétaire, les privilèges d'encodage et d'accès:
List of databases Name | Owner | Encoding | Collate | Ctype | Access privileges -----------+----------+----------+---------+---------+----------------------- odoo | odoo | UTF8 | C | C.UTF-8 | postgres | postgres | UTF8 | C.UTF-8 | C.UTF-8 | template0 | postgres | UTF8 | C.UTF-8 | C.UTF-8 | =c/postgres + | | | | | postgres=CTc/postgres template1 | postgres | UTF8 | C.UTF-8 | C.UTF-8 | =c/postgres + | | | | | postgres=CTc/postgres (4 rows)
Le serveur PostgreSQL possède trois bases de données créées par défaut, template0, template1 et postgres. Les deux premiers sont des modèles utilisés lors de la création de nouvelles bases de données.
Pour obtenir une liste de toutes les bases de données sans accéder au shell psql, utilisez le commutateur
-c
comme indiqué ci-dessous:
sudo -u postgres psql -c "\l"
Une autre façon de répertorier les bases de données consiste à utiliser l'instruction SQL suivante:
SELECT datname FROM pg_database;
Contrairement à la méta-commande
\l
la requête ci-dessus n'affichera que les noms des bases de données:
datname ----------- postgres odoo template1 template0 (4 rows)
Liste des tableaux
Pour répertorier toutes les tables d'une base de données particulière, vous devez d'abord vous y connecter à l'aide de la méta-commande
\c
ou
\connect
. L'utilisateur auquel vous êtes connecté sur le terminal psql doit pouvoir se connecter à la base de données.
Par exemple, pour vous connecter à la base de données nommée «odoo», vous devez taper:
\c odoo
Une fois la base de données changée, utilisez la méta-commande
\dt
pour répertorier toutes les tables de base de données:
La sortie inclura le nombre de tables, le nom de chaque table et son schéma, type et propriétaire:
List of relations Schema | Name | Type | Owner --------+-----------------------------------------------------+-------+------- public | base_import_import | table | odoo public | base_import_mapping | table | odoo public | base_import_tests_models_char | table | odoo… public | web_editor_converter_test_sub | table | odoo public | web_tour_tour | table | odoo public | wizard_ir_model_menu_create | table | odoo (107 rows)
Si la base de données est vide, la sortie ressemblera à ceci:
No relations found.
Pour obtenir des informations sur les tailles des tables et leurs descriptions, utilisez
\dt+
.
Conclusion
Vous avez appris à répertorier les bases de données et les tables PostgreSQL à l'aide de la commande
psql
.
N'hésitez pas à laisser un commentaire si vous avez des questions.
postgresqlComment télécharger les données LinkedIn à l`aide de l`outil d`exportation de données LinkedIn
Vous pouvez télécharger vos données de profil LinkedIn. LinkedIn stocke des informations sur vos connexions, messages, compétences, inscriptions, médias téléchargés, et plus encore! Il est possible d`extraire les données de LinkedIn vers un fichier Excel.
Comment gérer les bases de données mysql et les utilisateurs à partir de la ligne de commande
MySQL est le système de gestion de base de données relationnelle open source le plus populaire. Ce didacticiel explique comment utiliser la ligne de commande pour créer et gérer des bases de données et des utilisateurs MySQL et MariaDB.
Lister (afficher) les tables dans une base de données mysql
Cet article montre comment répertorier les tables dans une base de données MySQL ou MariaDB via la ligne de commande à l'aide de la commande SHOW TABLES.