1 line
5.7 KiB
JSON
1 line
5.7 KiB
JSON
{"uuid":"a7420ee1-8675-4a84-a0ba-8620df15b8c2","slug":"postgresql-en-version-portable-pour-windows","title":"PostgreSQL en version portable pour Windows","author":"cedric@abonnel.fr","published":true,"published_at":"2020-04-17 18:06:45","created_at":"2020-04-17 18:06:45","updated_at":"2020-04-17 18:06:45","revisions":[],"cover":"","files_meta":[],"external_links":[],"seo_title":"","seo_description":"","og_image":"","category":"Journal geek","content":"# PostgreSQL en version portable pour Windows\n\nLe 07 janvier 2020,\n\nTrouvé sur le site Sourceforge, la version portable de **PostgreSQL 10.4.1**. Il est annoncé qu'il n'y a pas besoin d'avoir des droits administrateur, ou un compte utilisateur `postgres` dans Windows pour faire fonctionner cette version portable. Ce SGBD fonctionne avec tous les comptes Windows. Il suffit de télécharger l'archive et de décompresser dans un dossier utilisateur.\n\n> https://sourceforge.net/projects/postgresqlportable/\n\nIl y a également une version packagée pour la bibliothèque **Portable Apps**.\n\nMalheureusement, je n'ai pas trouvé de version 11.\n\n## Déployer\nJ'ai téléchargé la version archivée en 10.1.1. Il s'agit d'un fichier ZIP se trouvant dans l'arborescence **10.1.1/PostgreSQL Portable v10.1.1.zip**. Il a une taille de 20 Mo.\n\nLe fichier **v10.4.1/PostgreSQL Portable v10.4.1** contient les fichiers patchés. Je la déploie donc, dans le même dossier. Il s'agit du dossier **PostgreSQLPortable-10**\n\n\n\nLancement du programme **PostgreSQLPortable.exe**. Une fenêtre s'ouvre avec un message d'initialisation.\n\n\n\nVient l'invite de commandes PostgreSQL. Il est temps de s'y mettre...\n\n\n\n## Créer un rôle\nCréation d'un rôle (utilisateur) avec affectation du rôle `Création de base` et affectation d'un mot de passe.\n\n```SQL\npostgres=# CREATE USER cedric;\nCREATE ROLE\n\npostgres=# ALTER ROLE cedric WITH CREATEDB;\nALTER ROLE\n\npostgres=# ALTER USER cedric WITH ENCRYPTED PASSWORD '<password>';\nALTER ROLE\n```\n\nVérification des utilisateurs présent avec la commande `\\du`.\n\n```\npostgres=# \\du\n Liste des rôles\n Nom du rôle | Attributs | Membre de\n-------------+---------------------------------------------------------------------------------+-----------\n cedric | Créer une base | {}\n postgres | Superutilisateur, Créer un rôle, Créer une base, Réplication, Contournement RLS | {}\n```\n\nCréation de la base de données avec affectation des privilèges à l'utilisateur.\n\n```\npostgres=# CREATE DATABASE cedric OWNER cedric;\nCREATE DATABASE\n\npostgres=# grant all privileges on database cedric to cedric;\nGRANT\n```\n\nVérification de la présence des bases de données avec la commande `\\l`.\n\n```\npostgres=# \\l\n Liste des bases de données\n Nom | Propriétaire | Encodage | Collationnement | Type caract. | Droits d'accès\n-----------+--------------+----------+-----------------+--------------+-----------------------\n cedric | cedric | UTF8 | C | C | =Tc/postgres +\n| postgres=CTc/postgres+ |\n| --- |\n| cedric=CTc/postgres |\n postgres | postgres | UTF8 | C | C |\n template0 | postgres | UTF8 | C | C | =c/postgres +\n| postgres=CTc/postgres |\n template1 | postgres | UTF8 | C | C | =c/postgres +\n| postgres=CTc/postgres |\n(4 lignes)\n```\n\n## Changer de base de données et d'utilisateur\nChanger d'utilisateur avec la commande `\\connect`. Vous remarquerez le changement de l'invite au fur et à mesure de la validation des commandes. La commande `\\conninfo` affiche les informations de connexion.\n\n```\npostgres-# \\conninfo\nVous êtes connecté à la base de données « postgres » en tant qu'utilisateur « postgres » sur l'hôte « localhost » via le port « 5432 ».\n\npostgres-# \\connect cedric\nVous êtes maintenant connecté à la base de données « cedric » en tant qu'utilisateur « postgres ».\n\ncedric-# \\conninfo\nVous êtes connecté à la base de données « cedric » en tant qu'utilisateur « postgres » sur l'hôte « localhost » via le port « 5432 ».\n\ncedric-# \\connect cedric cedric\nVous êtes maintenant connecté à la base de données « cedric » en tant qu'utilisateur « cedric ».\n\ncedric-> \\conninfo\nVous êtes connecté à la base de données « cedric » en tant qu'utilisateur « cedric » sur l'hôte « localhost » via le port « 5432 ».\n```\n\n## Créer une base de données\nLors de la création de la base de données, on précise le propriétaire. On pourrait en renseigner d'autres :\n```\nCREATE DATABASE name\n [ [ WITH ] [ OWNER [=] user_name ]\n [ TEMPLATE [=] template ]\n [ ENCODING [=] encoding ]\n [ LC_COLLATE [=] lc_collate ]\n [ LC_CTYPE [=] lc_ctype ]\n [ TABLESPACE [=] tablespace ]\n [ CONNECTION LIMIT [=] connlimit ] ]\n```\n\nCréation :\n\n```\ncedric=# create database gestfiles owner cedric;\nCREATE DATABASE\n```\n\nVérification :\n\n```\ncedric=# \\l\n Liste des bases de données\n Nom | Propriétaire | Encodage | Collationnement | Type caract. | Droits d'accès\n-----------+--------------+----------+-----------------+--------------+-----------------------\n gestfiles | cedric | UTF8 | C | C |\n```","featured":false,"tags":[]} |