Mon port par défaut PostgreSQL est 5432, je veux changer de port par défaut en utilisant la ligne de commande (sous Windows 7).
J'ai vu cette solution avant: https://stackoverflow.com/questions/187438/want-to-change-pgsql-port
J'ai essayé d'exécuter la commande suivante, mais elle a échoué:
postgres --p 5431
Quelqu'un pourrait-il me dire comment changer de port en utilisant la ligne de commande?
Étant donné que vous utilisez Windows et que vous démarrez probablement PostgreSQL en tant que service Windows, vous devrez modifier postgresql.conf
(à l'intérieur de votre répertoire de données) pour y définir le nouveau port, puis redémarrez le service postgresql à l'aide du panneau de configuration Services ou (en tant qu'administrateur) net service
commande.
Vous pouvez utiliser un outil d'édition de texte par programme pour modifier postgresql.conf
si vous devez automatiser cela. Sur une boîte Linux/Unix, vous utiliseriez un outil comme sed
ou awk
, mais sous Windows, j'imagine que vous utiliserez VBS, PowerShell ou un outil complémentaire comme Perl.
Vous devrez modifier les paramètres de connexion dans des outils tels que PgAdmin-III
pour utiliser le nouveau port.
Si vous démarriez PostgreSQL manuellement à l'aide de pg_ctl
vous pouvez définir la variable d'environnement PGPORT
ou passer une option de configuration sur la ligne de commande. Cela ne fonctionnera pas lorsque vous le lancerez en tant que service Windows.
vous pouvez vérifier si le paramètre est défini ou non via l'outil de requête. exécutez simplement show port
requete. il affichera votre numéro de port actuel. Si vous utilisez pgAdmin pour vous connecter à db, assurez-vous d'avoir changé votre numéro de port dans les paramètres de connexion.
Une solution qui ne nécessite aucun remplacement de texte ou des techniques similaires consiste à configurer les différents ports dans un fichier de configuration distinct, puis à ajouter une directive include à la postgresql.conf
fichier.
par exemple.
echo port = 5431 > \path\to\datadir\custom.conf
echo include custom.conf>> \path\to\datadir\postgresql.conf
(Bien sûr \path\to\datadir\
doit être remplacé par le chemin correct)
La première commande echo
crée un nouveau fichier avec juste la configuration du port. Le second ajoute une directive include au fichier de configuration postgres existant. Les paramètres "ultérieurs" remplaçant les paramètres "antérieurs" du fichier, toute configuration de port effectuée dans postgresql.conf
sera remplacé par celui du fichier de configuration personnalisé.