Mon serveur PostgreSQL redémarré de manière inattendue avec de tels messages:
2017-08-16 03:44:34 GMT LOG: received fast shutdown request
2017-08-16 03:44:34 GMT LOG: aborting any active transactions
2017-08-16 03:44:34 GMT FATAL: terminating connection due to administrator command
2017-08-16 03:44:34 GMT FATAL: terminating connection due to administrator command
2017-08-16 03:44:34 GMT LOG: autovacuum launcher shutting down
2017-08-16 03:44:34 GMT LOG: shutting down
2017-08-16 03:44:34 GMT LOG: database system is shut down
2017-08-16 03:46:04 GMT LOG: incomplete startup packet
2017-08-16 03:46:04 GMT LOG: database system was shut down at 2017-08-16 03:44:34 GMT
2017-08-16 03:46:04 GMT LOG: MultiXact member wraparound protections are now enabled
2017-08-16 03:46:04 GMT LOG: database system is ready to accept connections
2017-08-16 03:46:04 GMT LOG: autovacuum launcher started
quelle pourrait être la raison?
Détails de la configuration:
OS: Ubuntu 16.04.1 LTS (Windows Azure VM)
PostgreSQL version: 9.5.8
listen address: * (my bad, but Azure have to block another ports from external access.
I didn't enable PG 5432 port for external access)
HBA config:
local all postgres ident
Host all all 127.0.0.1/32 md5
Host all all ::1/128 md5
Host all all 10.0.0.0/24 md5
Host replication app_replicator 10.0.0.5/32 md5
local all all peer
2017-08-16 03:44:34 GMT Journal: Demande d'arrêt rapide reçue
Quelqu'un a fait un pg_ctl -m fast stop
ensuite pg_ctl start
, soit manuellement ou via le contrôleur de service Windows (services.msc
, net service
, ...).
Si ce n'était pas vous, c'était une tâche programmée, mise à jour automatique pour certains outils liés à PostgreSQL à partir de la 3ème partie non officielle, etc., à moins que votre système ait été touché par le rayon cosmique le plus mystiquement chanceux de l'histoire, c'est ce qui s'est passé.
Il est impossible de redémarrer PostgreSQL à partir de l'environnement SQL PostgreSQL (une connexion SQL via PGADMIN, psql
, etc.). Vous pouvez le faire en envoyant un signal d'une langue procédurale non approuvée comme plpythonu
ou plperlu
si vous êtes connecté sous forme de superutilisateur de base de données et que ces langues sont installées. Mais sinon cela serait fait au niveau de la commande de commande avec pg_ctl
, en signalant le processus postmaster, etc.