Je suis un tutoriel pour installer le pgrouting. Cependant, je n'ai pas eu la partie quand il est dit
Démarrez pgAdmin et créez une nouvelle base de données basée sur votre modèle PostGIS
Où puis-je obtenir ce modèle de postgis? Je sais que j'ai installé PostGIS en utilisant homebrew. Mais je n'ai pas pu trouver le modèle. J'utilise des macos maintenant.
Réponses:
Nouvelle méthode avec PostgreSQL 9.1
Grâce aux conseils de RK ci-dessous, j'ai regardé ce tutoriel et j'ai découvert que pour PostgreSQL 9.1, tout ce que vous devez faire est d'ajouter les extensions
postgis
etpostgis_topology
une base de données existante en utilisant les menus contextuels de pgAdmin. Pour créer un modèle de postgis, j'ai créé une nouvelle base de données appeléetemplate-postgis
puis ajouté ces extensions. J'ai ensuite créé mon autre base de données en utilisant ce modèle. Lors de l'utilisation,pg_dump
j'ai trouvé que la taille de l'exportation était beaucoup plus petite, car il semble simplement inclure ces lignes et ne pas vider les fonctions d'extension:Ancienne méthode redondante:
J'ai fini par utiliser les fichiers .sql ici:
De plus, j'ai eu cette erreur lorsque j'ai importé une base de données PostGIS existante dans une nouvelle base de données créée à partir de ce modèle:
J'ai donc suivi les instructions ici et utilisé
ON_ERROR_ROLLBACK=on
pour configurer le modèle, après avoir créé une base de données vierge appelée "template_postgis":Et puis importé ma base de données de sauvegarde, par exemple:
Méthode encore plus ancienne:
J'ai fait ça:
Le chemin d'accès à
postgis--2.0.1.sql
sera différent selon votre configuration.la source
Si vous exécutez PostgreSQL 9.1+, vous n'avez pas besoin de vous soucier de la base de données de modèles . Il suffit de créer une base de données, puis sur la vue SQL dans pgAdmin, tapez et exécutez
Cela activera spatialement votre base de données.
la source
CREATE EXTENSION postgis_topology;
CREATE EXTENSION
nécessite des privilèges de superutilisateur, donc la création / utilisation d'un modèle peut être une très bonne idée.en fait, c'est le fondement de l'installation de postgis.
si vous avez un modèle postgis, vous pouvez créer une nouvelle base de données comme:
si vous ne l'avez pas, vous pouvez le faire de cette façon:
vous pouvez utiliser les scripts bash Debian / Ubuntu - create_template_postgis-debian.sh, ici
J'espère que ça t'aide...
la source
postgres
ne soit pas autorisé à utiliser un terminal, auquel cas lasudo su postgres
commande échouera silencieusement. Pour dépasser cela, vous pouvez précéder toutes ces commandes avecsudo -u postgres
pour exécuter la commande en tant qu'utilisateur postgres sans passer à l'utilisateur postgres.Pour autant que je me souvienne, il existe un script disponible pour l'atelier pour créer ces modèles de bases de données. Il est également disponible ici: https://github.com/pgRouting/pgrouting-contrib/blob/master/scripts/create_templates.sh
Finalement, vous devez changer quelques éléments ici et là, car il a été écrit pour fonctionner pour Debian / Ubuntu. Mais vous pouvez simplement choisir ce dont vous avez besoin.
la source
J'utilise ce script bash pour exécuter la création d'une nouvelle base de données avec postgis activé et nom donné sur stdin.
Postgres 9.3
PostGIS 2.1.3
la source