Obtenir la date de création de la base de données sur PostgreSQL
Je veux obtenir la date de création de la Base de données POSTGRESQL.
Ma version est 9.3.4 en cours d'exécution sur Ubuntu 14.04.
Puis-je le faire avec un select
déclaration ou puis-je le faire avec l'accès au serveur?
source d'informationauteur Za7pi | 2014-07-17
Vous devez vous connecter pour publier un commentaire.
Il n'est pas intégré dans le dossier de la base de données PostgreSQL moment de la création dans le système. Toutes les approches qui s'appuient sur le système de fichiers de la création/modification de fois peut produire de mauvaises réponses.
Par exemple, si vous
pg_basebackup
une réplique d'un nœud puis basculer sur elle, le temps de création apparaît à la fois la réplique a été créé.pg_basebackup
ne préserve pas de création de fichier/modification de la fois parce qu'ils sont généralement pas considérées comme pertinentes pour l'exploitation de la base de données système.Le seul moyen fiable pour obtenir la création de la base de temps est de créer 1 ligne de la table avec la création du temps, lorsque vous créez la base de données, puis définissez les autorisations /ajouter un déclencheur de sorte qu'il rejette les mises à jour.
Si vous n'avez pas l'esprit le risque d'une mauvaise réponse, où le temps de création est signalé comme étant beaucoup plus récente que c'était vraiment, vous pouvez regarder le timestamp de la
base/[dboid]/PG_VERSION
fichier. @Bob a montré un moyen utile de le faire.Je suis complètement d'accord avec Craig de Sonnerie (excellente réponse!)... mais pour ma part , c'est assez bon:
Simple et propre (mais super-utilisateur).