# Création des dossiers pour le nouveau cluster
mkdir -p /var/lib/postgresql/10/apptra001
mkdir -p /var/tmp/postgresql/10/apptra001
mkdir -p /var/log/postgresql
chown -R postgres:postgres /var/lib/postgresql/10/apptra001
chown -R postgres:postgres /var/tmp/postgresql/10/apptra001
chown -R postgres:postgres /var/log/postgresql
chmod -R 700 /var/lib/postgresql/10/apptra001
chmod -R 700 /var/tmp/postgresql/10/apptra001
chmod -R 700 /var/log/postgresql
# Création dun service systemd pour le nouveau cluster
cp -p /lib/systemd/system/postgresql-10.service /etc/systemd/system/postgresql_10_apptra001.service
vi /etc/systemd/system/postgresql_10_apptra001.service
remplacer
Environment=PGDATA=/var/lib/pgsql/10/data/
par
Environment=PGDATA=/var/lib/postgresql/10/apptra001
# Verification de la locale, beaucoup de parametres de postgresql dependront par defaut de lenvironnement systeme
locale
LANG=fr_FR.UTF-8
...
(vous pouvez modifier la locale avec localectl set-locale LANG=fr_FR.UTF-8)
# Création du cluster apptra001 avec activation des checksums
export PGSETUP_INITDB_OPTIONS="-k"
/usr/pgsql-10/bin/postgresql-10-setup initdb postgresql_10_apptra001
Initializing database ... OK
# Activation du service systemd de notre cluster
systemctl enable postgresql_10_apptra001
Created symlink from /etc/systemd/system/multi-user.target.wants/postgresql_10_apptra001.service to /etc/systemd/system/postgresql_10_apptra001.service.
# Démarrage du cluster apptra001
systemctl start postgresql_10_apptra001
# Controle de lactivation des checksums et modification des parametres de logging, redirection vers /var/log/postgresql
psql
psql (10.1)
Saisissez « help » pour l'aide.
postgres=# show data_checksums;
data_checksums
----------------
on
(1 ligne)
alter system set log_directory = '/var/log/postgresql';
ALTER SYSTEM
alter system set log_truncate_on_rotation = on;
ALTER SYSTEM
alter system set log_filename = 'postgresql-10-apptra001-%a.log';
ALTER SYSTEM
alter system set log_rotation_age = '1d';
ALTER SYSTEM
select pg_reload_conf();
pg_reload_conf
----------------
t
(1 ligne)
\l
Liste des bases de données
Nom | Propriétaire | Encodage | Collationnement | Type caract. | Droits d'accès
-----------+--------------+----------+-----------------+--------------+-----------------------
postgres | postgres | UTF8 | fr_FR.UTF-8 | fr_FR.UTF-8 |
template0 | postgres | UTF8 | fr_FR.UTF-8 | fr_FR.UTF-8 | =c/postgres +
| | | | | postgres=CTc/postgres
template1 | postgres | UTF8 | fr_FR.UTF-8 | fr_FR.UTF-8 | =c/postgres +
| | | | | postgres=CTc/postgres
\q
cd /var/log/postgresql
-bash-4.2$ ls
postgresql-10-apptra001-Sun.log