# Processus de création d'une BDD

### 1) Créer une BDD

```SQL
CREATE DATABASE <dbname>;
```

Sortie :

```SQL
postgres=# CREATE DATABASE exempledb;
CREATE DATABASE
```

### 2) Créer un utilisateur pour cette BDD

Il est préférable d'avoir un utilisateur par base donnée.

```SQL
CREATE USER <username> WITH ENCRYPTED PASSWORD 'yourpass';
```

Sortie :

```SQL
postgres=# CREATE USER myuser WITH ENCRYPTED PASSWORD 'mypass';
CREATE ROLE
```

### 3) Donner tous les droits sur la BDD

Une fois l'utilisateur et la base de donnée créé, pour que celui-ci puisse la manager il est nécessaire de donner des droits au nouvel utilisateur.

```SQL
GRANT ALL PRIVILEGES ON DATABASE <dbname> TO <username>;
```

Sortie :

```SQL
postgres=# GRANT ALL PRIVILEGES ON DATABASE exempledb TO myuser;
GRANT
```

### 4) Donner les droits de connexion

```SQL
postgres=# GRANT CONNECT ON DATABASE exempledb TO myuser;
GRANT
```

### 5) Modifier le propriétaire

Modifier le propriétaire de la BDD pour mettre notre utilisateur récemment créé :

```sql
ALTER DATABASE db_name OWNER TO new_owner_name;
```

### 56) Se connecter sur la nouvelle BDD

```SQL
 psql -U <username> -d <dbname>
```