Repositorio versión 11
Hola, ¿ donde puedo encontrar un repositorio de la version 11 para centos 7-8? Gracias
barman con gui
Hola , Estoy pensando en montar un servidor con barman para gestionar el respaldo de varios servidores y me surgen algunas preguntas * ¿los servidores a respaldar puede tener distintas versiones de postgresql y de SO? * ¿hay alguna herramienta gráfica para visualizar o administrar barman? * ¿alguna otra alternativa a barman que ya tenga un entorno gráfico de administración? Gracias
Re: lista de stopwords
El 08/01/2024 a las 17:21, Alvaro Herrera escribió: Anthony Sotolongo escribió: SELECT unnest(string_to_array(pg_read_file('/usr/share/postgresql/'||current_setting ('server_version_num')::varchar(2)||'/tsearch_data/spanish.stop'),E'\n')) as stopwords; (Esta query no funciona en el caso general: la ubicación del directorio de instalación no es obtenible desde dentro de una sesión) [ ... mirando el archivo ... ] Uy, esta lista es desastrosa, tiene algunos typos Orribles [sic] como vosostras vosostros y algunas palabras mal consideradas como tenida tenidas que supongo pretenden ser conjugaciones del verbo tener, pero también tienen otro significado, que a mi parecer las descalifican como stopwords ... Más generalmente me doy cuenta que este archivo no ha cambiado desde el commit original en 2007 (140d4ebcb46e). También me doy cuenta que en snowballstem.org (el proyecto upstream de nuestros stemmers) no hay nada sobre stopwords, así que me imagino que las listas vinieron de algún otro lado ... pero no encuentro dónde. Existe esto https://github.com/stopwords-iso/stopwords-es que aparentemente viene de Snowball. Gracias, al final he creado una función que me devuelve una tabla, no puedo estar pendiente de la versión que tengo instalada, ademas como parece que la lista no sufre cambios Un Saludo
Re: lista de stopwords
El 08/01/2024 a las 14:17, Anthony Sotolongo escribió: Hola, las stopword estan en este directorio: $SHAREDIR/tsearch_data/ puedes interntar leer el archivo con las stopwords, por ejemplo en ubuntu puedes leer el archivo directamente: select pg_read_file('/usr/share/postgresql/16/tsearch_data/spanish.stop'); Saludos On 08-01-24 10:09, kernel wrote: Hola, ¿como puedo obtener una lista de palabras stopword , con una consulta sql, en postgresql 11? He buscado por la red y me he encontrado con esto , pero no me funciona , supongo que sera para otra versión /SELECT word FROM pg_catalog.pg_ts_parser('english') JOIN pg_catalog.pg_ts_dict('english') ON pg_catalog.pg_ts_parser.ts_name = pg_catalog.pg_ts_dict.dict_initoption WHERE dict_name = 'english_stem' AND tok_alias = 'word';/ / / /Gracias / Ok , Gracias ¿Pero hay alguna manera de no tener que estar pendiente de la version?, ¿ que te devuelva cada palabra como una fila para poder hacer un join?
lista de stopwords
Hola, ¿como puedo obtener una lista de palabras stopword , con una consulta sql, en postgresql 11? He buscado por la red y me he encontrado con esto , pero no me funciona , supongo que sera para otra versión /SELECT word FROM pg_catalog.pg_ts_parser('english') JOIN pg_catalog.pg_ts_dict('english') ON pg_catalog.pg_ts_parser.ts_name = pg_catalog.pg_ts_dict.dict_initoption WHERE dict_name = 'english_stem' AND tok_alias = 'word';/ / / /Gracias /
Re: búsqueda en cadena de texto como en google
El 13/12/2023 a las 15:23, Alvaro Herrera escribió: Juan José Santamaría Flecha escribió: On Wed, Dec 13, 2023 at 9:49 AM kernel wrote: Tengo un campo varchar que contiene descripciones de libros, me gustaría poder buscar por diferentes palabras, pero pueden estar en orden distinto o solo contener algunas, no se si hay algo desarrollado o tengo que hacer varias busquedas Lo que quieres hacer suena a búsqueda Full Text: https://www.postgresql.org/docs/current/textsearch.html Usando websearch_to_tsquery() posiblemente. Puede ser necesario adornar con la extensión unaccent. Si tienes, por ejemplo, el titulo del libro en una columna y la descripción en una columna separada, puedes crear un índice que agrupa las palabras de ambas columnas, de manera que una búsqueda encuentre cuando las palabras aparezcan en cualquiera de los dos. También puedes darle "pesos" distintos a las palabras en cada columna (función setweight), de manera que si una palabra de la búsqueda aparece en el título, el resultado te muestre ese libro antes que un libro para el cual la palabra ocurre en la descripción. Generalmente es bueno saber en qué idioma están los textos, para que puedas decidir qué "stemming" usar. Mi impresión es que para el español esto funciona bien, pero no me ha tocado implementar aplicaciones de verdad usando esta funcionalidad. voy a ponerme a estudiar el asunto, ya me habéis facilitado varios caminos a explorar Gracias por vuestro tiempo, un Saludo
búsqueda en cadena de texto como en google
Hola, Tengo un campo varchar que contiene descripciones de libros, me gustaría poder buscar por diferentes palabras, pero pueden estar en orden distinto o solo contener algunas, no se si hay algo desarrollado o tengo que hacer varias busquedas Un Saludo
error prev-link
hola, Me he encontrado con este error en el servidor de respaldo, esta constantemente dando ele problema y esta desentronizado Gracias por vuestro tiempo 2023-06-01 00:00:43.748 CEST [1273] LOG: se ha restaurado el archivo «00010094008F» desde el área de archivado 2023-06-01 00:00:43.939 CEST [1273] LOG: registro con prev-link 1803FF/CC incorrecto en 94/8F141388 2023-06-01 00:00:43.939 CEST [1273] LOG: registro con prev-link 1803FF/CC incorrecto en 94/8F141388 2023-06-01 00:00:48.751 CEST [1273] LOG: se ha restaurado el archivo «00010094008F» desde el área de archivado 2023-06-01 00:00:48.933 CEST [1273] LOG: registro con prev-link 1803FF/CC incorrecto en 94/8F141388 2023-06-01 00:00:48.933 CEST [1273] LOG: registro con prev-link 1803FF/CC incorrecto en 94/8F141388 2023-06-01 00:00:53.756 CEST [1273] LOG: se ha restaurado el archivo «00010094008F» desde el área de archivado 2023-06-01 00:00:53.951 CEST [1273] LOG: registro con prev-link 1803FF/CC incorrecto en 94/8F141388 2023-06-01 00:00:53.951 CEST [1273] LOG: registro con prev-link 1803FF/CC incorrecto en 94/8F141388 2023-06-01 00:00:58.761 CEST [1273] LOG: se ha restaurado el archivo «00010094008F» desde el área de archivado 2023-06-01 00:00:58.936 CEST [1273] LOG: registro con prev-link 1803FF/CC incorrecto en 94/8F141388 2023-06-01 00:00:58.936 CEST [1273] LOG: registro con prev-link 1803FF/CC incorrecto en 94/8F141388 2023-06-01 00:01:03.767 CEST [1273] LOG: se ha restaurado el archivo «00010094008F» desde el área de archivado 2023-06-01 00:01:03.961 CEST [1273] LOG: registro con prev-link 1803FF/CC incorrecto en 94/8F141388 2023-06-01 00:01:03.961 CEST [1273] LOG: registro con prev-link 1803FF/CC incorrecto en 94/8F141388
Re: disponibilidad de la función sha512
El 20/04/2022 a las 10:59, Alvaro Herrera escribió: kernel escribió: Hola, Creo que la función sha512 esta disponible a partir de la versión 10.20 ¿hay alguna posibilidad de disponer de la función en versiones anteriores?, ¿alguna extensión?, ¿alguna función que pueda instalar? Hola, en pgcrypto está la función digest que recibe como segundo argumento el nombre del algoritmo: $ select digest('hola hola', 'sha512'); digest \x9f1857e99043f9e97b502c900fb8c84ece9cc7f942061e277c6f98bd7f736f011ad1b6c94659a3d631179bfdd8851f2b5ee9d8678404d2f40708f747d1f19037 (1 fila) Mismo resultado obtienes en 14 (digo, para verificar): $ select sha512('hola hola'); sha512 \x9f1857e99043f9e97b502c900fb8c84ece9cc7f942061e277c6f98bd7f736f011ad1b6c94659a3d631179bfdd8851f2b5ee9d8678404d2f40708f747d1f19037 (1 fila) Gracias!!!
disponibilidad de la función sha512
Hola, Creo que la función sha512 esta disponible a partir de la versión 10.20 ¿hay alguna posibilidad de disponer de la función en versiones anteriores?, ¿alguna extensión?, ¿alguna función que pueda instalar? Gracias
Re: Fallo con pg_dump
El 11/03/2022 a las 9:23, Juan José Santamaría Flecha escribió: On Thu, Mar 10, 2022 at 9:58 PM kernel wrote: Cuando ejecuto un pg_dump de una maquina esclava, de vez en cuando me da el siguiente error, siempre en la misma tabla, es una tabla que contiene un campo bdata. En la maquina principal nunca me da error pg_dump: Falló la extracción del contenido de la tabla «g399docu»: PQgetResult() falló. pg_dump: Mensaje de error del servidor: ERROR: cancelando la sentencia debido a un conflicto con la recuperación DETALLE: La consulta del usuario pudo haber necesitado examinar versiones de tuplas que debían eliminarse. pg_dump: La orden era: COPY public.g399docu (id, id_empresa, empresa, tipo, serie, clave, fecha, origen, orden, fichero, notas_1, notas_2,tipo_doc,clase,bdata) TO stdout; En la réplica, ¿qué valor tiene el parámetro max_standby_streaming_delay? ¿Si lo desactivas (valor -1), te permite completar el pg_dump? Un saludo, Juan José Santamaría Flecha hola, Ahora no me da error Gracias
Fallo con pg_dump
Hola, Cuando ejecuto un pg_dump de una maquina esclava, de vez en cuando me da el siguiente error, siempre en la misma tabla, es una tabla que contiene un campo bdata. En la maquina principal nunca me da error pg_dump: Falló la extracción del contenido de la tabla «g399docu»: PQgetResult() falló. pg_dump: Mensaje de error del servidor: ERROR: cancelando la sentencia debido a un conflicto con la recuperación DETALLE: La consulta del usuario pudo haber necesitado examinar versiones de tuplas que debían eliminarse. pg_dump: La orden era: COPY public.g399docu (id, id_empresa, empresa, tipo, serie, clave, fecha, origen, orden, fichero, notas_1, notas_2,tipo_doc,clase,bdata) TO stdout; p Gracias
Re: current_query()
El 22/02/2022 a las 17:05, Jaime Casanova escribió: On Tue, Feb 22, 2022 at 10:55:16AM +0100, kernel wrote: Hola, Estoy utilizando un sistema de auditoria a base de triggrers, en cada tabla tengo un triggers que llama a una función, en esta funcion utilizo la funcion current_query(). Hasta aquí todo bien, el problema es que cuando ejecuto varias instrucciones a la vez (desde pgadmin ) me trata todas las instrucciones como una sola ¿Hay alguna otra función que me devuelva la instrucción que activa el trigger? Ejemplo desde pgadmin: select * from clientes; select * from productos; update precios set precio = 0 where familia = 'XX' -- en esta tabla esta el trigger Actualmente la función current_query() me devuelve esto : select * from clientes;select * from productos;update precios set precio = 0 where familia = 'XX' Las 3 consultas están en la misma ventana de pgAdmin? te aseguraste de marcar (señalar, seleccionar) el update antes? supongo que no porque no tiene ningún sentido ejecutar current_query() de ese modo. verás current_query() devuelve la consulta que se esté ejecutando en ese momento y si seleccionas current_query() y la ejecutas te devolverá: "select current_query()". como no marcaste ninguna sentencia, en ese caso pgAdmin ejecuta todas las sentencias que están en esa ventana, pero se envían como una consulta multi-sentencia. Es decir, lo que estás viendo: "select consulta1; select consulta2; update...". el uso de current_query() tiene sentido dentro de funciones almacenadas y, quizá aunque no lo he probado en ejecución asincrónica de sentencias (https://www.postgresql.org/docs/14/libpq-async.html). Un ejemplo del uso de current_query() que buscas lo puedes encontrar aquí: https://github.com/2ndQuadrant/audit-trigger Gracias Jaime, Como comente , current_query lo ejecuto dentro de un a función que es llamada por un trigger, es por eso por lo que lo que quiero es saber si hay alguna instrucción que me devuelva la sentencia que activo el trigger Un Saludo
current_query()
Hola, Estoy utilizando un sistema de auditoria a base de triggrers, en cada tabla tengo un triggers que llama a una función, en esta funcion utilizo la funcion current_query(). Hasta aquí todo bien, el problema es que cuando ejecuto varias instrucciones a la vez (desde pgadmin ) me trata todas las instrucciones como una sola ¿Hay alguna otra función que me devuelva la instrucción que activa el trigger? Ejemplo desde pgadmin: select * from clientes; select * from productos; update precios set precio = 0 where familia = 'XX' -- en esta tabla esta el trigger Actualmente la función current_query() me devuelve esto : select * from clientes;select * from productos;update precios set precio = 0 where familia = 'XX' lo que necesito es una función que solo me devuelva la sentencia que activa el trigger , en este caso esto : update precios set precio = 0 where familia = 'XX Gracias
Re: query con coma como separador decimal
El 04/03/2021 a las 15:16, Juan José Santamaría Flecha escribió: On Thu, Mar 4, 2021 at 12:46 PM kernel <mailto:jucab...@gmail.com>> wrote: como puedo hacer que esta me funcione? select * from prueba where unidades = 1,0 Tendrás que cambiar el lc_numeric y hacer un to_number(): postgres=# set lc_numeric='es_ES.utf-8'; SET postgres=# select to_number(',5','9D9'); to_number --- 0.5 (1 fila) Un saludo, Juan José Santamaría Flecha Muchas gracias por tu tiempo, pero lo que no quiero es modificar los query actuales, quiero decirle a postgres mediante configuración del entorno de la conexión que el punto decimal es la coma, como puedo cambiar el encoding o el datestyle Un Saludo
query con coma como separador decimal
Hola, me pregunto como poder decirle a postgres que el query que ejecuto usa como separador decimal la coma y no el punto. Igual que puedo decirle el client_encodig o el datestyle que utilizo, ¿le puedo decir cual es el carácter decimal?. Necesito que fuera algo global para esa conexion, no me sirve utilizar funciones dentro de query, deberia ser algo a nivel de algun tipo de set Esto me funciona bien : select * from prueba where unidades = 1,0 como puedo hacer que esta me funcione? select * from prueba where unidades = 1,0 Gracias
Re: sentencia copy a cliente
Haber te he entendido bien ¿ quieres decir que el gestor postgres siempre tiene acceso al /tmp? si es así puedo crear un función que ejecute la sentencia copy que necesito, lo vuelque en el /tmp , ¿pero luego lo puedo leerlo desde postgresql? , ¿tendré permisos? Un Saludo El 23/02/2021 a las 10:29, Horacio Miranda escribió: Toma la idea y revisa que servicio cada cliente tiene. Si quieres algo rapido claro esta, la gracia es que sea latencia baja. Puede ser archivo local o en el /tmp. Toda maquina tiene acceso a un /tmp independiente de lo que sea. /dev/shm es otra alternativa pero usa RAM y solo el 50% de la RAM de la maquina. On 23/02/2021 10:27 pm, kernel wrote: Puede se cualquiera que te de el servicio, ovh por ejemplo te da el servicio asi https://www.ovh.es/cloud-databases/ Estoy buscando una manera de hacerlo sin depender de quien da el servicio y sin tener que hacer nada especial para cada proveedor Un Saludo El 23/02/2021 a las 10:12, Horacio Miranda escribió: Que cosa es ? si no es amazon ? On 23/02/2021 8:16 pm, kernel wrote: El 18/02/2021 a las 23:31, Horacio Miranda escribió: On 18/02/2021 8:01 pm, kernel wrote: El 18/02/2021 a las 1:01, Horacio Miranda escribió: On 18/02/2021 8:55 am, Anthony Sotolongo wrote: Hola Kernel, como comentas puedes usar STDOUT, el cual te enviará los datos a tu client, por ejemplo con psql: psql -U postgres -h tu_server_en_la_nube -c "COPY (select * from tu_tabla) to STDOUT WITH CSV HEADER DELIMITER ',';" > tu_archivo.csv Los servidores pueden mandar email tambien. Puedes hacer esta logica si quieres en el server en la nube que es mas rapido ejecutar cosas locales. #!/bin/bash PGUSER= PGPASSWORD= PGPORT= PGDATABASE= PGHOST= psql -c "COPY (select * from tu_tabla) to STDOUT WITH CSV HEADER DELIMITER ',';" > /tmp/tu_archivo.csv cd /tmp # Esto solo es para evitar que en el ZIP esten los path como /tmp zip tu_archivo.csv.zip tu_archivo.csv uuencode tu_archivo.csv tu_archivo.csv | mail -s "export_desde_lanube_$(hostname)" algun_m...@domain.com uuencode lo encuentras como parte del sharutils si usas algo como rpm puedes hacer "yum provides */uuencode" Ahora puedes hacer un sftp, o cualquier cosa que quieras para traerte el archivo. Si lo quieres local puedes hacer un rsync tambien, posibilidades hay muchas. Ahora si este archivo es algo que se genera para un cliente, que se envie un email de forma automatica creo que puede ser bien interesante. Saludos On 2/17/21 4:14 PM, kernel wrote: Hola, Necesito generar un fichero csv desde una aplicación, hasta la fecha llamaba a una función , la cual me ejecutaba una sentencia copy de un query determinado y lo sacaba a un fichero local. Si contrato algún servicio de DB en la nube no voy a poder dejar el fichero en local. He visto que la función copy tiene algo de stdout , pero no se como conectarlo son mi aplicación. El lenguaje que utilizo es 4GL , solo puedo hacer querys cuyo resultado lo recojo en variables me pregunto si existe alguna función en la que pueda generar un csv desde una consulta y me lo devuelva en un tipo de variable byte o algo asi, que luego yo pueda guardar donde yo quiera|. | no se si he sido capaz de explicarme. Gracias Un Saludo hola no se si me he explicado bien, lo que tengo en la nube no es un servidor, es un servicio postgresql , nada mas , por eso el problema Oracle tiene algo llamado Oracle way. postgresql tiene algo llamado PostgreSQL way y RDS de Amazon tiene Amazon way. Esta es la forma de exportar algo desde un RDS. https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/postgresql-s3-export.html Luego lees el s3 ( solo asegurate que el s3 sea seguro ), sí esta abierto a todo el mundo sin clave vas a compartir tus exports con el planeta. Gracias por tu respuesta , el problema es que no es amazon. Gracias Gracias
Re: sentencia copy a cliente
Gracias, No lo he probado pero claro que si que debe de funcionar, pero lo que yo quiero es capturarlo en una variable de tipo bitea , alguna funcion o algo que me devuelva el resultado de una consulta en formato csv como si fuese una variable TEXT Gracias de nuevo El 18/02/2021 a las 10:12, Anthony Sotolongo escribió: Hola nuevamente, lo que te comentamos debe funcionar, ¿Intentaste ejecutar lo que te comentamos? Desde tu máquina apuntando a tu servicio en la nube. El jue., 18 de febrero de 2021 4:01 a. m., kernel <mailto:jucab...@gmail.com>> escribió: El 18/02/2021 a las 1:01, Horacio Miranda escribió: On 18/02/2021 8:55 am, Anthony Sotolongo wrote: Hola Kernel, como comentas puedes usar STDOUT, el cual te enviará los datos a tu client, por ejemplo con psql: psql -U postgres -h tu_server_en_la_nube -c "COPY (select * from tu_tabla) to STDOUT WITH CSV HEADER DELIMITER ',';" > tu_archivo.csv Los servidores pueden mandar email tambien. Puedes hacer esta logica si quieres en el server en la nube que es mas rapido ejecutar cosas locales. #!/bin/bash PGUSER= PGPASSWORD= PGPORT= PGDATABASE= PGHOST= psql -c "COPY (select * from tu_tabla) to STDOUT WITH CSV HEADER DELIMITER ',';" > /tmp/tu_archivo.csv cd /tmp # Esto solo es para evitar que en el ZIP esten los path como /tmp zip tu_archivo.csv.zip tu_archivo.csv uuencode tu_archivo.csv tu_archivo.csv | mail -s "export_desde_lanube_$(hostname)" algun_m...@domain.com <mailto:algun_m...@domain.com> uuencode lo encuentras como parte del sharutils si usas algo como rpm puedes hacer "yum provides */uuencode" Ahora puedes hacer un sftp, o cualquier cosa que quieras para traerte el archivo. Si lo quieres local puedes hacer un rsync tambien, posibilidades hay muchas. Ahora si este archivo es algo que se genera para un cliente, que se envie un email de forma automatica creo que puede ser bien interesante. Saludos On 2/17/21 4:14 PM, kernel wrote: Hola, Necesito generar un fichero csv desde una aplicación, hasta la fecha llamaba a una función , la cual me ejecutaba una sentencia copy de un query determinado y lo sacaba a un fichero local. Si contrato algún servicio de DB en la nube no voy a poder dejar el fichero en local. He visto que la función copy tiene algo de stdout , pero no se como conectarlo son mi aplicación. El lenguaje que utilizo es 4GL , solo puedo hacer querys cuyo resultado lo recojo en variables me pregunto si existe alguna función en la que pueda generar un csv desde una consulta y me lo devuelva en un tipo de variable byte o algo asi, que luego yo pueda guardar donde yo quiera|. | no se si he sido capaz de explicarme. Gracias Un Saludo hola no se si me he explicado bien, lo que tengo en la nube no es un servidor, es un servicio postgresql , nada mas , por eso el problema Gracias
Re: sentencia copy a cliente
El 18/02/2021 a las 1:01, Horacio Miranda escribió: On 18/02/2021 8:55 am, Anthony Sotolongo wrote: Hola Kernel, como comentas puedes usar STDOUT, el cual te enviará los datos a tu client, por ejemplo con psql: psql -U postgres -h tu_server_en_la_nube -c "COPY (select * from tu_tabla) to STDOUT WITH CSV HEADER DELIMITER ',';" > tu_archivo.csv Los servidores pueden mandar email tambien. Puedes hacer esta logica si quieres en el server en la nube que es mas rapido ejecutar cosas locales. #!/bin/bash PGUSER= PGPASSWORD= PGPORT= PGDATABASE= PGHOST= psql -c "COPY (select * from tu_tabla) to STDOUT WITH CSV HEADER DELIMITER ',';" > /tmp/tu_archivo.csv cd /tmp # Esto solo es para evitar que en el ZIP esten los path como /tmp zip tu_archivo.csv.zip tu_archivo.csv uuencode tu_archivo.csv tu_archivo.csv | mail -s "export_desde_lanube_$(hostname)" algun_m...@domain.com uuencode lo encuentras como parte del sharutils si usas algo como rpm puedes hacer "yum provides */uuencode" Ahora puedes hacer un sftp, o cualquier cosa que quieras para traerte el archivo. Si lo quieres local puedes hacer un rsync tambien, posibilidades hay muchas. Ahora si este archivo es algo que se genera para un cliente, que se envie un email de forma automatica creo que puede ser bien interesante. Saludos On 2/17/21 4:14 PM, kernel wrote: Hola, Necesito generar un fichero csv desde una aplicación, hasta la fecha llamaba a una función , la cual me ejecutaba una sentencia copy de un query determinado y lo sacaba a un fichero local. Si contrato algún servicio de DB en la nube no voy a poder dejar el fichero en local. He visto que la función copy tiene algo de stdout , pero no se como conectarlo son mi aplicación. El lenguaje que utilizo es 4GL , solo puedo hacer querys cuyo resultado lo recojo en variables me pregunto si existe alguna función en la que pueda generar un csv desde una consulta y me lo devuelva en un tipo de variable byte o algo asi, que luego yo pueda guardar donde yo quiera|. | no se si he sido capaz de explicarme. Gracias Un Saludo hola no se si me he explicado bien, lo que tengo en la nube no es un servidor, es un servicio postgresql , nada mas , por eso el problema Gracias
sentencia copy a cliente
Hola, Necesito generar un fichero csv desde una aplicación, hasta la fecha llamaba a una función , la cual me ejecutaba una sentencia copy de un query determinado y lo sacaba a un fichero local. Si contrato algún servicio de DB en la nube no voy a poder dejar el fichero en local. He visto que la función copy tiene algo de stdout , pero no se como conectarlo son mi aplicación. El lenguaje que utilizo es 4GL , solo puedo hacer querys cuyo resultado lo recojo en variables me pregunto si existe alguna función en la que pueda generar un csv desde una consulta y me lo devuelva en un tipo de variable byte o algo asi, que luego yo pueda guardar donde yo quiera|. | no se si he sido capaz de explicarme. Gracias Un Saludo
Re: Conectar con mysql server
El 27/07/2020 a las 18:14, Romero, Fernando escribió: -Mensaje original- De: kernel [mailto:jucab...@gmail.com] Enviado el: lunes, 27 de julio de 2020 12:51 p. m. Para: Ayuda Asunto: Re: Conectar con mysql server El 27/07/2020 a las 14:08, Romero, Fernando escribió: -Mensaje original- De: kernel [mailto:jucab...@gmail.com] Enviado el: sábado, 25 de julio de 2020 03:51 p. m. Para: Ayuda Asunto: Conectar con mysql server Hola, Me gustaria poder hacer una serie de inserciones en una tabla de sqlserver, estoy pensando en hacer lo desde una funcion ps/pgsql ¿Hay alguna manera de enlazalo?, no se si puedo conectar con unixOdbc (tengo instalado freetds), desde el sistema con isql si puedo conectar Un Saludo Hola como estas. Con mysql o sqlserver? Perdon!!, sqlserver Saludos “El contenido del presente mensaje (y sus anexos) es privado, confidencial y de exclusivo uso para el destinatario referenciado; es de público conocimiento que las comunicaciones por medio de Internet no permiten asegurar ni garantizar la confidencialidad de los mensajes transmitidos, así como tampoco su integridad o su correcta recepción; es por ello que SOFSE no se responsabiliza de posibles perjuicios derivados de la captura, incorporaciones de virus o cualquier otra manipulación efectuada por terceros. Las opiniones expresadas en este mensaje y en los archivos adjuntos son propias del remitente y no representan la opinión o políticas de SOFSE, salvo que se diga expresamente y el remitente se encuentre autorizado para ello” Que versión de Postgresql estas usando? Con foreign data wrapper, peor hasta donde conozco es solo en modo lectura contra sqlserver. No se si en 12 esto cambio. Saludos “El contenido del presente mensaje (y sus anexos) es privado, confidencial y de exclusivo uso para el destinatario referenciado; es de público conocimiento que las comunicaciones por medio de Internet no permiten asegurar ni garantizar la confidencialidad de los mensajes transmitidos, así como tampoco su integridad o su correcta recepción; es por ello que SOFSE no se responsabiliza de posibles perjuicios derivados de la captura, incorporaciones de virus o cualquier otra manipulación efectuada por terceros. Las opiniones expresadas en este mensaje y en los archivos adjuntos son propias del remitente y no representan la opinión o políticas de SOFSE, salvo que se diga expresamente y el remitente se encuentre autorizado para ello” Estoy con una version 11, necesito hacer insert y updates, estoy mirando tds_fdw y odbc_fdw pero todavian no se que permiten hacer
Re: Conectar con mysql server
El 27/07/2020 a las 14:08, Romero, Fernando escribió: -Mensaje original- De: kernel [mailto:jucab...@gmail.com] Enviado el: sábado, 25 de julio de 2020 03:51 p. m. Para: Ayuda Asunto: Conectar con mysql server Hola, Me gustaria poder hacer una serie de inserciones en una tabla de sqlserver, estoy pensando en hacer lo desde una funcion ps/pgsql ¿Hay alguna manera de enlazalo?, no se si puedo conectar con unixOdbc (tengo instalado freetds), desde el sistema con isql si puedo conectar Un Saludo Hola como estas. Con mysql o sqlserver? Perdon!!, sqlserver Saludos “El contenido del presente mensaje (y sus anexos) es privado, confidencial y de exclusivo uso para el destinatario referenciado; es de público conocimiento que las comunicaciones por medio de Internet no permiten asegurar ni garantizar la confidencialidad de los mensajes transmitidos, así como tampoco su integridad o su correcta recepción; es por ello que SOFSE no se responsabiliza de posibles perjuicios derivados de la captura, incorporaciones de virus o cualquier otra manipulación efectuada por terceros. Las opiniones expresadas en este mensaje y en los archivos adjuntos son propias del remitente y no representan la opinión o políticas de SOFSE, salvo que se diga expresamente y el remitente se encuentre autorizado para ello”
Conectar con mysql server
Hola, Me gustaria poder hacer una serie de inserciones en una tabla de sqlserver, estoy pensando en hacer lo desde una funcion ps/pgsql ¿Hay alguna manera de enlazalo?, no se si puedo conectar con unixOdbc (tengo instalado freetds), desde el sistema con isql si puedo conectar Un Saludo
Re: alternativa pg_xlog_replay_pause
El 22/07/2020 a las 21:21, Alvaro Herrera escribió: kernel escribió: He instalado postgresql version 11 y ahora me dice que no existe la funcion ERROR: function pg_xlog_replay_pause() does not exist LÍNEA 1: SELECT pg_xlog_replay_pause() Todas las funciones que tenían "xlog" en el nombre fueron cambiadas a que usen "wal" en reemplazo. Creo que esto pasó en Postgres 10. Saludos Gracias
Re: alternativa pg_xlog_replay_pause
Gracias!!! El 22/07/2020 a las 18:47, Daymel Bonne escribió: El mié., 22 de jul. de 2020 a la(s) 11:38, kernel (jucab...@gmail.com <mailto:jucab...@gmail.com>) escribió: Hola tengo una script para hacer una backup de una maquina esclava : file=$(date +%a-%H-%M) PGCLIENTENCODING=UTF-8 export PGCLIENTENCODING psql -U postgres -c 'SELECT pg_xlog_replay_pause()' -o /u/temp/x /usr/bin/pg_dump -U postgres $2 -f $1/datos.sql psql -U postgres -c 'SELECT pg_xlog_replay_resume()' -o /u/temp/x tar -P -zcf $1/$file.gz $1/datos.sql >/dev/null 2>&1 rm $1/datos.sql He instalado postgresql version 11 y ahora me dice que no existe la funcion ERROR: function pg_xlog_replay_pause() does not exist LÍNEA 1: SELECT pg_xlog_replay_pause() ¿hay alguna funcion que la sustituya? Aquí puedes mirar: https://www.postgresql.org/docs/11/functions-admin.html#FUNCTIONS-RECOVERY-CONTROL-TABLE -- Daymel Bonne Database Consultant, Training & Services 2ndQuadrant - PostgreSQL Solutions for the Enterprise https://www.2ndQuadrant.com/ <https://www.2ndquadrant.com/>
alternativa pg_xlog_replay_pause
Hola tengo una script para hacer una backup de una maquina esclava : file=$(date +%a-%H-%M) PGCLIENTENCODING=UTF-8 export PGCLIENTENCODING psql -U postgres -c 'SELECT pg_xlog_replay_pause()' -o /u/temp/x /usr/bin/pg_dump -U postgres $2 -f $1/datos.sql psql -U postgres -c 'SELECT pg_xlog_replay_resume()' -o /u/temp/x tar -P -zcf $1/$file.gz $1/datos.sql >/dev/null 2>&1 rm $1/datos.sql He instalado postgresql version 11 y ahora me dice que no existe la funcion ERROR: function pg_xlog_replay_pause() does not exist LÍNEA 1: SELECT pg_xlog_replay_pause() ¿hay alguna funcion que la sustituya? Gracias
Re: conectar con sql server
El 09/06/2020 a las 11:12, kernel escribió: El 09/06/2020 a las 9:42, Oscar Polo Fdez escribió: Hola, Puedes usar la extensión ODBC_fdw. Aquí tienes el repo con documentación: https://github.com/CartoDB/odbc_fdw Enviado desde Correo <https://go.microsoft.com/fwlink/?LinkId=550986> para Windows 10 *De: *kernel <mailto:jucab...@gmail.com> *Enviado: *martes, 9 de junio de 2020 8:52 *Para: *Ayuda <mailto:pgsql-es-ay...@postgresql.org> *Asunto: *conectar con sql server Hola, necesito acceder a unas tablas de sql server, me preguntaba si existe alguna manera de linkar dichas tablas a mi base de datos posgresql. Un Saludo ¿vale para versiones 11 y 12? No se cual es la mejor opcion de estas 2 : odbc_fdw <https://github.com/CartoDB/odbc_fdw> tds_fdw Agradeceria vuestros comentarios, necesito conectar con 4 tablas de sql server para intercambio de datos, 4 tablas pequeñas y poco movimiento, tengo que hacer updates,insert y select en sqlserver desde una funcion pl/plsql Gracias
Re: conectar con sql server
El 09/06/2020 a las 9:42, Oscar Polo Fdez escribió: Hola, Puedes usar la extensión ODBC_fdw. Aquí tienes el repo con documentación: https://github.com/CartoDB/odbc_fdw Enviado desde Correo <https://go.microsoft.com/fwlink/?LinkId=550986> para Windows 10 *De: *kernel <mailto:jucab...@gmail.com> *Enviado: *martes, 9 de junio de 2020 8:52 *Para: *Ayuda <mailto:pgsql-es-ay...@postgresql.org> *Asunto: *conectar con sql server Hola, necesito acceder a unas tablas de sql server, me preguntaba si existe alguna manera de linkar dichas tablas a mi base de datos posgresql. Un Saludo ¿vale para versiones 11 y 12?
conectar con sql server
Hola, necesito acceder a unas tablas de sql server, me preguntaba si existe alguna manera de linkar dichas tablas a mi base de datos posgresql. Un Saludo
Re: localizar sentencia en archivos wal
Gracias por la aclaraciónSALUDOS
Re: localizar sentencia en archivos wal
El 05/06/2020 a las 14:56, Martín Marqués escribió: Buenas, Me me han desaparecido los datos de una tabla, por suerte teníamos copia de seguridad y ya lo hemos restaurado. La cuestión es que no sabemos por que ha podido suceder , no sabemos si ha podido ser el ERP o algún usuario de administración del al db lo haya borrado por error Si no tenes nada en los logs, va a ser bastante complicado encontrar el culpable. Disponemos de una copia base y de todos los archivos wal, ¿hay alguna manera de poder buscar las sentencias en estos archivos wal para poder tirar del hilo? En los WAL podés identificar que transacciones realizaron determinadas operaciones, pero eso vas a tener que enlazarlo con la paginas y tuplas en cuestion que fueron borradas, y si no tenes registros sobre que usuarios abrieron tales transacciones, no vas a poder encontrar el culpable. Lo que puedes es tener acotado la hora en la que paso, y de ahi investigar con logs de sistema. Para futuras consultas como esta, deberías usar pg_audit. Saludos, -- Martín Marqués It’s not that I have something to hide, it’s that I have nothing I want you to see Me pregunto , y si recupero una copia base, pongo la configuracion del log a log_statement como all y le pongo a recurperar los wal, ¿me dejara rastro de las sentencias en el log?
Migrar de informix a postgresql
Hola, Necesito migrar una pequeña base de datos informix SE 7 a postgresql. ¿conocéis alguna herramienta free que me pueda ayudar? Un Saludo
Alternativa a pgadmin 4
hola, Llevo tiempo intentando acostumbrarme a la version 4 pero no lo consigo, me podéis decir alguna otra opción compatible con las nuevas versiones de postgresql Un Saludo
Gestión de copias
Hola, Estoy viendo la posibilidad de alojar bases de datos en cloud, estoy mirando en amazon y en azure. Haciendo pruebas en azure, he visto que tiene un panel de copia bastante majo, te permite ver las copias que tienes, gestionar rentenciones, puedes recuperar el estado en el momento que quieras de una manera muy sencilla. ¿hay alguna herramienta web o algo asi que haga lo mismo?, que puedas configurar las copias, streaming, almacenaje de wal, etc ... Un Saludo
Re: cargar fichero en remoto
ok, gracias El 15/10/2019 a las 17:40, Anthony Sotolongo escribió: Hola Kernel, puedes seguir usando el CSV pero le puedes hacer pipe (|) hacia el server donde vas a cargarlo, por ejemplo: cat tu_datos_csv.csv | psql -d tu_base -h tu_server_remoto -U tu_user -c "copy tu_table from stdin with delimiter ';' csv" --en este caso si el delimitador es (;) pero lo puedes cambiar al tuyo Saludos El 14-10-19 a las 12:50, kernel escribió: El 14/10/2019 a las 16:40, Francisco Olarte escribió: Kernel: On Mon, Oct 14, 2019 at 3:10 PM kernel wrote: Hasta la fecha siempre he tenido la base de datos en la misma ubicación que la aplicación, estaba acostumbrado a cargar ficheros con la sentencia COPY, Hoy he contratado un alojamiento de DB en OVH y me doy cuenta de que eso ya no lo puedo hacer. Antes exportaba el excel como CSV y ejecutaba un COPY y a correr ¿Alguien me puede dar una pista de como puedo generar desde un excel un fichero sql (entiendo que un copy con STDIN o algo asi) para la carga? Si no tienes problemas con el ingles, busca en el manual en la referencia del psql el comando \copy ( https://www.postgresql.org/docs/12/app-psql.html ). Si los tienes, o estas mu vago, te cuento: COPY ( comando sql ) se puede ejecutar como "FROM STDIN", en cuyo caso EL SERVIDOR no lee un archivo, sino que espera los datos por el "socket" en un protocolo ( que esta en el manual ). PSQL ( el programa cliente ) tiene un comando "\COPY" ( es un BACKSLASH-COMMAND ), que lo que hace, cuando le pones un "FROM ARCHIVO" es 1.- Lanzar un comando COPY FROM STDIN en el SERVIDOR, 2.- Leer el archivo y mandarselo por el protocolo. Es lo que en algunos sitios llaman "Client side copy" TLDR: Usa \copy para archivos en el cliente, copy a secas para el servidor. Leete el help y/o el manual de \copy Francisco Olarte. ok, gracias El manual de \copy no lo he encontrado, entiendo que es lo que viene la ayuda del psql Un Saludo
cargar fichero en remoto
Hola, Hasta la fecha siempre he tenido la base de datos en la misma ubicación que la aplicación, estaba acostumbrado a cargar ficheros con la sentencia COPY, Hoy he contratado un alojamiento de DB en OVH y me doy cuenta de que eso ya no lo puedo hacer. Antes exportaba el excel como CSV y ejecutaba un COPY y a correr ¿Alguien me puede dar una pista de como puedo generar desde un excel un fichero sql (entiendo que un copy con STDIN o algo asi) para la carga? Gracias
Re: cargar fichero en remoto
El 14/10/2019 a las 16:40, Francisco Olarte escribió: Kernel: On Mon, Oct 14, 2019 at 3:10 PM kernel wrote: Hasta la fecha siempre he tenido la base de datos en la misma ubicación que la aplicación, estaba acostumbrado a cargar ficheros con la sentencia COPY, Hoy he contratado un alojamiento de DB en OVH y me doy cuenta de que eso ya no lo puedo hacer. Antes exportaba el excel como CSV y ejecutaba un COPY y a correr ¿Alguien me puede dar una pista de como puedo generar desde un excel un fichero sql (entiendo que un copy con STDIN o algo asi) para la carga? Si no tienes problemas con el ingles, busca en el manual en la referencia del psql el comando \copy ( https://www.postgresql.org/docs/12/app-psql.html ). Si los tienes, o estas mu vago, te cuento: COPY ( comando sql ) se puede ejecutar como "FROM STDIN", en cuyo caso EL SERVIDOR no lee un archivo, sino que espera los datos por el "socket" en un protocolo ( que esta en el manual ). PSQL ( el programa cliente ) tiene un comando "\COPY" ( es un BACKSLASH-COMMAND ), que lo que hace, cuando le pones un "FROM ARCHIVO" es 1.- Lanzar un comando COPY FROM STDIN en el SERVIDOR, 2.- Leer el archivo y mandarselo por el protocolo. Es lo que en algunos sitios llaman "Client side copy" TLDR: Usa \copy para archivos en el cliente, copy a secas para el servidor. Leete el help y/o el manual de \copy Francisco Olarte. ok, gracias El manual de \copy no lo he encontrado, entiendo que es lo que viene la ayuda del psql Un Saludo
Re: Problemas de tamaño/recodificacion
El 04/10/2019 a las 0:18, Alvaro Herrera escribió: Alvaro Herrera escribió: kernel escribió: ok , gracias Tom Lane acaba de incorporar un cambio a lo que será Postgres 13 que corrige este problema. ¡Gracias por reportarlo! Perdón, estaba en un error. La corrección no es para Postgres 13 sino para todas las versiones estables que están agendadas para publicarse en noviembre (10.11 en tu caso). Saludos Gracias
¿Se puede visualizar o editar un fichero wal?
Hola, me estoy preguntado si se puede visualizar/editar un fichero wal. Supongamos que quiero recuperar la base de datos desde una copia base con sus correspondientes ficheros y no se exactamente el momento en que se pudo ejecutar alguna instruccion que quiero que no se ejecute. ¿Como podría averiguar en que fichero esta?, o puedo visualizar el contenido para saber en que punto debe de detener la recuperacion?, ¿podria variar eliminar la sentencia erronea y dejar las siguientes? Un Saludo
consulta recursiva ?
Hola, Tengo un informe que obtiene la trazabilidad un determinado lote de producto, actualmente saco todos los lotes que han intervenido en la fabricación de dicho lote, directa o indirectamente como parte de otros y a su vez todos los lotes en el que ha intervenido Saco la trazabilidad hacia delante y hacia atrás, actualmente lo estoy haciendo en 4gl con procesos recursivos y guardando los datos en una tabla temporal, ve voy apoyando en un campo nivel, según voy profundizando Estaba pensado en hacerlo en plpsql para optimizarlo y me estaba preguntado si podría utilizar algún query recursivo o algo así Esta es la tabla tabla : CREATE TABLE lotes ( id serial NOT NULL, id_lote_pt integer, (guardo el lote de producto terminado, entrada ) id_lote_mp integer, (guardo N lotes de materia prima utilizados para la fabricacion del producto terminado, salida) ) Cualquier lote de producto terminado puede ser materia prima (producto semi-elaborado) de otro producto terminado. Teóricamente no debe de existir ningún bucle, no se si hay alguna forma de abortar la transacción Un Saludo
Re: cash_words en español?
Gracias, ya tengo algún ejemplo que adaptar.
Re: Problemas de tamaño/recodificacion
El 16/08/2019 a las 20:27, Alvaro Herrera escribió: kernel escribió: Lo del parche a mi se me queda un poco grande, no tengo experiencia en esos temas Pude reproducir tu problema y el parche que propuse antes casi lo soluciona; mandé un parche más completo a hackers a ver si lo podemos incluir en futuras versiones: https://www.postgresql.org/message-id/flat/20190816181418.GA898@alvherre.pgsql La siguiente consulta reproduce el problema: select query_to_xml( 'select a, cash_words(a::text::money) from generate_series(0, 200) a', true, false, ''); si tienes un client_encoding distinto del server_encoding, esa consulta muere con el error que antes dijiste: ERROR: memoria agotada DETALLE: La cadena de 281409059 bytes es demasiado larga para la recodificaci�n. Duración: 14830,015 ms (00:14,830) (ojo con el error de codificación ahí .. mi terminal es utf8 y la salida es latin9) ok , gracias
Re: cash_words en español?
El 19/08/2019 a las 13:05, Juan José Santamaría Flecha escribió: On Mon, Aug 19, 2019 at 12:16 PM kernel wrote: ¿hay algún sitio donde encontrar documentacion de este tipo de funciones? , me gustaría saber si puedo utilizar la función cash_words con salida en español La función cash_words() tiene como entrada datos del tipo 'money', por lo general trabajar con este tipo de datos suele ser una mala idea: https://wiki.postgresql.org/wiki/Don't_Do_This#Don.27t_use_money De hecho esta función debió quedarse obsoleta en algún momento, por lo que no está documentada. Así que si quieres una funcionalidad de este tipo seguramente tengas que hacerte una función propia. Un saludo, Juan José Santamaría Flecha ok, gracias
cash_words en español?
Hola, Acabo de descubrir la función cash_words, estoy buscando documentacion pero no encuentro nada, veo que esta dentro del pg_catalog (junto con otro montón que desconozco su funcionamiento) ¿hay algún sitio donde encontrar documentacion de este tipo de funciones? , me gustaría saber si puedo utilizar la función cash_words con salida en español Gracias
Re: Problemas de tamaño/recodificacion
El 08/08/2019 a las 18:10, Alvaro Herrera escribió: kernel escribió: Tengo una funcion plpgsql que me devuelve un valor xml de 0,5 GB, La codificacion que tiene la DB es UTF-8, como el cliente que utilizo es latin9, creo que a la hora del intercambio al hacer el cambio de encoding me da el problema ¿para qué haces esa conversión de codificación? XML ya tiene una declaración de codificación en sí mismo. Es más, creo que hay algunas cosas en XML que no funcionan bien con codificaciones no UTF8. (Al menos con JSON es así). La explicación a por qué sucede que dio Horacio es correcta ... el código de conversión es pesimista y asume que va a necesitar mucho espacio (lo cual probablemente no es cierto). Quizás puedas solventar el problema conviertiendo por trozos, es decir divides el XML en trozos y conviertes cada trozo separadamente. Debe ser posible hacer esto en forma que sea invisible para el cliente ... En términos de código, esa limitación de tamaño de conversión podría eliminarse ahora que Postgres tiene código reciente para manejar trozos de memoria grandes. Me intento explicar mejor, actualmente genero un xml desde el ERP al que aplico una hoja de xslt y genero código tex para generar facturas en pdf. Ahora lo que intento es generar el xml desde la propia base de datos (no tengo xml guardados), ahora va muchísimo mas rápido, el problema es cuando quieres sacar muchas es cuando da el problema, ojo si tiene que cambiar de encoding , si no se cambia no hay problema La base de datos la tengo en UTF-8 para poder guardar cualquier caracter, los clientes de la aplicacion son windows con encoding windows-1252, cuando conecto ejecuto un set client_encoding = latin9. En plpgsql le puedes hacer la declaracion inicial : pero luego introducir caracteres que se introducen como resultado de los querys son utf-8, mas lio. Defino una variable de tipo xml y es ahí donde deposito el resultado de la consulta y hasta ahí perfecto, el problema es al hora de retornar la variable al cliente. Voy a darle una vuelta haber si puedo conectar como UTF-8 y ver como se comporta el latex a la hora de generar el PDF. También estoy pensando en devolver xml por factura y concatenar uno mayor en la aplicación como anterior mente habéis comentado. Lo del parche a mi se me queda un poco grande, no tengo experiencia en esos temas
Re: Problemas de tamaño/recodificacion
El 08/08/2019 a las 12:59, Horacio Miranda escribió: On 8/08/2019 9:49 PM, kernel wrote: El 08/08/2019 a las 10:35, Horacio Miranda escribió: Debes indicar un poco mas de informacion, parametros, version de la base, si estas usando XML parsers... la consulta que estas haciendo cuando se cae, etc... Lee el correo y revisa que estes entregando toda la informacion que alguien de soporte te pueda preguntar. On 8/08/2019 8:21 PM, kernel wrote: Hola, Tengo una funcion plpgsql que me devuelve un valor xml de 0,5 GB, La codificacion que tiene la DB es UTF-8, como el cliente que utilizo es latin9, creo que a la hora del intercambio al hacer el cambio de encoding me da el problema ¿alguna idea? Gracias ERROR: memoria agotada La cadena de 516574025 bytes es demasiado larga para la recodificación Gracias Horacio, Tengo un postgresql version 10.5 sobre opensuse La consulta es bastante larga, es una SELECT a base de XMLELEMENT , XMLAGG y XMLATTRIBUTES , nada mas El problema se produce cuando la funcion retorna el valor xml ; cuando sacamos muchos datos y el encoding del cliente es distinto del que tiene la base de datos. Si la cantidad de datos es grande y no tiene que cambiar el encoding, no hay problema, tampoco lo hay si reducimos el volumen de datos y tenemos distinto encoding Supongo que tengo que tocar algo de memoria de postgres pero no se que parametro tocar y si es asi , ¿se puede hacer dinamicamente ? Un Saludo Revisando los codigos veo que el postgresql tiene un limite en el mbutils https://doxygen.postgresql.org/mbutils_8c.html if ((Size <https://doxygen.postgresql.org/c_8h.html#af9ecec2d692138fab9167164a457cbd4>) len >= (MaxAllocSize <https://doxygen.postgresql.org/memutils_8h.html#a74a92b981e9b6aa591c5fbb24efd1dac> / (Size <https://doxygen.postgresql.org/c_8h.html#af9ecec2d692138fab9167164a457cbd4>) MAX_CONVERSION_GROWTH <https://doxygen.postgresql.org/pg__wchar_8h.html#a1a226786d77d0e2baecaafd3d5aafd10>)) https://doxygen.postgresql.org/mbutils_8c.html #define MaxAllocSize ((Size <https://doxygen.postgresql.org/c_8h.html#af9ecec2d692138fab9167164a457cbd4>) 0x3fff) /* 1 gigabyte - 1 */ #define MAX_CONVERSION_GROWTH 4 Es decir que el tamaño maximo del objeto puede ser basicamante 256M menos 1/4 de byte. El mensaje de error dice que tu objeto es de 492.64M que es mayor al limite. Lo que se me ocurre es que vas a tener que usar un split para no tener un XML más grande de 256M. Ignoro lo que guardas como XML, pero si son fotos tal ves sea mejor guardar esos caracteres grandes como un CLOB ? Si, eso debe de ser. El error esta en el server, si ejecutas con pgadmin y le pones antes de la llamada un set client_encoding = 'latin9' antes de la llamada a la funcion da el error, vas a los log del servidor y ahi esta. Lo que guardo es texto, es un xml , tiene unas 2400 facturas, con todos los campos posibles de impresión. Gracias, voy haber que se me ocurre
Re: Problemas de tamaño/recodificacion
El 08/08/2019 a las 10:35, Horacio Miranda escribió: Debes indicar un poco mas de informacion, parametros, version de la base, si estas usando XML parsers... la consulta que estas haciendo cuando se cae, etc... Lee el correo y revisa que estes entregando toda la informacion que alguien de soporte te pueda preguntar. On 8/08/2019 8:21 PM, kernel wrote: Hola, Tengo una funcion plpgsql que me devuelve un valor xml de 0,5 GB, La codificacion que tiene la DB es UTF-8, como el cliente que utilizo es latin9, creo que a la hora del intercambio al hacer el cambio de encoding me da el problema ¿alguna idea? Gracias ERROR: memoria agotada La cadena de 516574025 bytes es demasiado larga para la recodificación Gracias Horacio, Tengo un postgresql version 10.5 sobre opensuse La consulta es bastante larga, es una SELECT a base de XMLELEMENT , XMLAGG y XMLATTRIBUTES , nada mas El problema se produce cuando la funcion retorna el valor xml ; cuando sacamos muchos datos y el encoding del cliente es distinto del que tiene la base de datos. Si la cantidad de datos es grande y no tiene que cambiar el encoding, no hay problema, tampoco lo hay si reducimos el volumen de datos y tenemos distinto encoding Supongo que tengo que tocar algo de memoria de postgres pero no se que parametro tocar y si es asi , ¿se puede hacer dinamicamente ? Un Saludo
Libro para vacaciones
Hola, Me gustaria que me aconsejarais algun libro de postgresql, a ser posible en castellano, sino hay mas remedio en ingles. No tengo un nivel medio, estoy buscado aprender mas sobre el tema de configuracion,creacion de indices, rendimiento, temas de wal, replicacion, estrategias de backup, particionamiento. En fin no se , algo facil de leer Acabo de ver este en internet : https://www.amazon.es/Mastering-PostgreSQL-techniques-development-administration-ebook/dp/B075V9TN6Z/ref=sr_1_4?__mk_es_ES=%C3%85M%C3%85%C5%BD%C3%95%C3%91=2SKFZADH5BA28=postgresql=1560959568=gateway=postg%2Caps%2C332=8-4 No se si habrá versión en castellano, tampoco se si es mucho libro para mi Gracias
Re: Formas de Replicar
Gracias, ya estoy liado con ello, la verdad es que tiene muchas opciones El 12/06/2019 a las 17:15, Daymel Bonne escribió: Buenos días: El mié., 12 de jun. de 2019 a la(s) 04:41, kernel (jucab...@gmail.com <mailto:jucab...@gmail.com>) escribió: Hola, Estoy viendo que hay diferentes formas de replicacion, yo hasta ahora utilizaba un metodo de Hot Standby y Streaming replication. cuando empece utilice esta guia : https://e-mc2.net/es/hot-standby-y-streaming-replication?page=1 El otro dia buscando informacion de pg_basebackup me encontre con esta otra guia : https://www.unixmen.com/setup-postgresql-replication-centos/ La verdad es que estás viendo guias bien antiguas. Ve o que esta ultima es mas facil de configurar, pero estoy probando y observo que si paro el servidor de replica e intento , por ejemplo crear una base de datos en servidor principal, se queda esperando y hasta que no levanto el servidor de respaldo no continua. Esto pasa porque en el segundo, se configura una replicación sincrónica, fíjate en el parámetro synchronous_standby_names. Con el metodo que yo utilizo (Hot Standby y Streaming replication) , puedo tener parada la maquina de replica varios dias (dependiendo del wal_keep_segment) sin ningun problema y cuando levanto la replica se pone en linea y punto. Deberías ver los [replication_slots](https://www.postgresql.org/docs/current/warm-standby.html#STREAMING-REPLICATION-SLOTS) Las verdad es que tengo un poco de lio, creo que la segunda forma es mas sencilla de configurar ,( no hay que pasar claves ssh, menos scripts), pero veo que no permite la perdida de conexion con el replica. Para liarme mas, esto pensado en poder utilizar balanceo, estoy viendo pgpool, veo que tambien puede encargarse de la replicacion, no se por donde seguir ¿que es mejor para mi?, ¿alguna guia clarificadora?, ¿en Castellano? Con un poco de esfuerzo, Google Translate y la [documentación de postgres](https://www.postgresql.org/docs/current/warm-standby.html#STREAMING-REPLICATION) te darán el 99% de lo que tienes que saber para implementar correctamente la replicación. Saludos -- Daymel Bonne Database Consultant, Training & Services 2ndQuadrant - PostgreSQL Solutions for the Enterprise https://www.2ndQuadrant.com/ <https://www.2ndquadrant.com/>
Formas de Replicar
Hola, Estoy viendo que hay diferentes formas de replicacion, yo hasta ahora utilizaba un metodo de Hot Standby y Streaming replication. cuando empece utilice esta guia : https://e-mc2.net/es/hot-standby-y-streaming-replication?page=1 El otro dia buscando informacion de pg_basebackup me encontre con esta otra guia : https://www.unixmen.com/setup-postgresql-replication-centos/ Ve o que esta ultima es mas facil de configurar, pero estoy probando y observo que si paro el servidor de replica e intento , por ejemplo crear una base de datos en servidor principal, se queda esperando y hasta que no levanto el servidor de respaldo no continua. Con el metodo que yo utilizo (Hot Standby y Streaming replication) , puedo tener parada la maquina de replica varios dias (dependiendo del wal_keep_segment) sin ningun problema y cuando levanto la replica se pone en linea y punto. Las verdad es que tengo un poco de lio, creo que la segunda forma es mas sencilla de configurar ,( no hay que pasar claves ssh, menos scripts), pero veo que no permite la perdida de conexion con el replica. Para liarme mas, esto pensado en poder utilizar balanceo, estoy viendo pgpool, veo que tambien puede encargarse de la replicacion, no se por donde seguir ¿que es mejor para mi?, ¿alguna guia clarificadora?, ¿en Castellano? La instalación que tengo es pequeña, de unos 50 usuarios , 1 base de datos con 300 tablas, unos 60GB en disco Muchas Gracias
Re: Perdida de flujo replicacion
Hola, Gracias, ya lo he reconstruido sin necesidad de parar al resto de usuarios (Gracias Marcelo). Efectivamente estoy viendo ejemplos de del pg_basebackup, voy a ver si veo como funciona Me gustaria probar un entorno de 1 maestro y 2 esclavos ¿como seria?, ¿algún Ejemplo? Gracias El 07/06/2019 a las 13:13, Hellmuth Vargas escribió: Incluso, leí recientemente que pg_start_backup y pg_start_backup serían descontinuados https://www.cybertec-postgresql.com/en/exclusive-backup-deprecated-what-now/ El vie., 7 de jun. de 2019 5:46 AM, Hellmuth Vargas <mailto:hiv...@gmail.com>> escribió: Hola Kernel Que versión de PostgreSQL emplea? porque para regenerar réplicas es muchísimo mejor emplear pg_basebackup https://www.postgresql.org/docs/11/app-pgbasebackup.html El mar., 4 de jun. de 2019 12:09 PM, kernel mailto:jucab...@gmail.com>> escribió: Hola, tengo una maquina de respaldo que le ha fallado el backplane y se ha apagado, he tardado 7 dias en conseguir el repuesto, la he puesto en marcha y en el log me dice lo siguiente: cp: no se puede efectuar `stat' sobre «/db/wal_esclavo/wal_shipped/000102C50044»: No existe el fichero o el directorio cp: no se puede efectuar `stat' sobre «/db/wal_esclavo/wal_shipped/000102C50044»: No existe el fichero o el directorio 2019-06-04 19:06:24 CEST LOG: la replicación en flujo se ha conectado exitosamente al primario 2019-06-04 19:06:24 CEST FATAL: no se pudo recibir datos desde el flujo de WAL: FATAL: el segmento de WAL solicitado 000102C50044 ya ha sido eliminado Entiendo que el servidor principal ya ha borrado los ficheros, supongo que tengo que volver a sincronizar desde el principio, tengo que volver ha empezar, hacer un select pg_start_backup('.') y demas. La pregunta es , ¿puedo hacer un pg_start_backup con el resto de usuarios trabajando con la base de datos o tengo que tener uso exclusivo? Gracias Un Saludo
Perdida de flujo replicacion
Hola, tengo una maquina de respaldo que le ha fallado el backplane y se ha apagado, he tardado 7 dias en conseguir el repuesto, la he puesto en marcha y en el log me dice lo siguiente: cp: no se puede efectuar `stat' sobre «/db/wal_esclavo/wal_shipped/000102C50044»: No existe el fichero o el directorio cp: no se puede efectuar `stat' sobre «/db/wal_esclavo/wal_shipped/000102C50044»: No existe el fichero o el directorio 2019-06-04 19:06:24 CEST LOG: la replicación en flujo se ha conectado exitosamente al primario 2019-06-04 19:06:24 CEST FATAL: no se pudo recibir datos desde el flujo de WAL: FATAL: el segmento de WAL solicitado 000102C50044 ya ha sido eliminado Entiendo que el servidor principal ya ha borrado los ficheros, supongo que tengo que volver a sincronizar desde el principio, tengo que volver ha empezar, hacer un select pg_start_backup('.') y demas. La pregunta es , ¿puedo hacer un pg_start_backup con el resto de usuarios trabajando con la base de datos o tengo que tener uso exclusivo? Gracias Un Saludo
Configuración optima postgresql
Hola, Tengo un servidor con 32 GB de RAM, 16cores, y un raid 1 con discos sas, postgres 9.5. sin replicacion Tengo instalado un odoo 9, con 25 usuarios No se si alguien de la lista me puede ayudar con la configuracion optima del postgresql.conf Estaba pensando en algo asi max_connections 100 shared_buffers 8GB effective_cache_size 24GB work_mem 128MB maintenance_work_mem 2GB max_wal_size 2Gb min_wal_size 1GB checkpoint_completion_target 0,7 "wal_buffers (-1 sets based on shared_buffers)" 16MB default_statistics_target random_page_cost effective_io_concurrency 2 max_worker_processes 16 Gracias
cambio de nombre de tag _x005F
Hola, Estoy generando un xml y me cambia el nombre del tag, dir_formato_xsl lo cambia y pone dir_formato_x005F_xls, ¿hay alguna forma de evitarlo? Sentencia: XMLELEMENT(name dir_formato_xsl,'/u/formatos') Resultado: /u/formatos Gracias
Re: omnidb 2.12
El 23/11/2018 a las 10:42, Francisco Olarte escribió: On Thu, Nov 22, 2018 at 6:46 PM Kernel wrote: El 22/11/2018 a las 18:09, jvenegasperu escribió: Diculpa no tenemos bola de cristal y si pones la query un log algo jejeje Perdón, pero la verdad no he pensado que el problema pueda estar en el query, he pensado en el tipo de conexión, librerías, configuración, versiones o algo así. http://xyproblem.info Normalmente es mas facil si dices el problema observado (i.e., meto un query Q en tal ventana del omnidb, pincho en tal sitio y hasta que me salen en tal otro las N filas me tarda 54 segundos, pero si meto en psql ( el mejor para referencias, porque todos lo tenemos ), de tal forma y pico enter tarda 1 segundo ). Poner tu solucion o impresiones ADEMAS ayuda, pero ademas de lo primero. Suponía que estos productos funcionan as: 1.- ha establecer la conexión con el servidor si, pero normalmente lo hacen al arrancar, y ademas hacen algunas configuraciones antes. 2.- le pasan la consulta Correcto, algunos ademas la delinean con una transaccion. 3.- La consulta la ejecuta el servidor, no el omnidb (Si es así , lo mismo da la consulta, con el resto de productos vuela) Efectivamente. 4.- Recibe los datos (solo una row con 4 campos) Una FILA, para rows tenemos la lista e ingles ;-> . ESO es importante, porque nos permite descartar el que vuelvan muchos resultados y el omnidb sea lento recibiendo/pintando. 5.- Los muestra Y esto puede ser lento, pero el una fila del punto 4 permite descartalo. Con el pgadmin4 veo la actividad del gestor y solo en el ultimo segundo se ve actividad, es como si se atascara en el punto numero 2. ¿ Que actividad ves ? Consumo de CPU en el cliente, en el servidor ? Todo esto ha venido por que utilizo un software de desarrollo de (https://4js.com), y el driver que utiliza tiene el mismo problema, se comporta exactamente igual Igual usan el mismo driver a bajo nivel y tiene algun problema. Esta es la consulta en cuestion : ..snip, snip... Salvo que las tablas sean enorme parece una cosa facilita. Solo devuelve una fila, con el resto de productos 1 segundo con el omnidb y 4js 54. ¿ Has probado a mandar, con omnidb y psql, el select precedido por "explain analyze" para que te asegures de que es el mismo plan ? Porque sin tener ningun dato de tu ejecucion, pueden pasar mil cosas. Francisco Olarte. Hola, Tiene el mismo plan, desde uno que desde otro. ya no se que mirar , debe de ser algo del driver Gracias
Re: pldbgapi extension para postgres 10?
El 01/08/2018 a las 15:14, Jaime Soler escribió: A lo mejor te funciona el repositorio de SLES 12 de la comunidad https://zypp.postgresql.org/howtozypp.php#pg10 que sí que tiene empaquetado pldebugger https://download.postgresql.org/pub/repos/zypp/10/suse/sles-12-x86_64/pldebugger10-1.0-1.sles12.x86_64.rpm El mié., 1 ago. 2018 a las 14:16, Kernel (<mailto:jucab...@gmail.com>>) escribió: El 01/08/2018 a las 13:37, Jaime Soler escribió: > Sí yo utilizo el debuger en 9.6 y 10. El paquete del repositorio > postgresl.org <http://postgresl.org> <http://postgresl.org> sobre centos es pldebugger10.x86_64 > y postgresql-10-pldebugger el de ubuntu. Recuerda que tienes que crear > la extensión en la base de datos y añadir la librería para que sea > cargada al inicio de postgres && reinicio del servicio > shared_preload_libraries = '$libdir/plugin_debugger' > > > Un saludo > > El mar., 24 jul. 2018 a las 11:18, Kernel (mailto:jucab...@gmail.com> > <mailto:jucab...@gmail.com <mailto:jucab...@gmail.com>>>) escribió: > > > Hola, > > ¿esta disponible la extension de depuracion para postgresql 10? > > Me da este error rl pgadmin 4 > > The debugger plugin is not enabled. Please create the pldbgapi > extension in this database. > > > Un Saludo > no lo encuentro para opensuse Gracias Gracias, No funciona
Re: pldbgapi extension para postgres 10?
El 01/08/2018 a las 13:37, Jaime Soler escribió: Sí yo utilizo el debuger en 9.6 y 10. El paquete del repositorio postgresl.org <http://postgresl.org> sobre centos es pldebugger10.x86_64 y postgresql-10-pldebugger el de ubuntu. Recuerda que tienes que crear la extensión en la base de datos y añadir la librería para que sea cargada al inicio de postgres && reinicio del servicio shared_preload_libraries = '$libdir/plugin_debugger' Un saludo El mar., 24 jul. 2018 a las 11:18, Kernel (<mailto:jucab...@gmail.com>>) escribió: Hola, ¿esta disponible la extension de depuracion para postgresql 10? Me da este error rl pgadmin 4 The debugger plugin is not enabled. Please create the pldbgapi extension in this database. Un Saludo no lo encuentro para opensuse Gracias
Re: Convertir registro cualquiera a un array character varying[]
Gracias por tu respuesta, los he probado y van perfectos, el que mas me gusta es el que utiliza hstore. Posiblemente utilice ese, pues a la hora de tratar lo desde una simple salida csv y un excel se puede revisar. Pero como inicialmente empece a desarrollar lo y me encontre con el problema, no queria dejarlo sin mas, me gustaría ver como podria resolver lo El jue, 26 de julio de 2018 07:48 PM, Alvaro Herrera < alvhe...@2ndquadrant.com> escribió: > Kernel escribió: > > Hola, > > > > Estoy creando una funcion de auditoria a base de triggers, > > ¿por qué no usas los que ya están escritos? Hay por lo menos tres > distintas posibilidades. Esta es una: > https://wiki.postgresql.org/wiki/Audit_trigger_91plus > > > -- > Álvaro Herrerahttps://www.2ndQuadrant.com/ > PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services >
Convertir registro cualquiera a un array character varying[]
Hola, Estoy creando una funcion de auditoria a base de triggers, La tabla de auditoria entre otros campos tiene estos : tabla character varying,-- Nombre de tabla camposcharacter varying[], -- Lista de campos del registro old_value character varying[], -- Valores antiguos new_value character varying[], -- Valores nuevos Dentro del trigger obtengo fácilmente el nombre de tabla y el array con los campos: tabla := TG_TABLE_NAME; SELECT array(SELECT information_schema.columns.column_name::character varying FROM information_schema.columns WHERE information_schema.columns.table_name = TG_TABLE_NAME order by ordinal_position) INTO campos ; Sin embargo tengo problemas con los registros OLD.* y NEW.*, los tipos de campo pueden ser de cualquier tipo y lo quiero cargar en old_value y new_value que son character varying[] Gracias
pldbgapi extension para postgres 10?
Hola, ¿esta disponible la extension de depuracion para postgresql 10? Me da este error rl pgadmin 4 The debugger plugin is not enabled. Please create the pldbgapi extension in this database. Un Saludo
herramientas de Audit trail
Hola, Estoy viendo la posibilidad de implantar algún sistema de auditoria, por lo que estoy leyendo hay dos vías para realizarlo, una por triggers y otra por logs. Me pregunto si también hay alguna herramienta gráfica para analizar los logs o la tabla de auditoria generada por los triggers. En fin, me gustaría contar con vuestros comentarios para ir por un camino u otro. Gracias
Replicacion con diferentes versiones
Hola, Siempre he montado la replicacion con versiones iguales, pero ¿puedo montar un sistema de replicacion con diferentes versiones de postgresql? Por ejemplo maestro la 9.1 y esclavo la 9.2 Gracias
Re: buscar referenciado
ok, gracias, estaba buscado alguna función que me lo verifique sin tener que hacer un delete , si había algo hecho El 09/04/2018 a las 16:45, Alvaro Herrera escribió: Kernel escribió: No exactamente, lo que busco es a nivel de registro,a nivel de dato, me explico , Puedo tener un id que este solo este en la tabla principal y no en las otras. Imagina que quiero borrar un id de la tabla principal y quiero ver si puedo o no borrarlo, si ese dato en concreto esta en otras tablas o no usa ON DELETE RESTRICT ... si está referido, el delete te dará un error. Si quieres hermosear el error, puedes usar un savepoint o un bloque EXCEPTION en plpgsql.
Re: buscar referenciado
No exactamente, lo que busco es a nivel de registro,a nivel de dato, me explico , Puedo tener un id que este solo este en la tabla principal y no en las otras. Imagina que quiero borrar un id de la tabla principal y quiero ver si puedo o no borrarlo, si ese dato en concreto esta en otras tablas o no El 09/04/2018 a las 13:51, Stephen Amell escribió: Hola Kernel, ¿buscas algo asi? |SELECT tc.constraint_name,tc.table_name,kcu.column_name,ccu.table_name AS foreign_table_name,ccu.column_name AS foreign_column_name FROM information_schema.table_constraints AS tc JOIN information_schema.key_column_usage AS kcu ON tc.constraint_name =kcu.constraint_name JOIN information_schema.constraint_column_usage AS ccu ON ccu.constraint_name =tc.constraint_name WHERE constraint_type ='FOREIGN KEY'AND tc.table_name='mytable';| de https://stackoverflow.com/questions/1152260/postgres-sql-to-list-table-foreign-keys On 2018-04-09 08:46, Kernel wrote: Hola, Me pregunto si existe alguna función que me diga en que tablas esta referenciado un dato. supongamos que tengo una tabla maestra (A) que tiene un campo id como PRIMARY KEY, a esta se referencian otras tablas (B),(C), etc .., tienen un FOREIGN KEY a la tabla (A) Antes de borrar un determinado valor de la tabla(A), me gustaria saber en que tablas esta referenciado . Un Saludo
buscar referenciado
Hola, Me pregunto si existe alguna función que me diga en que tablas esta referenciado un dato. supongamos que tengo una tabla maestra (A) que tiene un campo id como PRIMARY KEY, a esta se referencian otras tablas (B),(C), etc .., tienen un FOREIGN KEY a la tabla (A) Antes de borrar un determinado valor de la tabla(A), me gustaria saber en que tablas esta referenciado . Un Saludo
Tema de permisos
Hola, Necesito crear un usuario que solo pueda acceder a un par de tablas y a una funcion mediante odbc. Partiendo que no esto muy puesto en el tema grant ,me gustaria que este usuario no pueda ver nada de la base de datos (nombres de tablas, funciones, etc) si entra con pgadmin , de tal forma que si entra solo vea sus 2 tablas y la funcion ¿es posible? Gracias
Re: demasiados ficheros en pg_xlog
El 13/01/2018 a las 13:40, Kernel escribió: Hola, Tengo un 2 servidores uno como maestro y otro como esclavo. En el servidor maestro la carpeta pg_xlog tiene 2034 ficheros y otros tantos en pg_xlog/archive_status. ¿que puedo hacer para vaciar/descargar este directorio?, he leido algo sobre pg_resetlog pero esta en ingles y la verdad no es mi fuerte en el fichero de configuracion del servidor tengo : # - Master Server - # These settings are ignored on a standby server max_wal_senders = 5 # max number of walsender processes # (change requires restart) #wal_sender_delay = 1s # walsender cycle time, 1-1 milliseconds wal_keep_segments = 120 # in logfile segments, 16MB each; 0 disables #vacuum_defer_cleanup_age = 0 # number of xacts by which cleanup is delayed #replication_timeout = 60s # in milliseconds; 0 disables #synchronous_standby_names = '' # standby servers that provide sync rep # comma-separated list of application_name # from standby(s); '*' = all Gracias Por lo que he leido , deberia de parar el servicio, y como postgres ejecutar pg_resetxlog DATADIR y volver a arrancar el servicio ¿es correcto?, ¿deberia de hacer algo en el servidor esclavo? Gracias
demasiados ficheros en pg_xlog
Hola, Tengo un 2 servidores uno como maestro y otro como esclavo. En el servidor maestro la carpeta pg_xlog tiene 2034 ficheros y otros tantos en pg_xlog/archive_status. ¿que puedo hacer para vaciar/descargar este directorio?, he leido algo sobre pg_resetlog pero esta en ingles y la verdad no es mi fuerte en el fichero de configuracion del servidor tengo : # - Master Server - # These settings are ignored on a standby server max_wal_senders = 5 # max number of walsender processes # (change requires restart) #wal_sender_delay = 1s # walsender cycle time, 1-1 milliseconds wal_keep_segments = 120 # in logfile segments, 16MB each; 0 disables #vacuum_defer_cleanup_age = 0 # number of xacts by which cleanup is delayed #replication_timeout = 60s # in milliseconds; 0 disables #synchronous_standby_names = '' # standby servers that provide sync rep # comma-separated list of application_name # from standby(s); '*' = all Gracias
Re: Encriptado DB
El 13/09/2017 a las 17:47, Maximi89 escribió: Puede ser que encripte algunos campos de la tabla, como por ejemplo, ¿una clave?. https://www.postgresql.org/docs/9.1/static/pgcrypto.html El 13 de septiembre de 2017, 12:39, Kernel <jucab...@gmail.com <mailto:jucab...@gmail.com>> escribió: Hola, Hoy he estado con el consultor que me asesora con la ISO27001 y me ha comentado la posibilidad de encriptar la base de datos, me comenta que ellos utilizan mariadb y que es muy fácil hacerlo, parece ser que es algún parámetro de configuración y poco mas, no se si en postgresql esto es posible y como funciona. Por lo que me ha perecido entender en la db esta todo encriptado ¿Me podéis comentar algo al respecto? Gracias -- Maximiliano Augusto Castañón Araneda Santiago, Chile Linux user # 394821 Entel: +56998913632 No , por lo que me ha dicho, es encriptar todo, no se como puede hacerlo, entiendo que debe de haber por debajo algún sistema de ficheros o algo asi, incluso los backup
Encriptado DB
Hola, Hoy he estado con el consultor que me asesora con la ISO27001 y me ha comentado la posibilidad de encriptar la base de datos, me comenta que ellos utilizan mariadb y que es muy fácil hacerlo, parece ser que es algún parámetro de configuración y poco mas, no se si en postgresql esto es posible y como funciona. Por lo que me ha perecido entender en la db esta todo encriptado ¿Me podéis comentar algo al respecto? Gracias
Re: lo que se queda fuera de un join
Voy a intentar explicarme con un ejemplo, necesito sacar todas aquellas filas de t1, que no estan en t2. Podría hacerlo con un 't1.num not in (select ', pero lo necesito para un caso bastante mas complejo. tabla t1 num | name -+-- 1 | a 2 | b 3 | c tabla t2 num | value -+--- 1 | xxx 3 | yyy 5 | zzz SELECT * FROM t1 INNER JOIN t2 ON t1.num = t2.num; num | name | num | value -+--+-+--- 1 | a| 1 | xxx 3 | c| 3 | yyy Lo que quiero obtener : num | name | num | value -+--+-+--- 2 | b| | Creo recordar que una vez vi algo en el manual Gracias El 10/08/2017 a las 19:19, Emanuel Calvo escribió: {LEFT|RIGHT} OUTER JOIN ? LInk https://www.postgresql.org/docs/9.6/static/tutorial-join.html El 10 de agosto de 2017, 13:55, Kernel <jucab...@gmail.com <mailto:jucab...@gmail.com>> escribió: Hola, me suena que hay una forma de obtener los registros que se han quedado fuera de un join, estoy buscando en el manual pero no consigo verlo, ¿me podéis dar una pista para buscar el el manual? Gracias -- -- Emanuel Calvo Sr. Technical Services at Percona Team Building at Ayres.io
lo que se queda fuera de un join
Hola, me suena que hay una forma de obtener los registros que se han quedado fuera de un join, estoy buscando en el manual pero no consigo verlo, ¿me podéis dar una pista para buscar el el manual? Gracias
Conexión de una db a otra del mismo server
El 08/08/2017 a las 2:41, jvenegasperu . escribió: Y alguno sabe si hay FDW en windows o como se haría en windows El 7 ago. 2017 15:16, "Edwin Quijada" <listas_quij...@hotmail.com <mailto:listas_quij...@hotmail.com>> escribió: Hago algo parecido y lo que hice fue usar untrusted language, con Python me conectaba a otra BD y sacaba todo lo que necesitaba. EN tu caso como de Pg a Pg , pues usaria FDW que es la tecnologia mas nueva y seria mas simple de usar -------- *From:* Kernel <jucab...@gmail.com <mailto:jucab...@gmail.com>> *Sent:* Monday, August 7, 2017 8:31 AM *To:* Ayuda *Subject:* Conexión de una db a otra del mismo server Hola, Tengo una base de datos de un erp (db_erp) y me gustaría crear otra base de datos para crear un cubo de datos (db_bi). La idea que tengo es, que esta nueva db (db_bi) contenga funciones pl/pgsql que lean datos de la db del erp (db_erp) y la inserten en que desde esta nueva db (db_bi). En un principio estarían en la misma maquina y gestor, pero también cabe la posibilidad de que estuvieran en distintas maquinas. Estoy viendo dblink y postgres_fdw, no se cual de ellos es el mas adecuado y si esta es la mejor forma de hacerlo Gracias Siguiendo con el tema , veo que con dblink prodria llamar a FUNCIONES de la base de datos db_erp, ¿pero como lo puedo hacer con postgres_fdw ?