Présentation
PostgreSQL est une base de donnée très puissante similaire à Oracle. PSQL est cependant libre est gratuite 😄.
Créer une nouvelle base de données avec un nouvel utilisateur
Ainsi, vous devez :
- Vous identifier en tant que root
- Changer d’utilisateur :
su postgres
- Créer un utilisateur (olivier par exemple) pour la base de données :
createuser olivier
- Créer une base de données (donneesgtd par exemple) pour cet utilisateur :
createdb -O olivier -E UTF-8 donneesgtd
- Se connecter à la base de données :
psql donneesgtd
- Lancer la commande pour changer le mot de passe :
ALTER USER olivier WITH PASSWORD 'mot2passe';
\q
Vous êtes prêts à accéder à la base de données.
Utiliser PAM pour PHPPGADMIN
- Installer phppgadmin avec apt-get install phppgadmin
- Faire adduser postgres shadow en ROOT !
- Éditer le fichier /etc/postgresql/x.y/main/pg_hba.conf (où x.y est votre version de postgreSQL, par exemple 10.3)
- Changer la ligne host MD5 en :
host all all 127.0.0.1 255.255.255.255 pam
Ne pas oublier de remplacer 127.0.0.1 par l’adresse IP de la machine (je pense que cela n’est nécessaire que si nous sommes sur une machine virtuelle, je n’ai pas encore testé sur un vraie machine).
- Il faut ouvrir les connexions par socket à postgresql, pour cela on ouvre le fichier /etc/postgresql/7.4/main/postgresql.conf et on modifier la ligne tcpip_socket = false en tcpip_socket = true.
- Tester, en tant qu’utilisateur normal, la commande psql -h 127.0.0.1 -l où 127.0.0.1 est l’adresse IP de votre machine.
Vous devriez pouvoir vous connecter en tant qu’utilisateur de la machine, par exemple si vous avez un compte olivier et un mot de passe, mettez les dans l’interface de phppgadmin, ce devrait fonctionner.
Sinon j’ai du oublier une étape … et c’est à moi qu’il faut en vouloir …
Récupérer le résultat d’une requête dans un fichier
psql -c 'REQUETE' -A -t -F ";" -d DATABASE > fichier.txt