Un poderoso sistema de código abierto para bases de datos relacionales

PostgreSQL for Mac

Suscríbase a nuestro boletín

Manténgase al día con los últimos lanzamientos de software, noticias, descuentos de software, ofertas y más.

Suscribir

PostgreSQL 9.3.3

  -  52,35 MB  -  Gratis

En ocasiones, las últimas versiones del software pueden causar problemas al instalarse en dispositivos más antiguos o dispositivos que ejecutan una versión anterior del sistema operativo. Los fabricantes de software suelen solucionar estos problemas, pero puede llevarles algún tiempo. Mientras tanto, puedes descargar e instalar una versión anterior de PostgreSQL 9.3.3.


Para aquellos interesados en descargar la versión más reciente de PostgreSQL for Mac o leer nuestra reseña, simplemente haz clic aquí.


Todas las versiones antiguas distribuidas en nuestro sitio web son completamente libres de virus y están disponibles para su descarga sin costo alguno.


Nos encantaría saber de ti

Si tienes alguna pregunta o idea que desees compartir con nosotros, dirígete a nuestra página de contacto y háznoslo saber. ¡Valoramos tu opinión!

  • PostgreSQL 9.3.3 Capturas de Pantalla

    Las imágenes a continuación han sido redimensionadas. Haga clic en ellos para ver las capturas de pantalla en tamaño completo.

Qué hay de nuevo en esta versión:

La costa de subsidios ... CON el ADMINISTRADOR de la OPCIÓN de restricciones:
- La concesión de un papel sin ADMIN OPCIÓN se supone que es para evitar que el concesionario de la adición o eliminación de miembros de la función concedida, pero esta restricción fue soslayado fácilmente haciendo CONJUNTO de PAPEL primero. El impacto en materia de seguridad es principalmente que un miembro de la función puede revocar el acceso de los demás, contrario a los deseos de su otorgante. No aprobado el papel que los estados adiciones son una menor preocupación, ya que no coopera con el papel que los estados podrían proporcionar la mayor parte de sus derechos a los demás de todos modos por la creación de vistas o de SEGURIDAD DEFINIDOR funciones. (CVE-2014-0060) Prevenir la escalada de privilegios a través de manual de llamadas a PL validador de funciones (Andrés Freund):
- La función principal de PL validador de funciones es ser llamado implícitamente durante la creación de la FUNCIÓN, sino que también son normales funciones SQL que un usuario puede llamar explícitamente. Llamar a un validador en una función a la realidad escrita en otro idioma no se comprobó que podría ser explotada para la escalada de privilegios a los efectos. La revisión consiste en la adición de una llamada a un privilegio de comprobación de la función en cada validador de la función. No principales idiomas del procedimiento también será necesario hacer este cambio para su propio validador de funciones, si los hubiere. (CVE-2014-0061) Evitar múltiples búsquedas de nombre durante la mesa y el índice de DDL (Robert Haas, Andrés Freund):
- Si el nombre de búsquedas llegado a diferentes conclusiones debido a que la actividad simultánea, podemos realizar algunas partes de la DDL en una tabla diferente de otras partes. Al menos en el caso de CREAR un ÍNDICE, esto puede ser usado para causar los permisos de comprobaciones a realizar en contra de una tabla diferente de la creación del índice, lo que permite una escalada de privilegios en ataque. (CVE-2014-0062) Evitar la saturación de búfer con mucho datetime cadenas (Noé Misch):
- El MAXDATELEN constante era demasiado pequeño para el más largo posible valor de tipo intervalo, lo que permite un desbordamiento de búfer en interval_out(). Aunque la datetime funciones de entrada fueron más cuidadosos y evitar la saturación del búfer, el límite era lo suficientemente corto como para hacer que rechacen algunas entradas válidas, tales como la entrada contiene un muy largo en la zona horaria de nombre. El ecpg biblioteca contenía estas vulnerabilidades, junto con algunos de sus propios. (CVE-2014-0063) Evitar la saturación de búfer debido al desbordamiento de entero en el tamaño de los cálculos (Noé Misch, Heikki Linnakangas):
- Varias funciones, principalmente de tipo funciones de entrada, calcula un tamaño de asignación sin comprobación de desbordamiento. Si el desbordamiento ocurrió, demasiado pequeño búfer sería asignado y, a continuación, escribe pasado. (CVE-2014-0064) Evitar saturaciones de tamaño fijo buffers (Pedro Eisentraut, Jozef Mlich):
- Uso strlcpy() y funciones relacionadas para proporcionar una garantía de que tamaño fijo tampones no son de saturación. A diferencia de los anteriores artículos, no está claro si estos casos realmente representan temas en vivo, ya que en la mayoría de los casos no parecen ser anteriores limitaciones en el tamaño de la cadena de entrada. No obstante, parece prudente silencio todos Coverity advertencias de este tipo. (CVE-2014-0065) Evitar estrellarse si crypt() devuelve NULL (Honza Horak, Bruce Momjian):
- Hay relativamente pocos escenarios en los que crypt() puede devolver un valor NULO, pero contrib/chkpass de accidente si lo hizo. Un caso práctico en el que esto podría ser un problema es si libc está configurado para negarse a ejecutar no autorizados de los algoritmos de hash (por ejemplo, "el modo FIPS"). (CVE-2014-0066) Documentar los riesgos de hacer el cheque en la prueba de regresión de instrucciones (Noé Misch, Tom Lane):
- Desde el servidor temporal iniciado por hacer check utiliza la "confianza" de autenticación, otro usuario en la misma máquina puede conectarse a ella como la base de datos de superusuario, y, a continuación, potencialmente explotar los privilegios del sistema operativo del usuario que inició el análisis. Una versión futura probablemente de incorporar los cambios en el procedimiento de la prueba para evitar este riesgo, pero algunos de debate público, es necesario en primer lugar. Así que por el momento, acaba de advertir a la gente contra de la utilización de hacer el cheque cuando no son de confianza de los usuarios en la misma máquina. (CVE-2014-0067) de renovación tupla protocolo de congelación (Álvaro Herrera, Andrés Freund):
- La lógica de la tupla de congelación era incapaz de manejar algunos casos, la congelación de multixact IDs, con el efecto práctico con el que compartió bloqueos a nivel de fila podría ser olvidado una vez que la edad suficiente.
- La fijación de este necesario cambiar el WAL formato de registro para la tupla de congelación. Mientras que esto no es ningún problema para los servidores independientes, cuando se utiliza la replicación significa que los servidores de reserva debe ser actualizado a 9.3.3 o posterior antes de que son sus amos. Un viejo de espera será incapaz de interpretar congelación de los registros generados por un nuevo maestro, y se producirá un mensaje de PÁNICO. (En tal caso, la actualización de espera debería ser suficiente para dejar reanudar la ejecución.) Crear separado GUC parámetros para el control de multixact de congelación (Álvaro Herrera):
- 9.3 requiere multixact tupla etiquetas para ser congelados antes de que crezca demasiado viejo, de la misma manera como la llanura del ID de transacción, las etiquetas se han congelado por un tiempo. Previamente, el ID de transacción de la congelación de los parámetros utilizados para multixact Id demasiado; pero, puesto que las tasas de consumo de los Identificadores de transacción y multixact Identificadores pueden ser muy diferentes, esto no funcionó muy bien. Introducir de nuevo la configuración de vacuum_multixact_freeze_min_age, vacuum_multixact_freeze_table_age, y autovacuum_multixact_freeze_max_age a control cuando se congele multixacts. Cuenta para el control remoto de los bloqueos de fila se propagan por las actualizaciones locales (Álvaro Herrera):
- Si una fila estaba cerrada por la transacción, y la transacción B actualizado a la nueva versión de la fila creada por B sería bloqueado por Una, sin embargo, visible sólo a B. Si la transacción B y, a continuación actualizado de nuevo la fila, Un bloqueo de no controlarse, lo que, posiblemente, permitiendo B para completar cuando no debe. Este caso es nuevo en 9.3 ya que las versiones anteriores no tienen ningún tipo de bloqueo de fila que iba a permitir que otra transacción a actualizar la fila.
- Este descuido podría permitir comprobaciones de integridad referencial para dar falsos positivos (por ejemplo, permitir que elimina que debería haber sido rechazado). Aplicaciones de uso de los nuevos comandos PARA SELECCIONAR la TECLA de COMPARTIR y SELECCIONAR PARA la NO ACTUALIZACIÓN de la CLAVE podría también han sufrido el bloqueo de los fallos de este tipo. Evitar el "olvido" válido bloqueos de fila cuando uno de varios titulares de un bloqueo de fila se anula (Álvaro Herrera):
- Este fue otro mecanismo por el cual un bloqueo compartido de fila se podía perder, así que posiblemente permite actualizaciones que debería haber sido impedido por las restricciones foreign key. Revisión lógica incorrecta durante la actualización de la cadena de bloqueo (Álvaro Herrera):
- Este error podría resultar en falsos "no se puede serializar el acceso debido a la actualización simultánea" errores en la LECTURA REPETIBLE y el aislamiento de transacción SERIALIZABLE modos.
- Manija de la envolvente correctamente durante la extensión o el truncamiento de pg_multixact/miembros (Andrés Freund, Álvaro Herrera) Revisión de manipulación de 5 dígitos y nombres de archivo en pg_multixact/miembros (Álvaro Herrera):
- Como 9.3, estos nombres pueden ser de más de 4 dígitos, pero el directorio de código de limpieza ignorado este tipo de archivos.
- Mejorar el rendimiento de multixact código de caché (Álvaro Herrera)
- Optimizar la actualización de una fila que ya está bloqueado por la misma transacción (Andrés Freund, Álvaro Herrera)
- Esto soluciona una regresión del rendimiento de pre-9.3 versiones cuando se hace SELECCIONE PARA ACTUALIZAR seguido por ACTUALIZAR/ELIMINAR.
- Durante la recuperación del archivo comprimido, prefieren mayor número de línea de tiempo cuando WAL segmentos con el mismo ID están presentes en el archivo y pg_xlog/ (Kyotaro Horiguchi)
- En el pasado, que aún no se ha archivado segmentos podía ser ignorado durante la recuperación. Esto vuelve indeseable para el cambio de comportamiento en 9.3.0 de nuevo a la forma en que funcionaban las cosas pre-9.3. Solucionar los posibles malentendidos en la reproducción de WAL registros cuando algunos segmentos de una relación no son de tamaño completo (Greg Stark, Tom Lane):
- El WAL actualización, podría aplicarse a la página incorrecta, potencialmente muchas páginas pasado, donde debería de haber sido. Aparte de la corrupción de datos, este error se ha observado que el resultado significativo de la "hinchazón" de los servidores de reserva comparación con la de sus maestros, debido a que las actualizaciones se aplican mucho más allá de donde la fin-de-archivo debe haber sido. Este modo de fallo no parece ser un riesgo significativo durante la recuperación de errores, sólo cuando inicialmente con la sincronización de una espera creado a partir de una copia de seguridad base tomada de una forma rápida-cambio de maestro. Corregir el error en la determinación de cuando la recuperación se ha alcanzado la consistencia (Tomonari Katsumata, Heikki Linnakangas):
- En algunos casos WAL reproducción sería erróneamente a la conclusión de que la base de datos ya fue consistente en el inicio de la reproducción, lo que, posiblemente, permitiendo hot-standby consultas antes de la base de datos fue muy consistente. Otros síntomas tales como "PÁNICO: WAL contiene referencias no son válidas las páginas de" posibles. Revisión de WAL registro de la visibilidad del mapa de cambios (Heikki Linnakangas):
- Revisión inadecuada de bloqueo de árbol de páginas de índice, mientras que la reproducción de una operación en VACÍO en caliente-el modo de espera (Andrés Freund, Heikki Linnakangas, Tom Lane)
- Este error podría resultar en "PÁNICO: WAL contiene referencias no son válidas las páginas de" fracasos. Asegurarse de que las inserciones en la no-hoja de GIN páginas de índice de escribir una página completa de WAL registro cuando corresponda (Heikki Linnakangas):
- La anterior codificación arriesgó índice de corrupción en el caso de un parcial de la página escribir durante una caída del sistema.
- Cuando pause_at_recovery_target y recovery_target_inclusive están establecidas, asegurar el registro de destino se aplica antes de la pausa, no después (Heikki Linnakangas)
- Garantizar walreceiver envía hot-standby retroalimentación de los mensajes en el tiempo, incluso cuando hay un flujo continuo de datos (Andrés Freund, Amit Kapila)
- Evitar el tiempo de espera de las interrupciones de tomar el control de distancia de la línea principal del código, a menos que ImmediateInterruptOK se establece (Andrés Freund, Tom Lane)
- Este es un problema grave para cualquier aplicación que hace uso de la declaración de los tiempos de espera, ya que puede causar todo tipo de extrañas fallas después de un tiempo de espera se ha producido. Hemos visto los informes de "pegado" spinlocks, Errores que se inesperadamente promovido a Pánicos, imbatible motores, y otros malos comportamientos.
- Fijar las condiciones de carrera durante el proceso de servidor de salida (Robert Haas)
- Asegurarse de que los manejadores de señales no intente utilizar el proceso de la MyProc puntero, después ya no es válido.
- Revisión de condiciones de carrera en walsender cierre de la lógica y walreceiver señal SIGHUP controlador (Tom Lane)
- Revisión inseguro referencias a errno dentro de los informes de errores de lógica (Christian Kruse)
- Esto suele conducir a comportamientos extraños, tales como la falta o inadecuada SUGERENCIA de campos.
- Solucionar los posibles accidentes de uso de ereport() demasiado pronto durante el inicio del servidor (Tom Lane)
- La causa principal que hemos visto en el campo es un accidente si se inicia el servidor en un directorio no tiene permisos para leer.
- Claro reintentar banderas correctamente en OpenSSL zócalo de la función de escritura (Alexander Kukushkin)
- Esta omisión podría resultar en un servidor de bloqueo después de la pérdida inesperada de una conexión SSL cifrada.
- Fijar la comprobación de la longitud de Unicode identificadores (U&"..." sintaxis) que contiene escapa (Tom Lane)
- Una falsa advertencia de truncamiento sería impreso para tales identificadores de si la forma literal del identificador, que era demasiado largo, pero el identificador en realidad no tenía necesidad de truncamiento después de escapar.
- Revisión de análisis de Unicode literales y los identificadores, justo antes del final de una cadena de comando o función del cuerpo (Tom Lane)
- Permitir que las palabras clave que son los nombres de tipo para ser utilizado en las listas de funciones (Stephen Frost)
- Un parche anterior permitió palabras clave para ser utilizado sin necesidad de citar en lugares tales como el papel de los identificadores; pero faltó casos en que una lista de papel identificadores era permitido, tales como la CAÍDA de PAPEL.
- Revisión del analizador de choque para EXISTS(SELECT * FROM zero_column_table) (Tom Lane)
- Fix posible accidente debido al plan no válido para anidada sub-selecciona, tales como DONDE (... x IN (SELECT...) ...) ( ... ) (Tom Lane)
- Corregir el mal manejo de DONDE las condiciones tirado desde un LATERAL de la subconsulta (Tom Lane)
- El síntoma típico de este error fue un "UNIRSE a la calificación, no se refieren a otras relaciones de error", aunque sutiles errores de lógica en creado planes parecen posibles.
- No permitir el LATERAL referencias a la tabla de destino de un UPDATE/DELETE (Tom Lane)
- Mientras que esto puede ser permitido en un futuro de liberación, no fue intencional en 9.3, y no funcionan del todo bien de todos modos.
- Fix UPDATE/DELETE de una heredado de la tabla de destino que tiene la UNIÓN de TODAS las subconsultas (Tom Lane)
- Sin esta revisión, la UNIÓN de TODAS las subconsultas no están correctamente insertados en la actualización de los planes para la herencia de tablas secundarias después de la primera, por lo general resulta en la no actualización pasando por los de la tabla secundaria(s).
- Fix ANALIZAR para no fallar en una columna que es un dominio de más de un tipo de rango (Tom Lane)
- Asegurar que ANALIZAR crea estadísticas por una columna de la tabla, incluso cuando todos los valores son "demasiado amplia" (Tom Lane)
- ANALIZAR intencionalmente omite muy amplia de valores a partir de su histograma y más-común de los valores de los cálculos, pero se dejaron de hacer algo cuerdo en el caso de que todas las muestras de las entradas son demasiado amplia.
- En ALTER TABLE ... FIJAR el ESPACIO de tabla, que la base de datos por defecto del espacio de tablas para ser utilizado sin una verificación de los permisos (Stephen Frost)
- CREAR TABLA siempre ha permitido el uso de este tipo, pero sin ALTERAR la TABLA de no obtener la nota.
- Fijar el soporte para extensiones que contiene los desencadenadores de eventos (Tom Lane)
- Revisión "no se puede aceptar un conjunto de error" cuando algunos de los brazos de un CASO de devolución de un conjunto y a otros no (Tom Lane)
- Corrección de pérdida de memoria en JSON funciones (Craig Timbre)
- Distinguir bien los números de la no-los números a la hora de generar salida JSON (Andrew Dunstan)
- Fix posible error en la clasificación de caracteres multibyte por la búsqueda de texto parser (Tom Lane)
- No-ASCII, caracteres podrían ser clasificados de forma incorrecta cuando se utiliza localización C con una codificación multibyte. En Cygwin, no-C configuraciones regionales podría fallar así.
- Fix posible mal comportamiento en plainto_tsquery() (Heikki Linnakangas)
- Uso memmove() no memcpy() para copiar la superposición de regiones de memoria. No ha habido informes de campo de esta realidad el causante del problema, pero es ciertamente arriesgado.
- Revisión de la colocación de las comprobaciones de permisos en pg_start_backup() y pg_stop_backup() (Andrés Freund, Magnus Hagander)
- La anterior codificación podría intentar hacer el catálogo de acceso cuando no debe.
- Aceptar SHIFT_JIS como una codificación nombre de la localidad los fines de la verificación (Tatsuo Ishii)
- Fix *-calificación de los parámetros con nombre de SQL-lenguaje funciones (Tom Lane)
- Dado un compuesto de tipo de parámetro llamado foo, $1.* funcionaba bien, pero foo.* no tanto.
- Corregir el mal comportamiento de PQhost() en Windows (Fujii Masao)
- Debe devolver localhost si no hay ningún anfitrión ha sido especificado.
- Mejorar el manejo de errores en libpq y psql para errores durante la COPIA A STDOUT/DESDE la ENTRADA estándar (Tom Lane)
- En particular, esto corrige un bucle infinito que podría ocurrir en 9.2 y hasta si el servidor de conexión se perdió durante la COPIA DE STDIN. Variantes de ese escenario podría ser posible en versiones anteriores, o con otras aplicaciones de cliente.
- Corrección de traducción incorrecta manipulación en algunos psql \d comandos (Pedro Eisentraut, Tom Lane)
- Garantizar pg_basebackup de fondo del proceso es asesinado al salir de su proceso de primer plano (Magnus Hagander)
- Solucionar los posibles impresión incorrecta de los nombres de archivo en pg_basebackup del modo detallado (Magnus Hagander)
- Evitar la inclusión de espacios en el interior de PGDATA dos veces en la base de las copias de seguridad (Dimitri Fontaine, Magnus Hagander)
- Revisión desalineados descriptores en ecpg (MauMau)
- En ecpg, manejar falta de un nombre de host en los parámetros de la conexión correctamente (Michael Meskes)
- Revisión de regresión del rendimiento en contrib/dblink inicio de conexión (Joe Conway)
- Evitar un ida y vuelta innecesario cuando el cliente y el servidor codificaciones partido.
- En contrib/isn, revisión incorrecto cálculo del dígito de control para el ISMN valores (Fabien Coelho)
- Revisión contrib/pgbench el progreso de registro para evitar el desbordamiento cuando el factor de escala es grande (Tatsuo Ishii)
- Revisión contrib/pg_stat_statement el manejo de CURRENT_DATE y construcciones relacionadas (Kyotaro Horiguchi)
- Mejorar la perdida de la conexión de manejo de errores en contrib/postgres_fdw (Tom Lane)
- Asegurarse de que el cliente-código de instalación de solo procedimiento funciona como documenta (Pedro Eisentraut)
- En Mingw y Cygwin construye, instala el libpq DLL en el directorio bin (Andrew Dunstan)
- Esto duplica lo que el MSVC ha hecho desde hace mucho. Que debería solucionar problemas con programas como psql no iniciar porque no puede encontrar el archivo DLL.
- Evitar el uso de la obsoleta dllwrap herramienta en Cygwin construye (Marco Atzeri)
- Permitir la construcción con Visual Studio 2013 (Brar Piening)
- No generar texto de HISTORIA y src/test/retroceder/archivos LÉAME (Tom Lane)
- Estos archivos de texto duplicado el principal HTML y PDF a formatos de documentación. La dificultad en el mantenimiento de ellos mucho mayor que la probabilidad de la audiencia de texto sin formato. La distribución de paquetes todavía contienen archivos con estos nombres, pero van a ser sólo los talones de dirigir al lector a consultar la documentación principal. El texto sin formato de archivo INSTALAR todavía se mantendrá, como no podría decirse que es un caso de uso para eso.
- Actualización de datos de zona horaria de archivos para tzdata liberación de 2013i para el horario de verano cambios de la ley en Jordania y cambios históricos en Cuba.
- Además, las zonas de Asia/Riyadh87, Asia/Riyadh88, y Asia/Riyadh89 se han eliminado, ya que no son mantenidos por la IANA, y nunca representados civil actual de cronometraje de la práctica.

Suscríbase a nuestro boletín

Manténgase al día con los últimos lanzamientos de software, noticias, descuentos de software, ofertas y más.

Suscribir