web-dev-qa-db-fra.com

Configuration de PostGis sur Amazon RDS

Ok, donc je suis assez nouveau sur RDS et AWS, mais je ne peux pas pour la vie de moi, obtenir ma base de données que j'ai créée sur mon ordinateur portable, sur Amazon RDS, je l'ai déplacée vers mon VPS de test et aussi ma machine de bureau , sans aucun problème, voici ce que j'ai essayé jusqu'à présent ..

create extension postgis;
create extension fuzzystrmatch;
create extension postgis_tiger_geocoder;
create extension postgis_topology;
alter schema tiger owner to rds_superuser;
alter schema topology owner to rds_superuser;

CREATE FUNCTION exec(text) returns text language plpgsql volatile AS $f$ BEGIN EXECUTE $1; RETURN     $1; END; $f$;
SELECT exec('ALTER TABLE ' || quote_ident(s.nspname) || '.' || quote_ident(s.relname) || ' OWNER TO rds_superuser')
  FROM (
    SELECT nspname, relname
    FROM pg_class c JOIN pg_namespace n ON (c.relnamespace = n.oid) 
    WHERE nspname in ('tiger','topology') AND
    relkind IN ('r','S','v') ORDER BY relkind = 'S')
s;        

GRANT ALL PRIVILEGES ON DATABASE testgetwork TO luke;

Ensuite, je me connecte à la base de données et j'essaie de charger ma copie locale de la nouvelle base de données ...

luke@l-xps:~$ psql --Host=myhost.dns.us-west-2.rds.amazonaws.com --port=5432 --username=luke --password --dbname=testgetwork < testgetwork.sql 
Password for user luke: 
SET
SET
SET
SET
SET
ERROR:  schema "topology" already exists
ALTER SCHEMA
CREATE EXTENSION
ERROR:  must be owner of extension plpgsql
CREATE EXTENSION
ERROR:  must be owner of extension postgis
CREATE EXTENSION
ERROR:  must be owner of extension postgis_topology

<more output, removed to save space>

ERROR:  permission denied for relation spatial_ref_sys
invalid command \.
 setval 
-------- 
      1
(1 row)

 setval 

<more output, removed to save space>

Ma question est, comment puis-je partir d'ici? Toutes les fonctionnalités semblaient juste être bloquées par un problème d'autorisations, par l'utilisateur luke fait partie du groupe rds_superuser, est-ce que quelqu'un qui a de l'expérience avec PostGis et RDS sait comment je peux rectifier cela?

testgetwork=> \du
                                  List of roles
   Role name   |                   Attributes                   |    Member of    
---------------+------------------------------------------------+-----------------
 luke          | Create role, Create DB                         | {rds_superuser}
 rds_superuser | Cannot login                                   | {}
 rdsadmin      | Superuser, Create role, Create DB, Replication | {}
27
Crooksey

Le guide officiel pour la configuration de PostGIS sur RDS est ici .

Cela a fonctionné pour moi.

J'ai toujours des problèmes pour importer mes données, obtenant:

...
must be superuser to create a base type
permission denied for language c
....

Des idées à ce sujet?
De plus, est-il possible de se connecter en tant que rdsadmin?

17
asbjornenge