Ya me di cuenta. El problema es que siempre trabajo localmente y por eso creo todo con postgres, seguro muchos lo hacemos asi por comodidad. Me toco hacerlo a nivel de script lo voy a dejar aqui por si alguien tiene el mismo problema. Claro este solo cambia tablas, vistas, secuencias y funciones si hubiese mas objetos pues solo es modificar el query para obtener los demas.
DO $$DECLARE rec record; sql varchar;BEGIN for rec IN SELECT nspname, relname, relkind,nspname || '.' || relname as obj FROM pg_class c JOIN pg_namespace n ON (c.relnamespace = n.oid) WHERE nspname NOT LIKE E'pg\\_%' AND nspname != 'information_schema' AND relkind IN('S','r','v') ORDER BY relkind LOOP sql:='ALTER TABLE ' || rec.obj || ' OWNER TO ' || '"UserMine"'; EXECUTE sql; raise notice 'Nombre:::%',sql; end loop; -- --. /* for rec IN SELECT nspname, proname AS function_name, nspname || '.' || proname || '(' || pg_catalog.oidvectortypes(proargtypes) || ')' as obj, pg_catalog.oidvectortypes(proargtypes) AS parms FROM pg_catalog.pg_proc AS c JOIN pg_namespace n ON (c.pronamespace = n.oid) WHERE nspname != 'information_schema' AND nspname NOT LIKE E'pg\\_%' ORDER BY proname LOOP sql:='ALTER FUNCTION ' || rec.obj || ' OWNER TO ' || '"UserMine"'; raise notice '%',sql; EXECUTE sql; end loop; */END;$$ > CC: dbo...@uci.cu; pgsql-es-ayuda@postgresql.org > Subject: RE: [pgsql-es-ayuda] Cambiar propietario de todos los objetos > From: alvhe...@2ndquadrant.com > To: listas_quij...@hotmail.com > Date: Fri, 28 Sep 2012 11:30:14 -0300 > > Excerpts from Edwin Quijada's message of vie sep 28 10:43:25 -0300 2012: > > > > REASSIGN OWNED BY postgres TO "jqmicroc_LotoUsrTouch" pero consigo este > > errror > > ERROR: cannot reassign ownership of objects owned by role postgres because > > they are required by the database system > > El usuario postgres es especial; para cualquier otro usuario, los > objetos de que es dueño habrían quedado registrados en el catálogo > pg_shdepend. Pero como "postgres" es el usuario que es dueño de todos > los objetos esenciales del sistema, es imposible borrarlo, y por lo > tanto hacer seguimiento detallado de los objetos de que es dueño es > inútil (y contraproducente, porque así el catálogo pg_shdepend ocuparía > muchísimo espacio innecesariamente). Por lo tanto no se hace. Por lo > tanto no se puede hacer REASSIGN OWNED para el usuario postgres. > > Para la próxima vez piénsalo bien antes de crear todas las tablas con > ese usuario. En el peor caso, crea otro superusuario que sea dueño de > todo (pero, por supuesto, si quieres hacer las cosas bien, deberías > tener roles bien definidos para cada cosa). > > En tu situación actual creo que la respuesta es cambiar la propiedad de > cada objeto individualmente. Pero no tiene por qué ser a mano, puede > ser un script. > > -- > Álvaro Herrera http://www.2ndQuadrant.com/ > PostgreSQL Development, 24x7 Support, Training & Services > > - > Enviado a la lista de correo pgsql-es-ayuda (pgsql-es-ayuda@postgresql.org) > Para cambiar tu suscripci�n: > http://www.postgresql.org/mailpref/pgsql-es-ayuda