PostgreSQLLa base de données la plus sophistiquée au monde.

createdb

createdb — Créer une nouvelle base de données PostgreSQL

Synopsis

createdb [option...] [nombase] [description]

Description

createdb crée une nouvelle base de données.

Normalement, l'utilisateur de la base de données qui exécute cette commande devient le propriétaire de la nouvelle base de données. Néanmoins, un propriétaire différent peut être spécifié via l'option -O, sous réserve que l'utilisateur qui lance la commande ait les droits appropriés.

createdb est un enrobage de la commande SQL CREATE DATABASE. Il n'y a pas de réelle différence entre la création de bases de données par cet outil ou à l'aide d'autres méthodes d'accès au serveur.

Options

createdb accepte les arguments suivants en ligne de commande :

nombase

Le nom de la base de données à créer. Le nom doit être unique parmi toutes les bases de données PostgreSQL™ de ce groupe. La valeur par défaut est le nom de l'utilisateur courant.

description

Le commentaire à associer à la base de données créée.

-D tablespace, --location tablespace

Le tablespace par défaut de la base de données.

-e, --echo

Les commandes engendrées par createdb et envoyées au serveur sont affichées.

-l locale, --locale locale

Indique la locale à utiliser dans cette base de données. C'est équivalent à préciser à la fois --lc-collate et --lc-ctype.

--lc-collate locale

Indique le paramètre LC_COLLATE utilisé pour cette base de données.

--lc-ctype locale

Indique le paramètre LC_CTYPE utilisé pour cette base de données.

-E locale, --encoding locale

L'encodage des caractères à utiliser dans la base de données. Les jeux de caractères supportés par le serveur PostgreSQL™ sont décrits dans Section 22.2.1, « Jeux de caractères supportés ».

-O propriétaire, --owner propriétaire

Le propriétaire de la base de données.

-T modèle, --template modèle

La base de données modèle.

Les options -D, -E, -l, -O et -T correspondent aux options de la commande SQL sous-jacente CREATE DATABASE, à consulter pour plus d'informations sur ces options.

createdb accepte aussi les arguments suivants en ligne de commande, pour les paramètres de connexion :

-h hôte, --host hôte

Le nom de l'hôte sur lequel le serveur est en cours d'exécution. Si la valeur commence avec un slash (NDT : barre oblique, /), elle est utilisée comme répertoire du socket de domaine Unix.

-p port, --port port

Le port TCP ou l'extension du fichier socket de domaine Unix local sur lequel le serveur attend les connexions.

-U nomutilisateur, --username nomutilisateur

Le nom de l'utilisateur utilisé pour la connexion.

-w, --no-password

Ne demande jamais un mot de passe. Si le serveur en réclame un pour l'authentification et qu'un mot de passe n'est pas disponible d'une autre façon (par exemple avec le fichier .pgpass), la tentative de connexion échouera. Cette option peut être utile pour les scripts où aucun utilisateur n'est présent pour saisir un mot de passe.

-W, --password

Force createdb à demander un mot de passe avant la connexion à une base de données.

Cette option n'est jamais obligatoire car createdb demandera automatiquement un mot de passe si le serveur exige une authentification par mot de passe. Néanmoins, createdb perdra une tentative de connexion pour trouver que le serveur veut un mot de passe. Dans certains cas, il est préférable d'ajouter l'option -W pour éviter la tentative de connexion.

Environnement

PGDATABASE

S'il est configuré, précise le nom de la base de données à créer. Peut-être surchargé sur la ligne de commande.

PGHOST, PGPORT, PGUSER

Paramètres de connexion par défaut. PGUSER détermine aussi le nom de la base de données à créer si ce dernier n'est pas spécifié sur la ligne de commande ou par PGDATABASE.

Cet outil, comme la plupart des autres outils PostgreSQL™, utilise aussi les variables d'environnement supportées par la bibliothèque libpq (voir Section 30.13, « Variables d'environnement »).

Diagnostiques

En cas de difficulté, on peut se référer à CREATE DATABASE et psql(1) qui présentent les problèmes éventuels et les messages d'erreurs. Le serveur de bases de données doit être en cours d'exécution sur l'hôte cible. De plus, tous les paramètres de connexion et variables d'environnement par défaut utilisés par la bibliothèque d'interface libpq s'appliquent.

Exemples

Créer la base de données demo sur le serveur de bases de données par défaut :

$ createdb demo

Créer la base de données demo sur le serveur hébergé sur l'hôte eden, port 5000, en utilisant l'encodage LATIN1 avec affichage de la commande engendrée :

$ createdb -p 5000 -h eden -E LATIN1 -e demo
CREATE DATABASE "demo" ENCODING 'LATIN1'

Voir aussi

dropdb(1), CREATE DATABASE