PostgreSQL
 sql >> Base de données >  >> RDS >> PostgreSQL

Je ne sais pas comment Postgresql a créé l'utilisateur sur mon mac

postgres compte utilisateur

Création d'un compte utilisateur spécifiquement pour Postgres, communément appelé postgres , fait partie intégrante d'une installation Postgres. Votre application d'installation vous a probablement demandé un mot de passe à attribuer à ce nouveau compte d'utilisateur.

L'une des raisons à cela est la sécurité :Les fichiers de données de la base de données et les fichiers de configuration de sécurité sont stockés dans des dossiers appartenant à postgres utilisateur. Ainsi, si votre compte d'utilisateur principal est piraté, l'intrus n'a pas encore accès à la base de données (souvent la chose la plus précieuse dans le stockage). L'intrus doit sauter à travers plus de cerceaux pour compromettre Postgres. De plus, la propriété distincte empêche d'autres applications d'écraser par inadvertance les fichiers Postgres.

Vous constaterez que Postgres est beaucoup plus orienté entreprise que d'autres produits tels que MySQL. Cela signifie un verrouillage pour la sécurité. Autre exemple :Postgres par défaut est configuré sur non accepter les connexions sur le réseau. Pour activer les connexions à partir d'autres ordinateurs, vous devez modifier la configuration. Peu pratique pour le débutant, mais plus sûr. Comme une barre sur le volant de votre voiture et des pênes dormants sur vos portes, plus de sécurité signifie toujours plus de mesures à prendre et plus de désagréments.

Utiliser une machine virtuelle

Installation de postgres Le compte d'utilisateur est l'une des choses qui fait de Postgres une installation plutôt lourde. Je suggère à ceux qui apprennent Postgres d'utiliser une machine virtuelle pour Postgres. Quelque chose comme :

Pour supprimer Postgres, supprimez simplement la machine virtuelle.

Postgres.app pour macOS

Une autre option pour un utilisateur Mac est Postgres.app , créé par la personne qui a construit l'une des premières implémentations de Postgres-as-a-Service (sur Heroku ). Je n'ai pas utilisé Postgres.app , mais je comprends qu'il enveloppe Postgres, donc il n'installe pas le postgres compte d'utilisateur. De plus, Postgres démarre et s'arrête au lancement et à la fermeture de l'application, plutôt que de s'exécuter en arrière-plan tout le temps.

Attention :vous pouvez avoir des conflits avec Postgres.app sur un Mac où vous avez déjà une installation conventionnelle. Je vous suggère d'abord de soigneusement supprimer le Postgres conventionnel de votre Mac avant d'installer Postgres.app. La désinstallation implique de rechercher et de supprimer divers fichiers et dossiers à divers endroits.

Base de données en tant que service (DBaaS)

Une autre option pour éviter l'installation locale est le nombre croissant de choix pour exécuter Postgres en tant que service. Ceci est parfois appelé « Postgres géré » car le fournisseur gère l'installation de Postgres en votre nom. Vous utilisez simplement Postgres pour créer votre base de données, mais vous ne le contrôlez pas complètement Postgres dans un tel service.

Quelques exemples :

Mon expérience

Personnellement, j'installe souvent Postgres sur un Mac en utilisant le installer par EnterpriseDB.com . Cette société vend des versions à valeur ajoutée de Postgres, mais fournit gentiment un installateur pour Postgres plain-vanilla, en tant que service à la communauté.

J'ai également utilisé le même programme d'installation d'EnterpriseDB.com pour l'installer sur une machine virtuelle Parallels exécutant macOS en tant que système d'exploitation invité dans la machine virtuelle sur un MacBook Pro exécutant macOS en tant que système d'exploitation hôte. Vous pouvez facilement configurer la machine virtuelle pour partager l'adresse IP du Mac hôte sur le réseau, ou vous pouvez donner à la machine virtuelle sa propre adresse réseau, ce qui peut être pratique pour les travaux de démonstration/dev/test.

Troisièmement, j'ai installé Postgres sur FreeBSD sur DigitalOcean.com.

Ces trois options ont très bien fonctionné pour moi. Ce qui est préférable dépend du scénario. Par exemple, l'approche DigitalOcean.com est bonne si je veux que mes collègues puissent accéder à la base de données 24h/24 et 7j/7 sans que mon propre MacBook ne soit disponible.

Cette discussion est pour le travail de développement. Pour un déploiement critique, je recommande fortement d'utiliser un équipement de serveur robuste avec mémoire de correction d'erreur et stockage redondant tel que RAID ou pool ZFS . Postgres est extrêmement fiable mais dépend, bien sûr, d'un matériel fiable.

Votre balise indique Postgres 9.1. Cette version est assez ancienne maintenant. Je suggère d'utiliser la dernière version. Au fait, le système de numérotation des versions a changé pour postgres. Le premier nombre est maintenant le numéro de version à peu près annuel, vous obligeant probablement à vider et à recharger les données pour mettre à niveau, et le second nombre correspond aux mises à jour compatibles.