Tuto | Installation d’un serveur PostgreSQL multi-instances
Article publiée le 27 Décembre 2016
Je continue dans ma lancée des tutoriels concernant l’installation et la configuration de base de données multi instance (cf: tuto sur l’installation d’une base Mysql multi instance: http://journaldunadminlinux.fr/tuto-installation-dune-mysql-multi-instance/).
Si vous ne connaissez rien du tout sur postgresql je vous suggère d’aller faire un tour sur le tuto d’installation de postgres: http://journaldunadminlinux.fr/tuto-installation-dune-mysql-multi-instance/
Ci-dessous la procédure pour configurer un serveur postgresql en multi instance
- Procédez à l’installation de PostgreSQL via la commande apt-get install postgresql postgresql-common postgresql-contrib
- Faites, une sauvegarde du fichier de configuration /etc/postgresql/9.4/main/postgresql.conf
- Copier la configuration ci-dessous dans votre fichier postgresql.conf:
data_directory ='/var/lib/postgresql/9.4/main'hba_file ='/etc/postgresql/9.4/main/pg_hba.conf'ident_file ='/etc/postgresql/9.4/main/pg_ident.conf'external_pid_file ='/var/run/postgresql/9.4-main.pid'listen_addresses ='localhost'port =5432max_connections =100unix_socket_directories ='/var/run/postgresql'ssl =trueshared_buffers = 1024MBwork_mem = 16MBmaintenance_work_mem = 1024MBcheckpoint_segments =64checkpoint_completion_target =0.9effective_cache_size = 1024MBlog_min_duration_statement =500log_line_prefix ='%m %d 'datestyle ='iso, mdy'lc_messages ='en_US.UTF-8'lc_monetary ='en_US.UTF-8'lc_numeric ='en_US.UTF-8'lc_time ='en_US.UTF-8'default_text_search_config ='pg_catalog.english'ssl_cert_file ='/etc/ssl/certs/ssl-cert-snakeoil.pem'ssl_key_file ='/etc/ssl/private/ssl-cert-snakeoil.key'
- Créez les dossiers de stockage avec les bons droits:
mkdir /srv//pg && chown postgres:postgres /srv//pg && chmod 700 /srv/pg-
Créez les répertoires pour les fichiers de configurations
mkdir /etc/postgresql/9.4/<instance>
- Créez la nouvelle instance
su - postgres/usr/lib/postgresql/9.4/bin/initdb -D /srv//pgcp /etc/postgresql/9.4/main/*conf /etc/postgresql/9.4/<instance name>
- Éditez et modifier le fichier /etc/postgresql/9.4/<instance name>/postgresql.conf avec les bonnes informations
|
- Redémarrez PostgreSQL
Quelques commandes pour aider (version « 9.4 » adapter bien évidemment):
Lister les Clusters : pg_lsclusters
Arrêter une instance: pg_ctlcluster 9.4 <instance name> stop
Démarrer une instance: pg_ctlcluster 9.4 instance1 start
