Notas del release IBM(R) DB2(R) Universal Database Notas del release Versión 7.2/Versión 7.1 FixPak 4 © Copyright International Business Machines Corporation. Reservados todos los derechos. Nota para los usuarios del gobierno de los EE.UU. -- Documentación relacionada con derechos restringidos. -- El uso, duplicación o divulgación están sujetos a las restricciones establecidas en el contrato GSA ADP Schedule con IBM Corporation. ------------------------------------------------------------------------ Contenido * Contenido * Prefacio ------------------------------------------------------------------------ Léame primero * Notas del producto o 1.1 CPU soportadas en DB2 Versión 7 para Solaris o 1.2 Arreglo de entorno local chino en Red Flag Linux o 1.3 Valor de entorno nacional adicional para DB2 para Linux en el entorno Linux en japonés y chino simplificado o 1.4 Problema del Centro de control de Microsoft Internet Explorer o 1.5 Pérdida de funcionalidad del Centro de control o 1.6 El CD de Netscape no se suministra con DB2 UDB o 1.7 Error en archivos readme de XML o 1.8 Nuevas mejoras en Business Intelligence en DB2 Versión 7.2 o 1.9 El FixPak 2A y posteriores ocasionan problemas en IBM DB2 OLAP Server * Notas para la documentación en línea (HTML, PDF y Búsqueda) o 2.1 Navegadores de la Web soportados en el sistema operativo Windows 2000 o 2.2 Búsqueda en la información en línea de DB2 en Solaris o 2.3 Conmutación de NetQuestion para OS/2 para utilizar TCP/IP o 2.4 Mensajes de error cuando se intenta ejecutar Netscape o 2.5 Requisito de configuración para Adobe Acrobat Reader en sistemas basados en UNIX o 2.6 La Consulta de SQL se proporciona en un archivo PDF ------------------------------------------------------------------------ Instalación y configuración * Información general sobre la instalación, migración y configuración o 3.1 Bajada de los paquetes de instalación para todos los clientes de DB2 soportados o 3.2 Nivel de parche necesario adicional para Solaris o 3.3 Soporte de directorios Netscape LDAP + 3.3.1 Ampliación del esquema de Netscape LDAP o 3.4 Instalación de DB2 en Windows 2000 o 3.5 Ejecución de DB2 bajo Windows 2000 Terminal Server, Modalidad de administración o 3.6 Soporte de Microsoft SNA Server y SNA Multisite Update (Confirmación en dos fases) o 3.7 Definir el ID de usuario y la contraseña en IBM Communications Server para Windows NT (CS/NT) + 3.7.1 Definición de nodo o 3.8 La instalación de DB2 puede colgarse si no hay conectada ninguna unidad extraíble o 3.9 Error SQL1035N al utilizar CLP en Windows 2000 o 3.10 Consecuencia de la migración con respecto a las vistas definidas con registros especiales o 3.11 Soporte del protocolo IPX/SPX en Windows 2000 o 3.12 Detención de los procesos de DB2 antes de actualizar una versión anterior de DB2 o 3.13 Ejecución de db2iupdt después de instalar DB2 si ya hay otro producto DB2 instalado o 3.14 Configuración del entorno Linux para ejecutar el Centro de control de DB2 o 3.15 DB2 Universal Database Enterprise Edition y DB2 Connect Enterprise Edition para Linux en S/390 o 3.16 Posible pérdida de datos en Linux para S/390 o 3.17 Integración de escritorios Gnome y KDE para DB2 en Linux o 3.18 DB2 Universal Database Enterprise - Extended Edition for UNIX Quick Beginnings o 3.19 Parámetro de kernel shmseg para HP-UX o 3.20 Migración de las bases de datos de control de IBM Visual Warehouse o 3.21 Migración de índices exclusivos mediante el mandato db2uiddl o 3.22 Error de instalación de la versión de 64 bits de AIX + 3.22.1 Utilización de la SMIT o 3.23 Errores durante la migración o 3.24 Activación de licencias de IBM(R) DB2(R) Connect + 3.24.1 Instalación de la clave de licencia y establecimiento del tipo de licencia utilizando el Centro de licencias + 3.24.2 Instalación de la clave de licencia y establecimiento del tipo de licencia utilizando el mandato db2licm + 3.24.3 Consideraciones sobre licencias para instalaciones distribuidas o 3.25 Acceso a las bases de datos de control del depósito o 3.26 Productos de prueba en los CD-ROM de UNIX Enterprise Edition o 3.27 Productos de prueba en los CD-ROM de UNIX de DB2 Connect Enterprise Edition o 3.28 Información del soporte de página de códigos e idioma - Corrección * Data Links Manager Guía rápida de iniciación o 4.1 Soporte en AIX 5.1 o 4.2 Falla el inicio de dlfm con el mensaje: "Error al obtener el afsfid para el prefijo" o 4.3 Establecimiento de la clase de Tivoli Storage Manager para archivos de archivar o 4.4 Requisitos de espacio de disco para DFS Client Enabler o 4.5 Supervisión de los procesos de componente de fondo de DB2 Data Links File Manager en AIX o 4.6 Instalación y configuración de DB2 Data Links Manager para AIX: Consideraciones adicionales sobre la instalación en entornos DCE-DFS o 4.7 El mandato "dlfm add_prefix" ha fallado o 4.8 En las raras ocasiones en que el daemon de copia no se detiene en dlfm stop o 4.9 Instalación y configuración de DB2 Data Links Manager para AIX: Instalación de DB2 Data Links Manager en AIX utilizando el programa de utilidad db2setup o 4.10 Instalación y configuración de DB2 Data Links Manager para AIX: Tarea posterior a la instalación de DCE-DFS o 4.11 Instalación y configuración de DB2 Data Links Manager para AIX: Instalación manual de DB2 Data Links Manager en AIX utilizando la Smit o 4.12 Instalación y configuración de DB2 Data Links Manager DFS Client Enabler o 4.13 Instalación y configuración de DB2 Data Links Manager para Solaris o 4.14 Privilegios del grupo del administrador en Data Links en Windows NT o 4.15 Minimizar el registro cronológico para la instalación de Data Links File System Filter (DLFF) + 4.15.1 Anotación cronológica de mensajes después de la instalación o 4.16 Restauración de DATALINK o 4.17 Descarte de Data Links Manager o 4.18 La desinstalación de los componentes de DLFM utilizando la SMIT puede eliminar catálogos de archivos adicionales o 4.19 Antes de empezar/determinar el nombre del sistema principal o 4.20 Trabajo con Data Links File Manager: Borrado después de descartar un DB2 Data Links Manager de una base de datos de DB2 o 4.21 Acción del usuario para la anomalía de dlfm client_conf o 4.22 DLFM1001E (Nuevo mensaje de error) o 4.23 Opción de archivo de configuración de puesta a punto DLFM o 4.24 Error al ejecutar el script de Data Links/DFS dmapp_prestart en AIX o 4.25 Integración de Tivoli Space Manager con Data Links + 4.25.1 Restricciones y limitaciones o 4.26 Capítulo 4. Instalación y configuración de DB2 Data Links Manager para AIX + 4.26.1 Consideraciones para la instalación + 4.26.1.1 Migración de DB2 File Manager Versión 5.2 a DB2 Data Links Manager Versión 7 o 4.27 Capítulo 6. Verificación de la instalación en AIX + 4.27.1 Soluciones temporales en entornos NFS * Suplemento de instalación y configuración o 5.1 Capítulo 5. Instalación de clientes DB2 en sistemas operativos UNIX + 5.1.1 Parámetros de configuración del kernel HP-UX o 5.2 Capítulo 12. Ejecución de sus propias aplicaciones + 5.2.1 Vinculación de programas de utilidad de bases de datos utilizando el Cliente de tiempo de ejecución + 5.2.2 Acceso de clientes UNIX a DB2 utilizando ODBC o 5.3 Capítulo 24. Configuración de un sistema federado para que acceder a varias fuentes de datos + 5.3.1 Sistemas federados + 5.3.2 Restricción + 5.3.3 Instalación de DB2 Relational Connect + 5.3.3.1 Instalación de DB2 Relational Connect en servidores Windows NT + 5.3.3.2 Instalación de DB2 Relational Connect en servidores UNIX o 5.4 Capítulo 26. Acceso a fuentes de datos Oracle + 5.4.1 Errores de la documentación o 5.5 Acceso a fuentes de datos Sybase (capítulo nuevo) + 5.5.1 Adición de fuentes de datos Sybase a un servidor federado + 5.5.1.1 Paso 1: Establecer las variables de entorno y actualizar el registro de perfiles + 5.5.1.2 Paso 2: Enlazar DB2 al software cliente de Sybase (sólo AIX y Solaris) + 5.5.1.3 Paso 3: Reciclar la instancia de DB2 + 5.5.1.4 Paso 4: Crear y configurar un archivo de interfaces + 5.5.1.5 Paso 5: Crear el reiniciador + 5.5.1.6 Paso 6: Opcional: Establecer la variable de entorno DB2_DJ_COMM + 5.5.1.7 Paso 7: Crear el servidor + 5.5.1.8 Opcional: Paso 8: Establecer la opción del servidor CONNECTSTRING + 5.5.1.9 Paso 9: Crear una correlación de usuario + 5.5.1.10 Paso 10: Crear apodos para tablas y vistas + 5.5.2 Especificación de páginas de códigos de Sybase o 5.6 Acceso a fuentes de datos Microsoft SQL Server mediante ODBC (capítulo nuevo) + 5.6.1 Adición de fuentes de datos Microsoft SQL Server a un servidor federado + 5.6.1.1 Paso 1: Establecer las variables de entorno (sólo en AIX) + 5.6.1.2 Paso 2: Ejecutar el script shell (sólo en AIX) + 5.6.1.3 Paso 3: Opcional: Establecer la variable de entorno DB2_DJ_COMM + 5.6.1.4 Paso 4: Reciclar la instancia de DB2 (sólo en AIX) + 5.6.1.5 Paso 5: Crear el reiniciador + 5.6.1.6 Paso 6: Crear el servidor + 5.6.1.7 Paso 7: Crear una correlación de usuario + 5.6.1.8 Paso 8: Crear apodos para tablas y vistas + 5.6.1.9 Paso 9: Opcional: Obtener rastreos de ODBC + 5.6.2 Revisión de páginas de códigos de Microsoft SQL Server o 5.7 Acceso a fuentes de datos Informix (capítulo nuevo) + 5.7.1 Adición de fuentes de datos Informix a un servidor federado + 5.7.1.1 Paso 1: Establecer las variables de entorno y actualizar el registro de perfiles + 5.7.1.2 Paso 2: Enlazar con el software de cliente Informix de DB2 + 5.7.1.3 Paso 3: Reciclar la instancia de DB2 + 5.7.1.4 Paso 4: Crear el archivo sqlhosts de Informix + 5.7.1.5 Paso 5: Crear el reiniciador + 5.7.1.6 Paso 6: Opcional: Establecer la variable de entorno DB2_DJ_COMM + 5.7.1.7 Paso 7: Crear el servidor + 5.7.1.8 Paso 8: Crear una correlación de usuario + 5.7.1.9 Paso 9: Crear apodos para tablas, vistas y sinónimos de Informix ------------------------------------------------------------------------ Administración * Administration Guide o 6.1 Actualización disponible * Guía de administración: Planificación o 7.1 Capítulo 8. Diseño físico de bases de datos + 7.1.1 Consideraciones sobre el diseño de espacios de tablas + 7.1.1.1 Optimización del rendimiento de los espacios de tablas cuando se colocan datos al asalto o 7.2 Apéndice D. Soporte de idioma nacional (NLS) + 7.2.1 Soporte de código de país/región y página de códigos: + 7.2.2 Consideraciones sobre la importación/exportación/carga -- Restricciones para las páginas de códigos 1394 y 5488 * Guía de administración: Rendimiento o 8.1 Esquemas de las tablas temporales del sistema o 8.2 Capítulo 8. Rendimiento operativo + 8.2.1 Agrupación de almacenamientos intermedios basada en bloques + 8.2.1.1 Ejemplos de agrupación de almacenamientos intermedios basada en bloques o 8.3 Capítulo 10. Ajuste de la configuración mediante la adición de procesadores + 8.3.1 Problemas al añadir nodos a una base de datos particionada o 8.4 Apéndice A. Variables de registro y de entorno de DB2 * Administering Satellites Guide and Reference o 9.1 Configuración de la Versión 7.2 de DB2 Personal Edition y DB2 Workgroup Edition como satélites + 9.1.1 Requisitos previos + 9.1.1.1 Consideraciones sobre la instalación + 9.1.2 Configuración del sistema Versión 7.2 para la sincronización + 9.1.3 Instalación del FixPak 2 o superior en un sistema Versión 6 Enterprise Edition + 9.1.3.1 Actualización de la Versión 6 de DB2 Enterprise Edition para utilizarlo como servidor de control de DB2 + 9.1.4 Actualización de una Versión 6 del Centro de control y del Centro de administración de satélites * Consulta de mandatos o 10.1 Actualización disponible o 10.2 db2updv7 - Actualizar la base de datos al nivel de arreglo actual de la versión 7 o 10.3 REBIND + Missing value o 10.4 db2inidb - Inicializar una base de datos reflejada * Data Recovery and High Availability Guide and Reference o 11.1 Data Recovery and High Availability Guide and Reference Available Online o 11.2 Nuevo comportamiento de la copia de seguridad y restauración cuando LOGRETAIN=CAPTURE o 11.3 Ahora, NEWLOGPATH2 se llama DB2_NEWLOGPATH2 o 11.4 Elección de un método de copia de seguridad para DB2 Data Links Manager en AIX o Solaris * Data Movement Utilities Guide and Reference o 12.1 Soporte de página de códigos para los programas de utilidad de importación, exportación y carga o 12.2 db2relocatedb (nuevo mandato) + db2relocatedb - Reubicar base de datos o 12.3 Capítulo 2. Importación + 12.3.1 Utilización de la importación con inserciones en almacenamiento intermedio o 12.4 Capítulo 3. Carga + 12.4.1 Estados de pendiente después de una operación de carga + 12.4.2 Limitaciones y restricciones de carga + 12.4.3 Modificador de tipo de archivo totalfreespace o 12.5 Capítulo 4. AutoLoader + 12.5.1 rexecd necesario para ejecutar AutoLoader cuando la autentificación se establece en YES o 12.6 AutoLoader puede colgarse durante un fork o 12.7 Apéndice C. Formatos de archivo de programa de utilidad de Exportación/Importación/Carga * Replication Guide and Reference o 13.1 Duplicación y servidores que no son IBM o 13.2 Duplicación en Windows 2000 o 13.3 Error conocido al guardar archivos de SQL o 13.4 Mantenimiento de DB2 o 13.5 Programa de utilidad de diferencia de datos en la Web o 13.6 Capítulo 3. Escenario de duplicación de datos + 13.6.1 Escenarios de duplicación o 13.7 Capítulo 5. Planificación de la duplicación + 13.7.1 Nombres de tabla y de columna + 13.7.2 Duplicación de DATALINK + 13.7.3 Restricciones de LOB + 13.7.4 Planificación de la duplicación o 13.8 Capítulo 6. Configuración del entorno de duplicación + 13.8.1 Requisito previo a una actualización en cualquier parte (update-anywhere) + 13.8.2 Configuración del entorno de duplicación o 13.9 Capítulo 8. Determinación de problemas o 13.10 Capítulo 9. Capture y Apply para AS/400 o 13.11 Capítulo 10. Capture y Apply para OS/390 + 13.11.1 Requisitos previos para DB2 DataPropagator para OS/390 + 13.11.2 Esquemas de codificación UNICODE y ASCII en OS/390 + 13.11.2.1 Elección de un esquema de codificación + 13.11.2.2 Establecimiento de esquemas de codificación o 13.12 Capítulo 11. Capture y Apply para plataformas UNIX + 13.12.1 Establecimiento de variables de entorno para Capture y Apply en UNIX y Windows o 13.13 Capítulo 14. Estructuras de tabla o 13.14 Capítulo 15. Mensajes de Capture y Apply o 13.15 Apéndice A. Inicio de los programas Capture y Apply desde dentro de una aplicación * System Monitor Guide and Reference o 14.1 db2ConvMonStream * Troubleshooting Guide o 15.1 Inicio de DB2 en Windows 95, Windows 98 y Windows ME cuando el usuario no tiene iniciada una sesión o 15.2 Capítulo 1. Buenas prácticas para la resolución de problemas + 15.2.1 Herramienta para analizar el problema y recopilar el entorno + 15.2.1.1 Salidas de la recopilación + 15.2.1.2 Visualización de detailed_system_info.html + 15.2.1.3 Visualización de la sintaxis de DB2 Support Tool de página en página o 15.3 Capítulo 2. Resolución de problemas de DB2 Universal Database Server o 15.4 Capítulo 8. Resolución de problemas de DB2 Data Links Manager * Utilización de DB2 Universal Database en plataformas de 64 bits o 16.1 Capítulo 5. Configuración + 16.1.1 LOCKLIST + 16.1.2 shmsys:shminfo_shmmax o 16.2 Capítulo 6. Restricciones * Administración y programación del expansor de XML * MQSeries o 18.1 Instalación y configuración de DB2 MQSeries Functions + 18.1.1 Instalación de MQSeries + 18.1.2 Instalación de AMI de MQSeries + 18.1.3 Habilitación de DB2 MQSeries Functions o 18.2 Estilos de gestión de mensajes de MQSeries o 18.3 Estructura de mensajes o 18.4 Visión general funcional de MQSeries + 18.4.1 Limitaciones + 18.4.2 Códigos de error o 18.5 Escenarios de aplicación + 18.5.1 Gestión básica de mensajes + 18.5.2 Envío de mensajes + 18.5.3 Recuperación de mensajes + 18.5.4 Conectividad de aplicación a aplicación + 18.5.4.1 Comunicaciones tipo petición y respuesta + 18.5.4.2 Publicación y suscripción o 18.6 enable_MQFunctions + enable_MQFunctions o 18.7 disable_MQFunctions + disable_MQFunctions ------------------------------------------------------------------------ Herramientas administrativas * Centro de control o 19.1 Posibilidad de administrar DB2 Server para servidores VSE y VM o 19.2 Soporte de Java 1.2 para el Centro de control o 19.3 Error "Atajo no válido" al utilizar la ayuda en línea en el sistema operativo Windows o 19.4 Los atajos del teclado no funcionan o 19.5 Centro de control Java en OS/2 o 19.6 Error "Acceso a archivo denegado" al intentar visualizar un trabajo completado en el Diario del sistema operativo Windows o 19.7 Multisite Update Test Connect o 19.8 Centro de control de DB2 para OS/390 o 19.9 Arreglo necesario del Centro de control para OS/390 o 19.10 Cambio en el diálogo Create Spatial Layer o 19.11 Información sobre resolución de problemas para el Centro de control de DB2 o 19.12 Resolución de problemas del Centro de control en sistemas basados en UNIX o 19.13 Posible problema de Infopops en OS/2 o 19.14 Ayuda para el parámetro de configuración jdk11_path o 19.15 Error del sistema Solaris (SQL10012N) al utilizar el Centro de Scripts o el Diario o 19.16 Ayuda para el archivo DPREPL.DFT o 19.17 Lanzamiento de más de un applet del Centro de control o 19.18 Ayuda en línea para el Centro de control al ejecutarlo como applet o 19.19 Ejecución del Centro de control en modalidad de applet (Windows 95) o 19.20 Cómo trabajar con resultados de consultas muy largos * Centro de información o 20.1 Error "Atajo no válido" en el sistema operativo Windows o 20.2 Apertura de enlaces externos de Web en Netscape Navigator cuando Netscape ya está abierto (sistemas basados en UNIX) o 20.3 Problemas al iniciar el Centro de información * Asistentes o 21.1 Establecimiento del tamaño de extensión en el Asistente para crear bases de datos o 21.2 Asistente MQSeries Assist o 21.3 Asistente OLE DB Assist ------------------------------------------------------------------------ Business Intelligence * Guía de aprendizaje de Business Intelligence o 22.1 Guía de aprendizaje de Business Intelligence revisada * DB2 Universal Database Quick Tour * Data Warehouse Center Administration Guide o 24.1 Actualización disponible o 24.2 Mejoras en el servidor de depósito o 24.3 Managing ETI.Extract(R) Conversion Programs con DB2 Warehouse Manager actualizados o 24.4 Importación y exportación de metadatos utilizando el intercambio de metadatos de depósito común (CWMI) + 24.4.1 Introducción + 24.4.2 Importación de metadatos + 24.4.3 Actualización de los metadatos después de ejecutar el programa de utilidad de importación + 24.4.4 Exportación de metadatos o 24.5 Programa de utilidad de importación/exportación de metadatos de lenguaje de códigos + 24.5.1 Definiciones de claves + 24.5.2 Planificaciones de pasos y procesos o 24.6 Información sobre pasos de SAP + 24.6.1 Retardo cuando se especifican parámetros de salida para un paso de SAP + 24.6.2 Los pasos de SAL comparten los valores de los parámetros de entrada + 24.6.3 Error de violación de acceso cuando se ejecuta un Paso de SAP o 24.7 Información sobre SAP Connector + 24.7.1 Restricciones en la instalación de SAP Connector + 24.7.2 Rendimiento de GetDetail BAPI * Kit de iniciación de DB2 OLAP o 25.1 Sitio Web de OLAP Server o 25.2 Niveles de servicio de sistemas operativos soportados o 25.3 Realización de la configuración del Kit de iniciación de DB2 OLAP en UNIX o 25.4 Configuración adicional para el Entorno operativo Solaris o 25.5 Configuración adicional para todos los sistemas operativos o 25.6 Configuración de ODBC para el Kit de iniciación de OLAP + 25.6.1 Configuración de fuentes de datos en sistemas UNIX + 25.6.1.1 Configuración de variables de entorno de ODBC + 25.6.1.2 Edición del archivo odbc.ini + 25.6.1.3 Adición de una fuente de datos a un archivo odbc.ini + 25.6.1.4 Ejemplo de valores de ODBC para DB2 + 25.6.1.5 Ejemplo de valores de ODBC para Oracle + 25.6.2 Configuración del Catálogo de metadatos de OLAP en sistemas UNIX + 25.6.3 Configuración de fuentes de datos en sistemas Windows + 25.6.4 Configuración del Catálogo de metadatos de OLAP en sistemas Windows + 25.6.5 Después de configurar una fuente de datos o 25.7 Inicio de una sesión desde el escritorio del Kit de iniciación de OLAP + 25.7.1 Ejemplo de inicio de sesión del Kit de iniciación o 25.8 Creación y configuración manual de las bases de datos de ejemplo para el Kit de iniciación de OLAP o 25.9 Migración de aplicaciones al Kit de iniciación de OLAP Versión 7.2 o 25.10 Problemas y limitaciones conocidos o 25.11 Falta de archivos EQD del Complemento de hoja de cálculo de OLAP * Information Catalog Manager Administration Guide o 26.1 Programa de utilidad Inicialización del Gestor de catálogos de información + 26.1.1 + 26.1.2 Temas sobre licencia + 26.1.3 Temas sobre la instalación o 26.2 Mejoras en el Gestor de catálogos de información o 26.3 Incompatibilidad entre Information Catalog Manager y Sybase en el entorno Windows o 26.4 Acceso a catálogos de información de DB2 Versión 5 con el Gestor de catálogos de información de DB2 Versión 7 o 26.5 Configuración de un Catálogo de información o 26.6 Intercambio de metadatos con otros productos o 26.7 Intercambio de metadatos utilizando el mandato flgnxoln o 26.8 Intercambio de metadatos utilizando el mandato MDISDGC o 26.9 Invocación de programas * Information Catalog Manager Programming Guide and Reference o 27.1 Códigos de razón del Gestor de catálogos de información * Information Catalog Manager User's Guide * Gestor de catálogos de información: Mensajes en línea o 29.1 Correcciones en los mensajes FLG + 29.1.1 Mensaje FLG0260E + 29.1.2 Mensaje FLG0051E + 29.1.3 Mensaje FLG0003E + 29.1.4 Mensaje FLG0372E + 29.1.5 Mensaje FLG0615E * Gestor de catálogos de información: Ayuda en línea o 30.1 Gestor de catálogos de información para la Web * DB2 Warehouse Manager Installation Guide o 31.1 Actualización disponible del manual DB2 Warehouse Manager Installation Guide o 31.2 Requisitos de software para transformadores de almacén de datos o 31.3 Conector para SAP R/3 + 31.3.1 Requisitos previos a la instalación o 31.4 Conector para la Web + 31.4.1 Requisitos previos a la instalación * Query Patroller Administration Guide o 32.1 El cliente de DB2 Query Patroller es un componente separado o 32.2 Migración desde la Versión 6 de DB2 Query Patroller utilizando dqpmigrate o 32.3 Habilitación de la Gestión de consultas o 32.4 Ubicación del espacio de tabla para tablas de control o 32.5 Nuevos parámetros para el mandato dqpstart o 32.6 Nuevo parámetro para el mandato iwm_cmd o 32.7 Nueva variable de registro: DQP_RECOVERY_INTERVAL o 32.8 Inicio del Administrador de consultas o 32.9 Administración de usuarios o 32.10 Creación de una cola de trabajos o 32.11 Utilización de la interfaz de línea de mandatos o 32.12 Notas sobre Query Enabler o 32.13 DB2 Query Patroller Tracker puede devolver una página de columnas en blanco o 32.14 Query Patroller y Herramientas de duplicación o 32.15 Mejora del rendimiento de Query Patroller o 32.16 Privilegio EXECUTE perdido para los usuarios de Query Patroller creados con la versión 6 o 32.17 Restricciones de Query Patroller o 32.18 Apéndice B. Resolución de problemas de clientes de DB2 Query Patroller ------------------------------------------------------------------------ Desarrollo de aplicaciones * Administrative API Reference o 33.1 db2ArchiveLog (nueva API) + db2ArchiveLog o 33.2 db2ConvMonStream o 33.3 db2DatabasePing (nueva API) + db2DatabasePing - Base de datos Ping o 33.4 db2HistData o 33.5 db2HistoryOpenScan o 33.6 db2XaGetInfo (nueva API) + db2XaGetInfo - Obtener información para el gestor de recursos o 33.7 db2XaListIndTrans (nueva API que reemplaza a sqlxphqr) + db2XaListIndTrans - Listar transacciones dudosas o 33.8 db2GetSnapshot - Obtener instantánea o 33.9 Forget Log Record o 33.10 sqlaintp - Obtener mensaje de error o 33.11 sqlbctcq - Cerrar consulta de contenedor de espacio de tabla o 33.12 sqleseti - Establecer información de cliente o 33.13 sqlubkp - Copia de seguridad de la base de datos o 33.14 sqlureot - Reorganizar tabla o 33.15 sqlurestore - Restaurar base de datos o 33.16 Error de documentación sobre el soporte de memoria compartida ampliada AIX (EXTSHM) o 33.17 SQLFUPD + 33.17.1 locklist o 33.18 SQLEDBDESC * Application Building Guide o 34.1 Actualización disponible * Application Development Guide o 35.1 Actualización disponible o 35.2 IBM OLE DB Provider para DB2 UDB * CLI Guide and Reference o 36.1 Vinculación de programas de utilidad de bases de datos utilizando el Cliente de tiempo de ejecución o 36.2 Utilización de SQL estático en aplicaciones de la CLI o 36.3 Limitaciones de perfil estático JDBC/ODBC/CLI o 36.4 Transformaciones de ADT o 36.5 Capítulo 1. Introducción a la CLI + 36.5.1 Diferencias entre la CLI de DB2 y el SQL incorporado o 36.6 Capítulo 3. Utilización de características avanzadas + 36.6.1 Cómo escribir aplicaciones de varias hebras + 36.6.2 Escritura de una aplicación Unicode de DB2 CLI + 36.6.2.1 Funciones de Unicode + 36.6.2.2 Tipos de datos nuevos y conversiones válidas + 36.6.2.3 Valor de palabra clave/parche obsoleto + 36.6.2.4 Literales en bases de datos Unicode + 36.6.2.5 Nuevas palabras clave de configuración de CLI + 36.6.3 Microsoft Transaction Server (MTS) como Supervisor de transacciones + 36.6.4 Cursores desplazables + 36.6.4.1 Soporte de cursor desplazable para OS/390 en el extremo del servidor + 36.6.5 Utilización de SQL compuesto + 36.6.6 Utilización de procedimientos almacenados + 36.6.6.1 Escritura de un procedimiento almacenado en CLI + 36.6.6.2 Procedimientos almacenados de CLI y vinculación automática o 36.7 Capítulo 4. Configuración de CLI/ODBC y ejecución de aplicaciones de ejemplo + 36.7.1 Palabras clave de configuración o 36.8 Capítulo 5. Funciones de CLI de DB2 + 36.8.1 SQLBindFileToParam - Vincular referencia de archivo LOB a parámetro de LOB + 36.8.2 SQLColAttribute -- Devolver un atributo de columna + 36.8.3 SQLGetInfo - Obtener información general + 36.8.4 SQLGetLength - Recuperar longitud del valor de una serie + 36.8.5 SQLNextResult - Asociar el conjunto de resultados siguiente con otro descriptor de contexto de sentencias + 36.8.5.1 Objetivo + 36.8.5.2 Sintaxis + 36.8.5.3 Argumentos de función + 36.8.5.4 Utilización + 36.8.5.5 Códigos de retorno + 36.8.5.6 Diagnósticos + 36.8.5.7 Restricciones + 36.8.5.8 Referencias + 36.8.6 SQLSetStmtAttr -- Establecer opciones relativas a una sentencia o 36.9 Apéndice C. DB2 CLI y ODBC + 36.9.1 Aplicaciones Unicode de ODBC + 36.9.1.1 Aplicaciones Unicode de ODBC frente a aplicaciones no Unicode de ODBC o 36.10 Apéndice D. Funciones escalares ampliadas + 36.10.1 Funciones de fecha y hora o 36.11 Apéndice K. Utilización del recurso de rastreo CLI/ODBC/JDBC de DB2 * Consulta de mensajes o 37.1 Actualización disponible * Consulta de SQL o 38.1 Actualización del manual Consulta de SQL disponible o 38.2 Ahora se soportan datos CLOB en funciones de MQSeries o 38.3 Capítulo 3. Elementos de lenguaje + 38.3.1 Promoción de tipos de datos + 38.3.2 Difusión entre tipos de datos + 38.3.3 Asignaciones y comparaciones + 38.3.3.1 Asignaciones de serie + 38.3.3.2 Comparaciones de series + 38.3.4 Normas para los tipos de datos de resultado + 38.3.4.1 Series de caracteres y de gráficos en una base de datos Unicode + 38.3.5 Normas para las conversiones de serie + 38.3.6 Expresiones + 38.3.6.1 Con el operador de concatenación + 38.3.7 Predicados o 38.4 Capítulo 4. Funciones + 38.4.1 Cómo habilitar las nuevas funciones y procedimientos + 38.4.2 Funciones escalares + 38.4.2.1 MQPUBLISH + 38.4.2.2 MQREADCLOB + 38.4.2.3 MQRECEIVECLOB + 38.4.2.4 MQSEND + 38.4.3 Funciones escalares y Unicode + 38.4.4 Funciones de tabla + 38.4.4.1 MQREADALLCLOB + 38.4.4.2 MQRECEIVEALLCLOB o 38.5 Capítulo 6. Sentencias de SQL + 38.5.1 Claves de índice mayores para bases de datos Unicode + 38.5.1.1 ALTER TABLE + 38.5.1.2 CREATE INDEX + 38.5.1.3 CREATE TABLE * Actualizaciones de Unicode o 39.1 Introducción + 39.1.1 Bases de datos y aplicaciones Unicode de DB2 + 39.1.2 Actualizaciones de documentación ------------------------------------------------------------------------ Conexión con sistemas principales * DB2 Connect User's Guide o 40.1 Aumento de la velocidad de transferencia de datos de DB2 Connect + 40.1.1 Bloques de consulta extra + 40.1.2 Window Scaling del RFC-1323 * Suplemento de conectividad o 41.1 Configuración del servidor de aplicaciones en un entorno VM o 41.2 Valores de PATCH1 y PATCH2 para configuración de CLI/ODBC/JDBC ------------------------------------------------------------------------ Información adicional * Información adicional o 42.1 DB2 Everywhere ahora es DB2 Everyplace o 42.2 Características de acceso de DB2 UDB Versión 7 + 42.2.1 Entrada por teclado y navegación + 42.2.1.1 Entrada por teclado + 42.2.1.2 Foco del teclado + 42.2.2 Características para visualización accesible + 42.2.2.1 Modalidad de alto contraste + 42.2.2.2 Valores de font + 42.2.2.3 No dependencia del color + 42.2.3 Indicaciones de alerta alternativas + 42.2.4 Compatibilidad con tecnologías de asistencia + 42.2.5 Documentación accesible o 42.3 Ratón necesario o 42.4 Intento de vinculación desde los resultados de Cliente de tiempo de ejecución de DB2 en un error "Archivos de vinculación no encontrados" o 42.5 Search Discovery o 42.6 Ventanas de memoria para HP-UX 11 o 42.7 Desinstalación de DB2 DFS Client Enabler o 42.8 Autentificación de cliente en Windows NT o 42.9 Restricciones para sistemas federados o 42.10 Limitaciones federadas con tablas particionadas MPP o 42.11 Restricción para DataJoiner o 42.12 Gestor de catálogos de información en hebreo para Windows NT o 42.13 El SPM de SNA de DB2 no se inicia después de rearrancar Windows o 42.14 Requisitos de la cuenta de servicio para DB2 en Windows NT y Windows 2000 o 42.15 Necesidad de confirmar todos los programas definidos por el usuario que se utilizarán en el Centro de depósito de datos (DWC) o 42.16 Gestión de la antememoria de la parte de cliente en Windows NT o 42.17 Life Sciences Data Connect - Nuevos reiniciadores o 42.18 Mejora de SQL Assist o 42.19 Ayuda para los mandatos de copia de seguridad y restauración o 42.20 "Warehouse Manager" debe ser "DB2 Warehouse Manager" ------------------------------------------------------------------------ Apéndices * Apéndice A. Avisos o A.1 Marcas registradas * Índice ------------------------------------------------------------------------ Prefacio ¡Bienvenido a DB2 Universal Database Versión 7.2! Nota: Establezca el font en monospace para ver mejor estas Notas del release. El sitio de Soporte de DB2 Universal Database y DB2 Connect se actualiza regularmente. Compruebe la dirección http://www.ibm.com/software/data/db2/udb/winos2unix/support para ver la información más actualizada. Este archivo contiene información acerca de los productos siguientes que no estaba disponible cuando se imprimieron los manuales de DB2: IBM DB2 Universal Database Personal Edition, Versión 7.2 IBM DB2 Universal Database Workgroup Edition, Versión 7.2 IBM DB2 Universal Database Enterprise Edition, Versión 7.2 IBM DB2 Data Links Manager, Versión 7.2 IBM DB2 Universal Database Enterprise - Extended Edition, Versión 7.2 IBM DB2 Query Patroller, Versión 7.2 IBM DB2 Personal Developer's Edition, Versión 7.2 IBM DB2 Universal Developer's Edition, Versión 7.2 IBM DB2 Data Warehouse Manager, Versión 7.2 IBM DB2 Relational Connect, Versión 7.2 Se proporciona un archivo separado de Notas del release, instalado como READCON.TXT, para los productos siguientes: IBM DB2 Connect Personal Edition, Versión 7.2 IBM DB2 Connect Enterprise Edition, Versión 7.2 Se dispone de documentación para el producto DB2 Life Sciences Data Connect, que se puede bajar, en el sitio de software de IBM: http://www.ibm.com/software/data/db2/lifesciencesdataconnect/library.html. Se dispone de información en línea sobre este producto en http://www.ibm.com/software/data/db2/lifesciencesdataconnect. Se han actualizado los manuales siguientes y los PDF más recientes están disponibles, para su bajada en línea, en http://www.ibm.com/software/data/db2/udb/winos2unix/support. La información contenida en estas notas es adicional a las consultas actualizadas. Toda la documentación actualizada también está disponible en CD. Se puede solicitar dicho CD a través del servicio de DB2 y utilizando el número de PTF U478862. Puede encontrar información sobre cómo entrar en contacto con el Servicio de DB2 en http://www.ibm.com/cgi-bin/db2www/data/db2/udb/winos2unix/support/help.d2w/report. Administration Guide Application Building Guide Application Development Guide Consulta de mandatos Data Recovery and High Availability Guide and Reference Data Warehouse Center Administration Guide Consulta de mensajes Consulta de SQL DB2 Warehouse Manager Installation Guide El manual Novedades contiene una visión general de algunas de las principales mejoras en DB2 de la Versión 7.2. Si no tiene la versión 7.2 del manual Novedades, la puede ver y bajar de http://www.ibm.com/software/data/db2/udb/winos2unix/support. Para conocer la información más reciente sobre la familia de productos DB2, obtenga una suscripción gratuita a la "Revista de DB2". La edición en línea de esta revista está disponible en http://www.db2mag.com; en este sitio también se indican las instrucciones para solicitar una suscripción. Nota: En estas Notas del release, cuando se hace referencia a Windows NT se incluye Windows 2000, a no ser que se especifique lo contrario. Nota: Una barra de revisión (|) en la parte izquierda de una página indica que la línea se ha añadido o modificado desde que se publicó por primera vez el manual Notas del release. ------------------------------------------------------------------------ Léame primero ------------------------------------------------------------------------ Notas del producto ------------------------------------------------------------------------ 1.1 CPU soportadas en DB2 Versión 7 para Solaris Las versiones de CPU anteriores a UltraSparc no están soportadas. ------------------------------------------------------------------------ 1.2 Arreglo de entorno local chino en Red Flag Linux Si está utilizando Red Flag Linux Server Versión 1.1 en chino simplificado, póngase en contacto con Red Flag para recibir el arreglo de entorno nacional de chino simplificado. Sin el arreglo de entorno nacional de chino simplificado para la Versión 1.1, DB2 no reconoce que la página de códigos del chino simplificado es 1386. ------------------------------------------------------------------------ 1.3 Valor de entorno nacional adicional para DB2 para Linux en el entorno Linux en japonés y chino simplificado Cuando se desea utilizar las herramientas de la GUI de Java, se requiere un valor de entorno nacional adicional, como por ejemplo el Centro de control, en un sistema Linux en japonés o chino simplificado. Los caracteres en japonés y chino no se pueden visualizar correctamente sin este valor. Incluya el valor siguiente en el perfil de usuario o ejecútelo desde la línea de mandatos antes de cada invocación al Centro de control. Para un sistema en japonés: export LC_ALL=ja_JP Para un sistema en chino simplificado: export LC_ALL=zh_CN ------------------------------------------------------------------------ 1.4 Problema del Centro de control de Microsoft Internet Explorer Hay un problema provocado por los valores de las opciones de seguridad de Internet Explorer (IE). El Centro de control utiliza espacios no firmados, por tanto el gestor de seguridad inhabilita el acceso a la información del sistema. Para eliminar este problema, reconfigure las opciones de seguridad de IE de la forma siguiente: 1. Seleccione Opciones de Internet en el menú Ver (IE4) o en el menú Herramientas (IE5). 2. En la página Seguridad, seleccione Sitios de confianza. 3. Pulse Agregar sitios.... 4. Añada el servidor de Web del Centro de control a la lista de sitios de confianza. Si el servidor de Web del Centro de control está en el mismo dominio, puede serle útil añadir sólo el nombre del servicio de Web (sin el nombre de dominio). Por ejemplo: http://ccWebServer.ccWebServerDomain http://ccWebServer Nota: Cuando entre el URL, debe utilizar el prefijo https:// o deseleccionar la opción Se requiere verificación del servidor (https:) para todas las ubicaciones de esta zona para poder añadir la ubicación 5. Pulse en Aceptar. 6. Pulse Configuración...(IE4) o bien Personalizar nivel... (IE5).. 7. Desplácese a Java --> Permisos de Java y seleccione Personalizada. 8. Pulse Configuración de Java personal.... 9. Seleccione la página Editar permisos. 10. Desplácese hacia abajo hasta Contenido sin firmar --> Ejecutar el contenido sin firmar --> Permisos adicionales sin firmar --> Información del sistema y seleccione Activar. 11. Pulse Aceptar en cada ventana abierta. ------------------------------------------------------------------------ 1.5 Pérdida de funcionalidad del Centro de control La aplicación del FixPak 2 a un servidor DB2 no debería provocar problemas a los clientes del Centro de control de nivel inferior. Sin embargo, en DB2 Versión 7.2, los clientes del Centro de control de nivel inferior pierden casi toda la funcionalidad. En este caso por nivel inferior se hace referencia a cualquier cliente de la Versión 6 anterior al FixPak 6 y a cualquier cliente de la Versión 7 anterior al FixPak 2. Los clientes de la Versión 5 no se ven afectados. El arreglo sugerido consiste en actualizar los clientes afectados. Los clientes de la Versión 6 deberían actualizarse al FixPak 6 o posterior y los clientes de la Versión 7 deberían actualizarse al FixPak 2 o posterior. ------------------------------------------------------------------------ 1.6 El CD de Netscape no se suministra con DB2 UDB El CD de Netscape ya no se suministra con DB2 UDB. Los productos Netscape están disponibles en http://www.netscape.com. ------------------------------------------------------------------------ 1.7 Error en archivos readme de XML El archivo README.TXT correspondiente a DB2 XML Extender Versión 7.1 indica lo siguiente bajo "Consideraciones": 3. La versión por omisión de DB2 UDB es DB2 UDB Versión 7.1. Si desea utilizar DB2 UDB Versión 6.1 en AIX y Solaris, debe asegurarse de que está trabajando con una instancia de DB2 UDB V6.1 y con las bibliotecas de DB2 UDB V6.1. Esto es incorrecto. DB2 XML Extender sólo recibe soporte con DB2 Versión 7.1 y 7.2. Los archivos readme.aix, readme.nt y readme.sun listan los siguientes Requisitos de software: * DB2 UDB 6.1 con FP1_U465423 o superior (AIX) * DB2 Universal Database Versión 6.1 o superior con el FixPak 3 instalado (NT) * DB2 UDB Versión 6.1 con el FixPak FP1_U465424 o superior (Sun) Esto es incorrecto. DB2 XML Extender necesita DB2 Versión 7.1 ó 7.2. ------------------------------------------------------------------------ 1.8 Nuevas mejoras en Business Intelligence en DB2 Versión 7.2 En el manual Novedades de la Versión 7.2 y en otra documentación, se hace referencia a nuevas mejoras en Business Intelligence que se han añadido en la Versión 7.2. Estas mejoras estarán disponibles más adelante. ------------------------------------------------------------------------ 1.9 El FixPak 2A y posteriores ocasionan problemas en IBM DB2 OLAP Server Si utiliza IBM DB2 OLAP Server en UNIX, es posible que surjan problemas con DB2 OLAP Server después de instalar el FixPak 2A de DB2 Universal Database V7. El FixPak 2A, y los FixPak posteriores, instalan nuevos controladores ODBC que soportan UNICODE, pero DB2 OLAP Server no soporta estos nuevos controladores. La solución temporal de DB2 OLAP Server consiste en conmutar los archivos ODBC de forma que apunten a los controladores ODBC que no son UNICODE. Se ha cambiado el nombre de los controladores no UNICODE, añadiéndoles "_36". Por ejemplo, para Solaris, el nombre del controlador libdb2.so se ha cambiado por libdb2_36.so. Para obtener más información sobre cómo cambiar los controladores ODBC, consulte el apartado "Loading and Configuring ODBC for the SQL Interface" del capítulo 4, "Installing on AIX, Solaris Operating Environment, and HP-UX," de la publicación OLAP Setup and User's Guide. ------------------------------------------------------------------------ Notas para la documentación en línea (HTML, PDF y Búsqueda) ------------------------------------------------------------------------ 2.1 Navegadores de la Web soportados en el sistema operativo Windows 2000 Le recomendamos utilizar Microsoft Internet Explorer en Windows 2000. Si utiliza Netscape, tenga presente lo siguiente: * Las búsquedas en la información en línea de DB2 pueden tardar mucho en finalizar en Windows 2000 si se utiliza Netscape. Netscape utilizará todos los recursos de la CPU disponibles y parecerá que se ejecuta indefinidamente. Le recomendamos cambiar el enfoque pulsando sobre otra ventana después de someter la búsqueda mientras espera el resultado de la misma. Así, dicho resultado se obtendrá en un período de tiempo razonable. * Puede observar que, cuando se solicita ayuda, ésta se visualiza correctamente en una ventana del navegador Netscape, sin embargo, si se deja la ventana del navegador abierta y, más adelante, se solicita ayuda de una parte distinta del Centro de control, no cambia nada en el navegador. Si cierra la ventana del navegador y vuelve a solicitar ayuda, aparecerá la ayuda correcta. Puede resolver este problema siguiendo los pasos indicados en el apartado 2.4, Mensajes de error cuando se intenta ejecutar Netscape. También puede eludir el problema cerrando la ventana del navegador antes de solicitar ayuda para el Centro de control. * Cuando se solicita ayuda del Centro de control o un tema del Centro de información, se puede recibir un mensaje de error. Para resolverlo, siga los pasos indicados en el apartado 2.4, Mensajes de error cuando se intenta ejecutar Netscape. ------------------------------------------------------------------------ 2.2 Búsqueda en la información en línea de DB2 en Solaris Si tiene problemas al buscar en la información en línea de DB2 en Solaris, compruebe los parámetros del kernel del sistema en /etc/system. A continuación se proporcionan los parámetros de kernel mínimos necesarios para el sistema de búsqueda de DB2, NetQuestion: semsys:seminfo_semmni 256 semsys:seminfo_semmap 258 semsys:seminfo_semmns 512 semsys:seminfo_semmnu 512 semsys:seminfo_semmsl 50 shmsys:shminfo_shmmax 6291456 shmsys:shminfo_shmseg 16 shmsys:shminfo_shmmni 300 Para establecer un parámetro de kernel, añada una línea al final de /etc/system tal como se muestra a continuación: set = valor Debe rearrancar el sistema para que entre en vigor cualquier valor cambiado o nuevo. ------------------------------------------------------------------------ 2.3 Conmutación de NetQuestion para OS/2 para utilizar TCP/IP Las instrucciones para conmutar NetQuestion de modo que utilice TCP/IP en sistemas OS/2 están incompletas. La ubicación de los archivos *.cfg mencionados en dichas instrucciones es el subdirectorio de datos del directorio de instalación de NetQuestion. Se puede determinar el directorio de instalación de NetQuestion entrando uno de los mandatos siguientes: echo %IMNINSTSRV% //para instalaciones SBCS echo %IMQINSTSRV% //para instalaciones DBCS ------------------------------------------------------------------------ 2.4 Mensajes de error cuando se intenta ejecutar Netscape Si se le presenta los siguientes mensajes de error al intentar ejecutar Netscape: No se encuentra el archivo (o uno de sus componentes). Asegúrese que la vía de acceso y el nombre de archivo sean correctos y que estén disponibles todas las bibliotecas necesarias. No se puede abrir "D:\Archivos de programa\SQLLIB\CC\..\doc\html\db2help\XXXXX.htm" debe llevar a cabo los pasos siguientes para corregir este problema en Windows NT, 95 ó 98 (vea más adelante lo que debe hacer en Windows 2000): 1. En el menú Inicio, seleccione Programas --> Explorador de Windows. Se abrirá Explorador de Windows. 2. En Explorador de Windows, seleccione Ver --> Opciones. Se abrirá el cuaderno Opciones de carpeta. 3. Pulse la pestaña Tipos de archivo. Se abre la página Tipos de archivo. 4. Resalte Documento de hipertexto Netscape en el campo Tipos de archivo registrados y pulse Editar. Se abre la ventana Editar tipo de archivo. 5. Resalte "Abrir" en el campo Acciones. 6. Pulse el botón Editar. Se abre la ventana Acción de edición para tipo. 7. Deseleccione el recuadro de selección Utilizar DDE. 8. En el campo Aplicación utilizada para realizar la acción, asegúrese de que aparece "%1" en el mismo final de la serie (incluya las comillas y un espacio en blanco delante de la primera comilla). Si encuentra los mensajes en Windows 2000, debe realizar los pasos siguientes: 1. En el menú Inicio, seleccione Explorador de Windows. Se abrirá Explorador de Windows. 2. En Explorador de Windows, seleccione Herramientas --> Opciones de carpeta. Se abrirá el cuaderno Opciones de carpeta. 3. Pulse la pestaña Tipos de archivo. 4. En la página Tipos de archivo, en el campo Tipos de archivo registrados, resalte: Documento de hipertexto Netscape HTM y pulse Opciones avanzadas. Se abre la ventana Modificar tipo de archivo. 5. Resalte "open" en el campo Acciones. 6. Pulse el botón Editar. Se abre la ventana Acción de edición para este tipo. 7. Deseleccione el recuadro de selección Utilizar DDE. 8. En el campo Aplicación utilizada para realizar la acción, asegúrese de que aparece "%1" en el mismo final de la serie (incluya las comillas y un espacio en blanco delante de la primera comilla). 9. Pulse en Aceptar. 10. Repita los pasos 4 a 8 para los tipos de archivo Documento de hipertexto Netscape HTML y Documento de hipertexto Netscape SHTML. ------------------------------------------------------------------------ 2.5 Requisito de configuración para Adobe Acrobat Reader en sistemas basados en UNIX Acrobat Reader a menudo se ofrece en inglés en plataformas basadas en UNIX y se pueden devolver errores si se intentan abrir archivos PDG con entornos nacionales de idiomas distintos del inglés. Estos errores sugieren que existen problemas de acceso o extracción de font en el archivo PDF, pero en realidad se deben a que Acrobat Reader en inglés no puede funcionar correctamente con un entorno nacional de idioma que no sea inglés en UNIX. Para ver estos archivos PDF, conmute al entorno nacional inglés realizando uno de los pasos siguientes antes de ejecutar Acrobat Reader en inglés: * Edite el script de ejecución de Acrobat Reader, añadiendo la línea siguiente después de la sentencia #!/bin/sh del archivo de script de ejecución: LANG=C;export LANG Con este paso asegurará el funcionamiento correcto cuando otras aplicaciones, tales como el Navegador Netscape, o un menú de ayuda de aplicación utilicen Acrobat Reader. * Entre LANG=C en el indicador de mandatos para establecer el entorno de aplicación de Acrobat Reader en inglés. Para obtener más información, póngase en contacto con Adobe Systems (http://www.Adobe.com). ------------------------------------------------------------------------ 2.6 La Consulta de SQL se proporciona en un archivo PDF El apéndice "Utilización de la biblioteca DB2" de cada manual indica que el manual Consulta de SQL está disponible en formato PDF en dos volúmenes separados. Esta información no es correcta. Aunque el manual impreso aparece en dos volúmenes y los dos números de formulario correspondientes son correctos, sólo existe un archivo PDF y contiene los dos volúmenes. El nombre de archivo PDF es db2s0x70. ------------------------------------------------------------------------ Instalación y configuración Tabla de contenido parcial * Información general sobre la instalación, migración y configuración o 3.1 Bajada de los paquetes de instalación para todos los clientes de DB2 soportados o 3.2 Nivel de parche necesario adicional para Solaris o 3.3 Soporte de directorios Netscape LDAP + 3.3.1 Ampliación del esquema de Netscape LDAP o 3.4 Instalación de DB2 en Windows 2000 o 3.5 Ejecución de DB2 bajo Windows 2000 Terminal Server, Modalidad de administración o 3.6 Soporte de Microsoft SNA Server y SNA Multisite Update (Confirmación en dos fases) o 3.7 Definir el ID de usuario y la contraseña en IBM Communications Server para Windows NT (CS/NT) + 3.7.1 Definición de nodo o 3.8 La instalación de DB2 puede colgarse si no hay conectada ninguna unidad extraíble o 3.9 Error SQL1035N al utilizar CLP en Windows 2000 o 3.10 Consecuencia de la migración con respecto a las vistas definidas con registros especiales o 3.11 Soporte del protocolo IPX/SPX en Windows 2000 o 3.12 Detención de los procesos de DB2 antes de actualizar una versión anterior de DB2 o 3.13 Ejecución de db2iupdt después de instalar DB2 si ya hay otro producto DB2 instalado o 3.14 Configuración del entorno Linux para ejecutar el Centro de control de DB2 o 3.15 DB2 Universal Database Enterprise Edition y DB2 Connect Enterprise Edition para Linux en S/390 o 3.16 Posible pérdida de datos en Linux para S/390 o 3.17 Integración de escritorios Gnome y KDE para DB2 en Linux o 3.18 DB2 Universal Database Enterprise - Extended Edition for UNIX Quick Beginnings o 3.19 Parámetro de kernel shmseg para HP-UX o 3.20 Migración de las bases de datos de control de IBM Visual Warehouse o 3.21 Migración de índices exclusivos mediante el mandato db2uiddl o 3.22 Error de instalación de la versión de 64 bits de AIX + 3.22.1 Utilización de la SMIT o 3.23 Errores durante la migración o 3.24 Activación de licencias de IBM(R) DB2(R) Connect + 3.24.1 Instalación de la clave de licencia y establecimiento del tipo de licencia utilizando el Centro de licencias + 3.24.2 Instalación de la clave de licencia y establecimiento del tipo de licencia utilizando el mandato db2licm + 3.24.3 Consideraciones sobre licencias para instalaciones distribuidas o 3.25 Acceso a las bases de datos de control del depósito o 3.26 Productos de prueba en los CD-ROM de UNIX Enterprise Edition o 3.27 Productos de prueba en los CD-ROM de UNIX de DB2 Connect Enterprise Edition o 3.28 Información del soporte de página de códigos e idioma - Corrección * Data Links Manager Guía rápida de iniciación o 4.1 Soporte en AIX 5.1 o 4.2 Falla el inicio de dlfm con el mensaje: "Error al obtener el afsfid para el prefijo" o 4.3 Establecimiento de la clase de Tivoli Storage Manager para archivos de archivar o 4.4 Requisitos de espacio de disco para DFS Client Enabler o 4.5 Supervisión de los procesos de componente de fondo de DB2 Data Links File Manager en AIX o 4.6 Instalación y configuración de DB2 Data Links Manager para AIX: Consideraciones adicionales sobre la instalación en entornos DCE-DFS o 4.7 El mandato "dlfm add_prefix" ha fallado o 4.8 En las raras ocasiones en que el daemon de copia no se detiene en dlfm stop o 4.9 Instalación y configuración de DB2 Data Links Manager para AIX: Instalación de DB2 Data Links Manager en AIX utilizando el programa de utilidad db2setup o 4.10 Instalación y configuración de DB2 Data Links Manager para AIX: Tarea posterior a la instalación de DCE-DFS o 4.11 Instalación y configuración de DB2 Data Links Manager para AIX: Instalación manual de DB2 Data Links Manager en AIX utilizando la Smit o 4.12 Instalación y configuración de DB2 Data Links Manager DFS Client Enabler o 4.13 Instalación y configuración de DB2 Data Links Manager para Solaris o 4.14 Privilegios del grupo del administrador en Data Links en Windows NT o 4.15 Minimizar el registro cronológico para la instalación de Data Links File System Filter (DLFF) + 4.15.1 Anotación cronológica de mensajes después de la instalación o 4.16 Restauración de DATALINK o 4.17 Descarte de Data Links Manager o 4.18 La desinstalación de los componentes de DLFM utilizando la SMIT puede eliminar catálogos de archivos adicionales o 4.19 Antes de empezar/determinar el nombre del sistema principal o 4.20 Trabajo con Data Links File Manager: Borrado después de descartar un DB2 Data Links Manager de una base de datos de DB2 o 4.21 Acción del usuario para la anomalía de dlfm client_conf o 4.22 DLFM1001E (Nuevo mensaje de error) o 4.23 Opción de archivo de configuración de puesta a punto DLFM o 4.24 Error al ejecutar el script de Data Links/DFS dmapp_prestart en AIX o 4.25 Integración de Tivoli Space Manager con Data Links + 4.25.1 Restricciones y limitaciones o 4.26 Capítulo 4. Instalación y configuración de DB2 Data Links Manager para AIX + 4.26.1 Consideraciones para la instalación + 4.26.1.1 Migración de DB2 File Manager Versión 5.2 a DB2 Data Links Manager Versión 7 o 4.27 Capítulo 6. Verificación de la instalación en AIX + 4.27.1 Soluciones temporales en entornos NFS * Suplemento de instalación y configuración o 5.1 Capítulo 5. Instalación de clientes DB2 en sistemas operativos UNIX + 5.1.1 Parámetros de configuración del kernel HP-UX o 5.2 Capítulo 12. Ejecución de sus propias aplicaciones + 5.2.1 Vinculación de programas de utilidad de bases de datos utilizando el Cliente de tiempo de ejecución + 5.2.2 Acceso de clientes UNIX a DB2 utilizando ODBC o 5.3 Capítulo 24. Configuración de un sistema federado para que acceder a varias fuentes de datos + 5.3.1 Sistemas federados + 5.3.2 Restricción + 5.3.3 Instalación de DB2 Relational Connect + 5.3.3.1 Instalación de DB2 Relational Connect en servidores Windows NT + 5.3.3.2 Instalación de DB2 Relational Connect en servidores UNIX o 5.4 Capítulo 26. Acceso a fuentes de datos Oracle + 5.4.1 Errores de la documentación o 5.5 Acceso a fuentes de datos Sybase (capítulo nuevo) + 5.5.1 Adición de fuentes de datos Sybase a un servidor federado + 5.5.1.1 Paso 1: Establecer las variables de entorno y actualizar el registro de perfiles + 5.5.1.2 Paso 2: Enlazar DB2 al software cliente de Sybase (sólo AIX y Solaris) + 5.5.1.3 Paso 3: Reciclar la instancia de DB2 + 5.5.1.4 Paso 4: Crear y configurar un archivo de interfaces + 5.5.1.5 Paso 5: Crear el reiniciador + 5.5.1.6 Paso 6: Opcional: Establecer la variable de entorno DB2_DJ_COMM + 5.5.1.7 Paso 7: Crear el servidor + 5.5.1.8 Opcional: Paso 8: Establecer la opción del servidor CONNECTSTRING + 5.5.1.9 Paso 9: Crear una correlación de usuario + 5.5.1.10 Paso 10: Crear apodos para tablas y vistas + 5.5.2 Especificación de páginas de códigos de Sybase o 5.6 Acceso a fuentes de datos Microsoft SQL Server mediante ODBC (capítulo nuevo) + 5.6.1 Adición de fuentes de datos Microsoft SQL Server a un servidor federado + 5.6.1.1 Paso 1: Establecer las variables de entorno (sólo en AIX) + 5.6.1.2 Paso 2: Ejecutar el script shell (sólo en AIX) + 5.6.1.3 Paso 3: Opcional: Establecer la variable de entorno DB2_DJ_COMM + 5.6.1.4 Paso 4: Reciclar la instancia de DB2 (sólo en AIX) + 5.6.1.5 Paso 5: Crear el reiniciador + 5.6.1.6 Paso 6: Crear el servidor + 5.6.1.7 Paso 7: Crear una correlación de usuario + 5.6.1.8 Paso 8: Crear apodos para tablas y vistas + 5.6.1.9 Paso 9: Opcional: Obtener rastreos de ODBC + 5.6.2 Revisión de páginas de códigos de Microsoft SQL Server o 5.7 Acceso a fuentes de datos Informix (capítulo nuevo) + 5.7.1 Adición de fuentes de datos Informix a un servidor federado + 5.7.1.1 Paso 1: Establecer las variables de entorno y actualizar el registro de perfiles + 5.7.1.2 Paso 2: Enlazar con el software de cliente Informix de DB2 + 5.7.1.3 Paso 3: Reciclar la instancia de DB2 + 5.7.1.4 Paso 4: Crear el archivo sqlhosts de Informix + 5.7.1.5 Paso 5: Crear el reiniciador + 5.7.1.6 Paso 6: Opcional: Establecer la variable de entorno DB2_DJ_COMM + 5.7.1.7 Paso 7: Crear el servidor + 5.7.1.8 Paso 8: Crear una correlación de usuario + 5.7.1.9 Paso 9: Crear apodos para tablas, vistas y sinónimos de Informix ------------------------------------------------------------------------ Información general sobre la instalación, migración y configuración ------------------------------------------------------------------------ 3.1 Bajada de los paquetes de instalación para todos los clientes de DB2 soportados Para bajar los paquetes de instalación para todos los clientes de DB2 soportados, que incluyen todos los clientes de las versiones anteriores a la Versión 7, conéctese al sitio Web IBM DB2 Client Application Enabler Pack en http://www-4.ibm.com/cgi-bin/db2www/data/db2/udb/winos2unix/support/download.d2w/report. ------------------------------------------------------------------------ 3.2 Nivel de parche necesario adicional para Solaris DB2 Universal Database Versión 7 para Solaris Versión 2.6 necesita el parche 106285-02 o superior, además de los parches que se mencionan en el manual DB2 para UNIX Guía rápida de iniciación. ------------------------------------------------------------------------ 3.3 Soporte de directorios Netscape LDAP El nivel de Netscape LDAP Server soportado es v4.12 ó 2 posteriores. 3.3.1 Ampliación del esquema de Netscape LDAP El Netscape Directory Server permite que las aplicaciones amplíen el esquema añadiendo definiciones de atributos y clases de objetos a los dos archivos siguientes, slapd.user_oc.conf y slapd.user_at.conf. Estos dos archivos están ubicados en el directorio \slapd-\config. Los atributos de DB2 se deben añadir a slapd.user_at.conf del modo siguiente: ############################################################################ # # IBM DB2 Universal Database V7.2 # Attribute Definitions # ############################################################################ attribute binProperty 1.3.18.0.2.4.305 bin attribute binPropertyType 1.3.18.0.2.4.306 cis attribute cesProperty 1.3.18.0.2.4.307 ces attribute cesPropertyType 1.3.18.0.2.4.308 cis attribute cisProperty 1.3.18.0.2.4.309 cis attribute cisPropertyType 1.3.18.0.2.4.310 cis attribute propertyType 1.3.18.0.2.4.320 cis attribute systemName 1.3.18.0.2.4.329 cis attribute db2nodeName 1.3.18.0.2.4.419 cis attribute db2nodeAlias 1.3.18.0.2.4.420 cis attribute db2instanceName 1.3.18.0.2.4.428 cis attribute db2Type 1.3.18.0.2.4.418 cis attribute db2databaseName 1.3.18.0.2.4.421 cis attribute db2databaseAlias 1.3.18.0.2.4.422 cis attribute db2nodePtr 1.3.18.0.2.4.423 dn attribute db2gwPtr 1.3.18.0.2.4.424 dn attribute db2additionalParameters 1.3.18.0.2.4.426 cis attribute db2ARLibrary 1.3.18.0.2.4.427 cis attribute db2authenticationLocation 1.3.18.0.2.4.425 cis attribute db2databaseRelease 1.3.18.0.2.4.429 cis attribute DCEPrincipalName 1.3.18.0.2.4.443 cis Las clases de objetos de DB2 se deben añadir al archivo slapd.user_oc.conf del modo siguiente: ############################################################################ # # IBM DB2 Universal Database V7.2 # Object Class Definitions # ############################################################################ objectclass eProperty oid 1.3.18.0.2.6.90 requires objectClass allows cn, propertyType, binProperty, binPropertyType, cesProperty, cesPropertyType, cisProperty, cisPropertyType objectclass eApplicationSystem oid 1.3.18.0.2.6.8 requires objectClass, systemName objectclass DB2Node oid 1.3.18.0.2.6.116 requires objectClass, db2nodeName allows db2nodeAlias, host, db2instanceName, db2Type, description, protocolInformation objectclass DB2Database oid 1.3.18.0.2.6.117 requires objectClass, db2databaseName, db2nodePtr allows db2databaseAlias, description, db2gwPtr, db2additionalParameters, db2authenticationLocation, DCEPrincipalName, db2databaseRelease, db2ARLibrary Después de añadir la definición del esquema de DB2, se debe reiniciar Directory Server para que se activen todos los cambios. ------------------------------------------------------------------------ 3.4 Instalación de DB2 en Windows 2000 En Windows 2000, cuando instale sobre una versión anterior de DB2 o cuando reinstale la versión actual, asegúrese de que todas las opciones de recuperación para todos los servicios de DB2 estén establecidas en "No realizar ninguna acción". ------------------------------------------------------------------------ 3.5 Ejecución de DB2 bajo Windows 2000 Terminal Server, Modalidad de administración Para DB2 UDB Versión 7.1, FixPak 3 y posterior, DB2 se puede ejecutar bajo Windows 2000 Terminal Server, Modalidad de administración. Antes de esta versión, no podía ejecutar DB2 bajo la sesión Cliente de Windows 2000 Terminal Server, Modalidad administración. ------------------------------------------------------------------------ 3.6 Soporte de Microsoft SNA Server y SNA Multisite Update (Confirmación en dos fases) Las aplicaciones de sistema principal y AS/400 no pueden acceder a servidores DB2 UDB utilizando la confirmación en dos fases de SNA cuando el producto SNA que se está utilizando es Microsoft SNA Server. Cualquier publicación de DB2 UDB que indique que se soporta esta circunstancia es incorrecta. Se requiere IBM Communications Server para Windows NT Versión 5.02 o posteriores. Nota: Las aplicaciones que acceden a servidores de bases de datos de sistema principal y AS/400 utilizando DB2 UDB para Windows pueden utilizar la confirmación en dos fases de SNA usando el Service Pack 3 de Microsoft SNA Server Versión 4 o posteriores. ------------------------------------------------------------------------ 3.7 Definir el ID de usuario y la contraseña en IBM Communications Server para Windows NT (CS/NT) Si utiliza APPC como protocolo de comunicaciones para clientes DB2 remotos para conectarse al servidor DB2 y si utiliza CS/NT como producto SNA, asegúrese de que las palabras clave siguientes estén definidas correctamente en el archivo de configuración de CS/NT. Este archivo normalmente se encuentra en el directorio x:\ibmcs\private. 3.7.1 Definición de nodo TG_SECURITY_BEHAVIOR Este parámetro permite al usuario determinar cómo debe manejar el nodo la información de seguridad presente en ATTACH si el TP no está configurado para seguridad IGNORE_IF_NOT_DEFINED Este parámetro permite al usuario determinar si hay presentes parámetros de seguridad en ATTACH e ignorarlos si el TP no está configurado para seguridad. Si utiliza IGNORE_IF_NOT_DEFINED, no es necesario definir un ID de usuario y una contraseña en CS/NT. VERIFY_EVEN_IF_NOT_DEFINED Este parámetro permite al usuario determinar si hay presentes parámetros de seguridad en ATTACH y verificarlos incluso si el TP no está configurado para seguridad. Éste es el valor por omisión. Si utiliza VERIFY_EVEN_IF_NOT_DEFINED, debe definir un ID de usuario y una contraseña en CS/NT. Para definir el ID de usuario y la contraseña en CS/NT, realice los pasos siguientes: 1. Inicio --> Programas --> IBM Communications Server --> Configuración de nodo SNA. Se abrirá la ventana Bienvenido a Configuración de Communications Server. 2. Elija el archivo de configuración que desee modificar. Pulse Siguiente. Se abrirá la ventana Elegir un escenario de configuración. 3. Resalte CPI-C, APPC o Emulación 5250. Pulse Finalizar. Se abrirá la ventana Nodo SNA de Communications Server. 4. Pulse el [+] junto a CPI-C y APPC. 5. Pulse el [+] junto a Seguridad de LU6.2. 6. Pulse el botón derecho del ratón en Contraseñas de usuario y seleccione Crear. Se abrirá la ventana Definir ID de usuario y contraseña. 7. Rellene el ID de usuario y la contraseña. Pulse en Aceptar. Pulse Finalizar para aceptar los cambios. ------------------------------------------------------------------------ 3.8 La instalación de DB2 puede colgarse si no hay conectada ninguna unidad extraíble Durante la instalación de DB2, la instalación puede quedarse colgada después de seleccionar el tipo de instalación cuando se utiliza un sistema con una unidad extraíble que no esté conectada. Para solucionar este problema, ejecute setup, especificando la opción -a: setup.exe -a ------------------------------------------------------------------------ 3.9 Error SQL1035N al utilizar CLP en Windows 2000 Si DB2 está instalado en un directorio al que sólo algunos usuarios (por ejemplo, administradores) tienen acceso de grabación, un usuario normal puede recibir el error SQL1035N al intentar utilizar el procesador de línea de mandatos de DB2. Para solucionar este problema, DB2 debe instalarse en un directorio al que tengan acceso de grabación todos los usuarios. ------------------------------------------------------------------------ 3.10 Consecuencia de la migración con respecto a las vistas definidas con registros especiales Las vistas pasan a ser no utilizables después de una migración de base de datos si se utiliza el registro especial CURRENT SCHEMA para definir una columna de vista. Por ejemplo: create view v1 (c1) as values user En la Versión 5, USER y CURRENT SCHEMA eran del tipo de datos CHAR(8), pero desde la Versión 6, se han definido como VARCHAR(128). En este ejemplo, el tipo de datos para la columna c1 es CHAR si la vista se crea en la Versión 5 y seguirá siendo CHAR después de la migración de base de datos. Cuando la vista se utilice después de la migración, se compilará en el tiempo de ejecución, pero fallará porque el tipo de datos no coincidirá. La solución consiste en eliminar la vista y volverla a crear. Antes de desactivar la vista, capture la sintaxis utilizada para crearla consultando la vista de catálogo de SYSCAT.VIEWS. Por ejemplo: select text from syscat.views where viewname='<>' ------------------------------------------------------------------------ 3.11 Soporte del protocolo IPX/SPX en Windows 2000 Esta información hace referencia al capítulo sobre planificación de la instalación del manual Guía rápida de iniciación, en la sección denominada "Posibles escenarios de conectividad entre cliente y servidor". El diagrama de soporte de protocolos publicado no es totalmente correcto. No se soporta un cliente Windows 2000 conectado a cualquier servidor OS/2 o basado en UNIX mediante IPX/SPX. Asimismo, no se soporta ningún cliente OS/2 o basado en UNIX conectado a un servidor Windows 2000 mediante IPX/SPX. ------------------------------------------------------------------------ 3.12 Detención de los procesos de DB2 antes de actualizar una versión anterior de DB2 Esta información hace referencia a la información sobre migración del manual DB2 para Windows Guía rápida de iniciación. Si se está realizando una actualización de una versión anterior de DB2 que se está ejecutando en la máquina Windows, el programa de instalación proporciona un aviso que contiene una lista de los procesos que retienen DLL de DB2 en la memoria. En este punto, el usuario tiene la posibilidad de detener manualmente los procesos que aparecen en dicha lista, o bien puede dejar que el programa de instalación concluya dichos procesos de forma automática. Es aconsejable detener manualmente todos los procesos de DB2 antes de realizar la instalación, a fin de evitar una pérdida de datos. La mejor manera de asegurarse de que no se esté ejecutando ningún proceso de DB2 consiste en visualizar los procesos del sistema mediante el panel Servicios de Windows. En dicho panel, asegúrese de que no haya ningún servicio de DB2, de OLAP ni de Depósito de datos en ejecución. Nota: En un momento dado sólo puede haber una versión de DB2 ejecutándose en plataformas Windows. Por ejemplo, no se puede tener DB2 Versión 7 y DB2 Versión 6 ejecutándose en la misma máquina Windows. Si se instala DB2 Versión 7 en una máquina en la que ya está instalado DB2 Versión 6, el programa de instalación suprimirá DB2 Versión 6 durante la instalación. Para obtener más información sobre cómo migrar desde versiones anteriores de DB2, consulte el manual Guía rápida de iniciación adecuado. ------------------------------------------------------------------------ 3.13 Ejecución de db2iupdt después de instalar DB2 si ya hay otro producto DB2 instalado La siguiente información tenía que estar disponible en la documentación de instalación de la Guía rápida de iniciación. Cuando instale DB2 UDB Versión 7 en sistemas basados en UNIX, y si ya hay un producto DB2 instalado, tendrá que ejecutar el mandato db2iupdt para actualizar las instancias con las que pretende utilizar las nuevas características de este producto. Algunas de las características no estarán disponibles hasta que se ejecute este mandato. ------------------------------------------------------------------------ 3.14 Configuración del entorno Linux para ejecutar el Centro de control de DB2 Esta información se tenía que haber incluido en el capítulo "Instalación del Centro de control de DB2" del manual Guía rápida de iniciación. Después dejar el instalador de DB2 en Linux y volver a la ventana de terminal, escriba los mandatos siguientes para establecer el entorno correcto para ejecutar el Centro de control de DB2: su -l export JAVA_HOME=/usr/jdk118 export DISPLAY=:0 A continuación, abra otra ventana de terminal y escriba: su root xhost + Cierre esta ventana de terminal y vuelva al terminal en que ha iniciado una sesión con el ID de propietario de la instancia, y escriba el mandato: db2cc para iniciar el Centro de control. ------------------------------------------------------------------------ 3.15 DB2 Universal Database Enterprise Edition y DB2 Connect Enterprise Edition para Linux en S/390 DB2 Universal Database Enterprise Edition y DB2 Connect Enterprise Edition están ahora disponibles para Linux en S/390. Antes de instalar Linux en una máquina S/390, debería tener en cuenta los requisitos de software y hardware: Hardware S/390 9672 Generation 5 o posterior, Multiprise 3000. Software * SuSE Linux v7.0 para S/390 o Turbolinux Server 6 para zSeries y S/390 * nivel de kernel 2.2.16, con parches para S/390 (vea más abajo) * glibc 2.1.3 * libstdc++ 6.1 Para Linux en S/390 se necesitan los parches siguientes: * no se necesitan parches en este momento. Para las últimas actualizaciones, vaya al sitio Web http://www.software.ibm.com/data/db2/linux. Notas: 1. Sólo se da soporte a Linux en S/390 y Linux basados en Intel de 32 bits. 2. Los que se indican a continuación no están disponibles en Linux/390 en DB2 Versión 7: o DB2 UDB Enterprise - Extended Edition o DB2 Extenders o Data Links Manager o DB2 Administrative Client o Change Password Support o LDAP Support ------------------------------------------------------------------------ 3.16 Posible pérdida de datos en Linux para S/390 Cuando se utiliza DB2 en Linux para S/390 con un kernel serie 2.2, la cantidad de RAM disponible en la máquina Linux debe estar limitada a menos de 1 GB. Al limitar la RAM a 1 GB se evita una posible pérdida de datos en DB2 debido a un problema en el kernel de Linux. Esto sólo afecta a DB2 en Linux para S/390, no a Linux en Intel. Se pondrá a disponibilidad de los usuarios un parche del kernel en http://www10.software.ibm.com/developerworks/opensource/linux390/alpha_src.html, después el cual se podrá utilizar más de un 1 GB de RAM. ------------------------------------------------------------------------ 3.17 Integración de escritorios Gnome y KDE para DB2 en Linux Ahora DB2 incluye una serie de programas de utilidad para la creación de carpetas de escritorio e iconos de DB2 para ejecutar las herramientas de DB2 que se utilizan con más frecuencia en los escritorios Gnome y KDE para las distribuciones Linux basadas en Intel soportadas. Estos programas de utilidad los instala DB2 Versión 7.2 por omisión y se pueden utilizar, tras la instalación para crear y eliminar iconos del escritorio para uno o más usuarios seleccionados. Para añadir un grupo de iconos de escritorio para uno o más usuarios, utilice el siguiente mandato: db2icons [ ...] Nota: Tenga en cuenta que si se generan iconos mientras se está ejecutando un entorno de escritorio Gnome o KDE, es posible que el usuario tenga que forzar una renovación manual del escritorio para ver los nuevos iconos. Para eliminar un grupo de iconos de escritorio para uno o más usuarios, utilice el siguiente mandato: db2rmicons [ ...] Nota: Debe tener suficiente autorización para generar o eliminar iconos para otros usuarios. Normalmente, db2icons y db2rmicons se pueden utilizar para crear o eliminar iconos para el propio usuario si se trata de un usuario normal y para otros únicamente si se trata del usuario root o de otro usuario con autorización de grabación en los directorios iniciales de los usuarios especificados. ------------------------------------------------------------------------ 3.18 DB2 Universal Database Enterprise - Extended Edition for UNIX Quick Beginnings En el Capítulo 5. Instalación y configuración de DB2 Universal Database en Linux se debería indicar que cada nodo físico de un clúster EEE de Linux debe tener los mismos niveles de kernel, glibc y libstdc++. Puede bajar una versión de prueba de DB2 EEE para Linux del siguiente sitio Web: http://www6.software.ibm.com/dl/db2udbdl/db2udbdl-p ------------------------------------------------------------------------ 3.19 Parámetro de kernel shmseg para HP-UX La información sobre la actualización de los parámetros de configuración del kernel de HP-UX que se suministra con el manual Quick Beginnings es incorrecta. El valor recomendado para el parámetro de kernel shmseg para HP-UX se debe pasar por alto. En su lugar, debe utilizarse el valor por omisión para HP-UX (120). ------------------------------------------------------------------------ 3.20 Migración de las bases de datos de control de IBM Visual Warehouse La publicación DB2 Universal Database Guía rápida de iniciación para Windows proporciona información sobre cómo se migra la base de datos de control del depósito activa durante una instalación típica de DB2 Universal Database Versión 7 en Windows NT y Windows 2000. Si tiene que migrar más de una base de datos de control del depósito, debe utilizar la ventana Gestión de bases de datos de control del depósito para migrar las bases de datos adicionales. Sólo puede haber una base de datos de control del depósito activa en cada momento. Si la última base de datos que migre no es la que pretende utilizar en su próximo inicio de sesión con el Centro de depósito de datos, debe utilizar la ventana Gestión de bases de datos de control del depósito para registrar la base de datos que pretende utilizar. ------------------------------------------------------------------------ 3.21 Migración de índices exclusivos mediante el mandato db2uiddl En el capítulo Tareas de migración posteriores a la instalación de DB2 del manual DB2 Guía rápida de iniciación, en el apartado Tareas posteriores a la migración opcionales, se indica que se debe utilizar el mandato db2uiddl para migrar índices exclusivos desde DB2 versión 5.x y DB2 versión 6. Esto es incorrecto. Sólo es necesario migrar los índices exclusivos mediante el mandato db2uidddl si se realiza una migración desde una versión de DB2 anterior a la versión 5. ------------------------------------------------------------------------ 3.22 Error de instalación de la versión de 64 bits de AIX Si utiliza db2setup para instalar una imagen de 64 bits de AIX DB2 en un sistema operativo AIX que ya existe, asegúrese de utilizar versiones de AIX compatibles o la instalación fallará. No se puede instalar imágenes de AIX Versión 5 DB2 en un sistema operativo AIX Versión 4 existente. De forma parecida, la instalación de una imagen de AIX Versión 4 DB2 de 64 bits en un sistema operativo AIX Versión 5 existente también dará como resultado un error de instalación. Cuando se intenta instalar versiones de 64 bits de AIX que no son compatibles, el programa de utilidad db2setup busca la incoherencia de versiones en la comprobación de requisitos previos, dando como resultado un mensaje de error como el siguiente: DBI1008E Incoherencia entre las versiones del soporte de instalación y de AIX. Para evitar este error, asegúrese de instalar la versión de 64 bits de AIX correcta. 3.22.1 Utilización de la SMIT Si utiliza la SMIT, recibirá un error en la sustitución de AIX Versión 4 DB2 por AIX Versión 5 DB2; sin embargo, a la inversa no sucede. Por lo tanto, los usuarios de AIX Versión 5 de 64 bits se deben asegurar de instalar la versión correcta. Si se puede emitir db2setup, sin ningún mensaje de error, significa que la comprobación de compatibilidad de versiones de AIX ha resultado satisfactoria. Nota: Este error de incompatibilidad no es aplicable a la versiones de AIX de 32 bits. ------------------------------------------------------------------------ 3.23 Errores durante la migración Durante la migración, las entradas erróneas en el archivo db2diag.log (base de datos no migrada) aparecen incluso cuando la migración es satisfactoria y se pueden ignorar. ------------------------------------------------------------------------ 3.24 Activación de licencias de IBM(R) DB2(R) Connect Los programas de instalación de DB2 Connect Enterprise Edition, DB2 Connect Unlimited Edition y DB2 Connect Web Starter Kit no instalan las licencias de los productos. Después de su instalación, estos productos funcionarán en modalidad Probar y comprar durante un período de 90 días, puesto que no disponen de los archivos de licencia. Después de dicho período de 90 días, el producto instalado dejará de funcionar a no ser que se active la licencia pertinente. Para activar una licencia para un producto, puede utilizar el Centro de licencias de DB2 o el mandato db2licm. 3.24.1 Instalación de la clave de licencia y establecimiento del tipo de licencia utilizando el Centro de licencias 1. Inicie el Centro de control de DB2 y seleccione Centro de licencias en el menú Herramientas. 2. Seleccione el sistema para el que está instalando una licencia. El campo Productos instalados mostrará el nombre del producto que tiene instalado. 3. Seleccione Añadir en el menú Licencia. 4. En la ventana Añadir licencia, seleccione el botón de selección Desde un archivo y seleccione un archivo de licencia: o En servidores Windows: x:\db2\license\connect\nombrearchivo_licencia donde x: representa la unidad de CD-ROM que contiene el CD del producto DB2 Connect. o En servidores UNIX: /db2/license/connect/nombrearchivo_licencia donde nombrearchivo_licencia para DB2 Connect Enterprise Edition y DB2 Connect Unlimited Edition es db2conee.lic, y para DB2 Connect Web Starter Kit es db2consk.lic. 5. Pulse Aplicar para añadir la clave de licencia. 6. Establecimiento del tipo de licencia. o Para DB2 Connect Unlimited Edition y DB2 Connect Web Starter Kit: En el Centro de licencias, seleccione Cambiar en el menú Licencia. En la ventana Cambiar licencia, seleccione el recuadro de selección Uso mesurado. Pulse Bien para cerrar la ventana Cambiar licencia y volver al Centro de licencias. Nota: Para DB2 Connect Web Starter Kit, asegúrese de que la fecha de caducidad esté establecidas en 270 días a partir del día que instaló el producto. o Para DB2 Connect Enterprise Edition: En el Centro de licencias, seleccione Cambiar en el menú Licencia. En la ventana Cambiar licencia, seleccione el tipo de licencia que ha adquirido. + Si ha adquirido una licencia de Usuarios simultáneos, seleccione Usuarios simultáneos de DB2 Connect y entre el número de licencia de usuario que ha adquirido. Nota: DB2 Connect Enterprise Edition proporciona una licencia para un usuario. Las licencias de usuario adicionales para DB2 Connect se deben adquirir por separado. + Si ha adquirido una licencia de Usuarios registrados, seleccione Usuarios registrados de DB2 Connect y pulse Bien para cerrar la ventana Cambiar licencia y volver al Centro de licencias. Pulse la pestaña Usuarios y añada cada uno de los ID de usuario para los que ha adquirido una licencia. 3.24.2 Instalación de la clave de licencia y establecimiento del tipo de licencia utilizando el mandato db2licm En lugar de utilizar el Centro de licencia, puede utilizar el mandato db2licm para añadir la clave de licencia. Para añadir la clave de licencia mediante el mandato db2licm: 1. En servidores Windows, entre el mandato siguiente: db2licm -a x:\db2\license\connect\nombrearchivo_licencia donde x: representa la unidad de CD-ROM que contiene el CD del producto DB2 Connect. En servidores UNIX, entre el mandato siguiente: db2licm -a db2/license/connect/nombrearchivo_licencia donde nombrearchivo_licencia para DB2 Connect Enterprise Edition y DB2 Connect Unlimited Edition es db2conee.lic, y para DB2 Connect Web Starter Kit es db2consk.lic. Nota: Para DB2 Connect Web Starter Kit, asegúrese de que la fecha de caducidad esté establecidas en 270 días a partir del día que instaló el producto. 2. Establecimiento del tipo de licencia: o Para DB2 Connect Unlimited Edition y DB2 Connect Web Starter Kit: Entre el mandato siguiente: db2licm -p db2conee measured o Para DB2 Connect Enterprise Edition: Si ha adquirido licencias de Usuarios simultáneos, entre los mandatos siguientes: db2licm -p db2conee concurrent db2licm -u N donde N representa el número de licencias de usuarios simultáneos que ha adquirido. Si ha adquirido licencias de Usuarios registrados, entre los mandatos siguientes: db2licm -p db2conee registered 3.24.3 Consideraciones sobre licencias para instalaciones distribuidas Si está creando una imagen para una instalación distribuida, deberá realizar arreglos especiales para instalar la licencia después de la instalación. Añada a los scripts de instalación distribuida los mandatos db2licm descritos anteriormente. ------------------------------------------------------------------------ 3.25 Acceso a las bases de datos de control del depósito En una instalación típica de DB2 Versión 7 en Windows NT, se crea una base de datos de control del depósito DB2 Versión 7, junto con el servidor de depósito. Si tiene una base de datos de control del depósito Visual Warehouse, debe actualizar el servidor DB2 que contiene la base de datos de control del depósito a DB2 Versión 7 para poder migrar los metadatos de la base de datos de control del depósito para uso del Centro de depósito de datos de DB2 Versión 7. Debe migrar todas las bases de datos de control del depósito que desee seguir utilizando a la Versión 7. Los metadatos de la base de datos de control del depósito activa se migran a la Versión 7 durante el proceso de instalación de DB2 Versión 7. Para migrar los metadatos de las bases de datos de control del depósito adicionales, utilice el programa de utilidad Warehouse Control Database Migration, que se inicia seleccionando Inicio --> Programas --> IBM DB2 --> Gestión de bases de datos de control del depósito en Windows NT. Para obtener información sobre cómo migrar las bases de datos de control del depósito, consulte la publicación DB2 Universal Database para Windows Guía rápida de iniciación. ------------------------------------------------------------------------ 3.26 Productos de prueba en los CD-ROM de UNIX Enterprise Edition Los CD-ROM de DB2 Universal Database (UDB) Enterprise Edition (EE) para plataformas UNIX Versión 6 y Versión 7 contienen una versión de prueba de 90 días de DB2 Connect Enterprise Edition (CEE). Puesto que la funcionalidad de DB2 Connect se crea sobre el producto DB2 UDB EE, no tiene que instalar el producto DB2 CEE en sistemas donde DB2 UDB EE está instalado para utilizar la funcionalidad de DB2 Connect. Si instala la versión de prueba de 90 días de DB2 CEE y decide actualizar a una versión con licencia, debe adquirir el producto DB2 CEE e instalar la clave de licencia de DB2 CEE. No tiene que volver a instalar el producto. Las instrucciones para instalar la clave de licencia se proporcionan en el manual DB2 EE o DB2 CEE para UNIX Guía rápida de iniciación. Si ha instalado el producto CEE de prueba conjuntamente con la instalación de EE y no desea instalar CEE permanentemente, puede eliminar la versión de prueba de 90 días de CEE siguiendo estas instrucciones. Si elimina la versión de prueba de Connect EE, todavía tendrá la funcionalidad de DB2 Connect disponible con DB2 EE. Para eliminar DB2 Connect Versión 7, desinstale los conjuntos de archivos siguientes desde las plataformas respectivas: * En AIX, desinstale el catálogo de archivos db2_07_01.clic. * En NUMA-Q y Entornos operativos Solaris, desinstale el paquete db2clic71. * En Linux, desinstale el RPM db2clic71-7.1.0-x. * En HP-UX, desinstale el catálogo de archivos DB2V7CONN.clic. Para eliminar DB2 Connect Versión 6, desinstale los conjuntos de archivos siguientes desde las plataformas respectivas: * En AIX, desinstale el catálogo de archivos db2_06_01.clic. * En NUMA-Q y Entornos operativos Solaris, desinstale el paquete db2cplic61. * En Linux, desinstale el RPM db2cplic61-6.1.0-x. * En HP-UX, desinstale el catálogo de archivos DB2V6CONN.clic. ------------------------------------------------------------------------ 3.27 Productos de prueba en los CD-ROM de UNIX de DB2 Connect Enterprise Edition Los CD-ROM de DB2 Connect Enterprise Edition (EE) para plataformas UNIX Versión 6 y Versión 7 contienen una versión de prueba de 90 días de DB2 Universal Database (UDB) Enterprise Edition (EE). La versión de prueba de 90 días de DB2 UDB EE se proporciona para su evaluación, pero no es necesaria para que funcione DB2 Connect. Si instala la versión de prueba de 90 días de DB2 UDB EE y decide actualizar a una versión con licencia, debe adquirir el producto DB2 UDB EE e instalar la clave de licencia de DB2 UDB EE. No tiene que volver a instalar el producto. Las instrucciones para instalar la clave de licencia se proporcionan en el manual DB2 EE o DB2 CEE para UNIX Guía rápida de iniciación. Si ha instalado el producto UDB EE de prueba conjuntamente con la instalación de Connect EE y no desea instalar UDB EE permanentemente, puede eliminar la versión de prueba de 90 días de EE siguiendo estas instrucciones. Si elimina la versión de prueba de DB2 UDB EE, no afectará a la funcionalidad de DB2 Connect EE. Para eliminar DB2 UDB EE Versión 7, desinstale los siguientes conjuntos de archivos desde las plataformas respectivas: * En AIX, desinstale el catálogo de archivos db2_07_01.elic. * En NUMA-Q y Entornos operativos Solaris, desinstale el paquete db2elic71. * En Linux, desinstale el RPM db2elic71-7.1.0-x. * En HP-UX, desinstale el catálogo de archivos DB2V7ENTP.elic. Para eliminar DB2 UDB EE Versión 6, desinstale los siguientes conjuntos de archivos desde las plataformas respectivas: * En AIX, desinstale el catálogo de archivos db2_06_01.elic. * En NUMA-Q y Entornos operativos Solaris, desinstale el paquete db2elic61. * En Linux, desinstale el RPM db2elic61-6.1.0-x. * En HP-UX, desinstale el catálogo de archivos DB2V6ENTP.elic. ------------------------------------------------------------------------ 3.28 Información del soporte de página de códigos e idioma - Corrección La tabla Soporte de página de códigos e idioma contenida en el apéndice relativo a Soporte de idioma nacional (NLS) de los manuales Guía rápida de iniciación contiene los errores siguientes: * La cabecera de columna "Código de país" debe decir "Código de país/región" * La cabecera de columna "Idioma" debe decir "Idioma/Script" * El código para Eslovenia es "sl", y no "si" tal como se indica en la tabla ------------------------------------------------------------------------ Data Links Manager Guía rápida de iniciación ------------------------------------------------------------------------ 4.1 Soporte en AIX 5.1 Actualmente, los componentes Data Links File Manager y File Filter se soportan plenamente en AIX 5.1. Todas las herramientas e instrucciones asociadas a Enlaces de datos y soportadas previamente en releases anteriores de AIX se soportan ahora plenamente y son aplicables en AIX 5.1. ------------------------------------------------------------------------ 4.2 Falla el inicio de dlfm con el mensaje: "Error al obtener el afsfid para el prefijo" Si el inicio de dlfm para un Data Links Manager que se ejecute en el entorno DCE-DFS falla con el error que se indica a continuación, póngase en contacto con el servicio técnico de IBM: Error al obtener el afsfid para el prefijo Se puede producir este error cuando se ha suprimido un catálogo de archivos DFS registrado con el Data Links Manager utilizando "dlfm add_prefix". ------------------------------------------------------------------------ 4.3 Establecimiento de la clase de Tivoli Storage Manager para archivos de archivar Para especificar qué clase de gestión de TSM debe utilizarse para los archivos de archivar, establezca la entrada de registro DLFM_TSM_MGMTCLASS de DB2 en el nombre de clase de gestión apropiado. ------------------------------------------------------------------------ 4.4 Requisitos de espacio de disco para DFS Client Enabler DFS Client Enabler es un componente opcional que se puede seleccionar durante la instalación del cliente o servidor DB2 Universal Database. No se puede instalar DFS Client Enabler sin instalar un producto cliente o servidor DB2 Universal Database, a pesar de que DFS Client Enabler se ejecuta por sí mismo sin necesidad de un cliente o servidor DB2 UDB. Además de los 2 MB de espacio de disco necesario para el código de DFS Client Enabler, debe reservar 40 MB adicionales si instala DFS Client Enabler como parte de una instalación de Cliente de tiempo de ejecución de DB2. Necesitará más espacio de disco si instala DFS Client Enabler como parte de una instalación de DB2 Administration Client o servidor DB2. Para obtener más información sobre los requisitos de espacio de disco para productos DB2 Universal Database, consulte el manual DB2 para UNIX Guía rápida de iniciación. ------------------------------------------------------------------------ 4.5 Supervisión de los procesos de componente de fondo de DB2 Data Links File Manager en AIX Existe un cambio en la salida del mandato dlfm see. Cuando se emite este mandato para supervisar los procesos de componente de fondo del Data Links File Manager en AIX, la salida que se devuelve será parecida a la siguiente: PID PPID PGID RUNAME UNAME ETIME DAEMON NAME 17500 60182 40838 dlfm root 12:18 dlfm_copyd_(dlfm) 41228 60182 40838 dlfm root 12:18 dlfm_chownd_(dlfm) 49006 60182 40838 dlfm root 12:18 dlfm_upcalld_(dlfm) 51972 60182 40838 dlfm root 12:18 dlfm_gcd_(dlfm) 66850 60182 40838 dlfm root 12:18 dlfm_retrieved_(dlfm) 67216 60182 40838 dlfm dlfm 12:18 dlfm_delgrpd_(dlfm) 60182 1 40838 dlfm dlfm 12:18 dlfmd_(dlfm) La petición de DLFM SEE ha sido satisfactoria. El nombre incluido entre paréntesis es el nombre de la instancia dlfm, en este caso "dlfm". ------------------------------------------------------------------------ 4.6 Instalación y configuración de DB2 Data Links Manager para AIX: Consideraciones adicionales sobre la instalación en entornos DCE-DFS En el apartado titulado "Requisitos previos a la instalación", se debe añadir nueva información: También debe instalar un e-fix para DFS 3.1, o el conjunto de PTF 1 (cuando esté disponible). El e-fix está disponible en: http://www.transarc.com/Support/dfs/datalinks/efix_dfs31_main_page.html Asimismo: El cliente dfs se tiene que estar ejecutando antes de instalar el Data Links Manager. Utilice db2setup o smitty. En el apartado titulado "Archivo de tablas de claves", existe un error que se debe corregir de la forma siguiente: El archivo de tablas de claves, que contiene información de principal y contraseña, se debe llamar datalink.ktb y .... El nombre correcto: datalink.ktb se utiliza en el ejemplo que viene a continuación. El apartado "Archivo de tablas de claves" se debe mover al apartado "Tarea posterior a la instalación de DCE-DFS", puesto que no se puede producir la creación de este archivo hasta después de que se haya creado la instancia DLMADMIN. En el apartado titulado "Servidores y clientes de Data Links File Manager", se debe observar que el servidor Data Links Manager se debe instalar antes que cualquier cliente de Data Links Manager. Se debe añadir un nuevo apartado, "Directorio de copia de seguridad": Si el método de copia de seguridad es un sistema de archivos local, debe ser un directorio del sistema de archivos DFS. Asegúrese de que un administrador de DFS haya creado este catálogo de archivos. No debe ser un catálogo de archivos DMLFS. ------------------------------------------------------------------------ 4.7 El mandato "dlfm add_prefix" ha fallado Para un Data Links Manager que se ejecute en el entorno DCE/DFS, el mandato dlfm add_prefix puede fallar con el código de retorno -2061 (ha fallado la copia de seguridad). Si así sucede, lleve a cabo los pasos siguientes: 1. Detenga los procesos del daemon Data Links Manager emitiendo el mandato dlfm stop. 2. Detenga los procesos de DB2 emitiendo el mandato dlfm stopdbm. 3. Obtenga las credenciales del usuario root de dce emitiendo el mandato dce_login root. 4. Inicie los procesos de DB2 emitiendo el mandato dlfm startdbm. 5. Registre el catálogo de archivos con el Data Links Manager emitiendo el mandato dlfm add_prefix. 6. Inicie los procesos del daemon Data Links Manager emitiendo el mandato dlfm start. ------------------------------------------------------------------------ 4.8 En las raras ocasiones en que el daemon de copia no se detiene en dlfm stop En muy pocas situaciones puede pasar que dlfm_copyd (el daemon de copia) no se detenga cuando un usuario emite dlfm stop o se produce una conclusión anormal. Si esto sucede, emita un dlfm shutdown antes de intentar reiniciar dlfm. ------------------------------------------------------------------------ 4.9 Instalación y configuración de DB2 Data Links Manager para AIX: Instalación de DB2 Data Links Manager en AIX utilizando el programa de utilidad db2setup En el apartado "Base de datos DB2 DLFM_DB creada", no se crea DLFM_DB en el entorno DCE_DFS. Esto se debe hacer como paso posterior a la instalación. En el apartado "Registro previo al inicio de DCE-DFS para DMAPP", el Paso 2 se debe cambiar por el siguiente: 2. Se añaden mandatos a /opt/dcelocal/tcl/user_cmd.tcl para asegurar que DMAPP se inicia cuando se inicia DFS. ------------------------------------------------------------------------ 4.10 Instalación y configuración de DB2 Data Links Manager para AIX: Tarea posterior a la instalación de DCE-DFS Se debe añadir el siguiente apartado nuevo, "Completar la instalación del Data Links Manager": En el servidor Data Links Manager, se deben realizar los pasos siguientes para completar la instalación: 1. Cree el archivo de tablas de claves tal y como se ha descrito en "Archivo de tablas de claves" del apartado "Consideraciones de instalación adicionales en el entorno de DCE-DFS", del capítulo "Instalación y configuración de DB2 Data Links Manager para AIX". 2. Como usuario root, entre los mandatos siguientes para iniciar DMAPP: stop.dfs all start.dfs all 3. Ejecute "dlfm setup" utilizando las credenciales del usuario root de dce, tal como sigue: a. Inicie una sesión como administrador de Data Links Manager, DLMADMIN. b. Como usuario root, emita dce_login. c. Entre el mandato: dlfm setup. En el cliente de Data Links Manager, se deben realizar los pasos siguientes para completar la instalación: 1. Cree el archivo de tablas de claves tal y como se ha descrito en "Archivo de tablas de claves" del apartado "Consideraciones de instalación adicionales en el entorno de DCE-DFS", del capítulo "Instalación y configuración de DB2 Data Links Manager para AIX". 2. Como usuario root, entre los mandatos siguientes para iniciar DMAPP: stop.dfs all start.dfs all ------------------------------------------------------------------------ 4.11 Instalación y configuración de DB2 Data Links Manager para AIX: Instalación manual de DB2 Data Links Manager en AIX utilizando la Smit En el apartado, "Tareas posteriores a la instalación de la SMIT", modifique el paso 7 para indicar que se debe emitir el mandato "dce_login root" antes que "dlfm setup". El paso 11 no es necesario. Este paso se realiza automáticamente cuando se lleva a cabo el Paso 6 (dlfm server_conf) o el Paso 8 (dlfm client_conf). Elimine también el paso 12 (dlfm start). Para completarla instalación, lleve a cabo los pasos siguientes: 1. Cree el archivo de tablas de claves tal y como se ha descrito en "Archivo de tablas de claves" del apartado "Consideraciones de instalación adicionales en el entorno de DCE-DFS", del capítulo "Instalación y configuración de DB2 Data Links Manager para AIX". 2. Como usuario root, entre los mandatos siguientes para iniciar DMAPP: stop.dfs all start.dfs all ------------------------------------------------------------------------ 4.12 Instalación y configuración de DB2 Data Links Manager DFS Client Enabler En el apartado "Configuración de un DFS Client Enabler", añada la información siguiente al Paso 2: Normalmente, una ejecución de mandatos "secval" completará la configuración. No obstante, puede ser necesario rearrancar también la máquina. Si se encuentran problemas al acceder a archivos READ PERMISSION DB, rearranque la máquina en que se acaba de instalar DB2 DFS Client Enabler. ------------------------------------------------------------------------ 4.13 Instalación y configuración de DB2 Data Links Manager para Solaris Las acciones siguientes deben efectuarse después de instalar DB2 Data Links Manager para Solaris: 1. Añada las tres líneas siguientes al archivo /etc/system: set dlfsdrv:glob_mod_pri=0x100800 set dlfsdrv:glob_mesg_pri=0xff set dlfsdrv:ConfigDlfsUid=UID donde UID representa el ID de usuario del id dlfm. 2. Vuelva a arrancar la máquina para activar los cambios. ------------------------------------------------------------------------ 4.14 Privilegios del grupo del administrador en Data Links en Windows NT En Windows NT, el usuario dlmadmin tiene los mismos privilegios, con respecto a los archivos que se enlazan utilizando DataLinks, que un usuario root tiene en UNIX para la mayoría de las funciones. La tabla siguiente compara ambas situaciones. Operación Unix (root) Windows NT (dlmadmin) Redenominar Sí Sí Archivo de acceso sin Sí Sí señal Suprimir Sí No (vea la nota que hay más abajo) Actualizar Sí No (vea la nota que hay más abajo) Nota: NTFS no acepta estas operaciones para un archivo de sólo lectura. El usuario dlmadmin puede efectuar estas operaciones de modo satisfactorio habilitando el permiso de grabación para el archivo. ------------------------------------------------------------------------ 4.15 Minimizar el registro cronológico para la instalación de Data Links File System Filter (DLFF) Puede minimizar el registro cronológico para la instalación de Data Links File System Filter (DLFF) cambiando el archivo dlfs_cfg . El archivo dlfs_cfg se pasa a la rutina strload para cargar los parámetros de controlador y configuración. El archivo está ubicado en el directorio /usr/lpp/db2_07_01/cfg/. Por medio de un enlace simbólico, el archivo también puede hallarse en el directorio /etc. El archivo dlfs_cfg tiene el formato siguiente: d - 0 1 donde: d Especifica que ha de cargarse el controlador. nombre-controlador Es la vía de acceso completa al controlador que ha de cargarse. Por ejemplo, la vía de acceso completa para DB2 Versión 7 es /usr/lpp/db2_07_01/bin/dlfsdrv. El nombre del controlador es dlfsdrv. número vfs Es la entrada de vfs para DLFS en /etc/vfs. id dlfm Es el ID de usuario del administrador de DataLinks Manager. prioridad mensaje global Éste es un parámetro configurable del controlador DLFS. Define la lista de categorías de mensajes que se anotarán en el archivo de anotaciones cronológicas del sistema. prioridad módulo global Éste es un parámetro configurable del controlador DLFS. Define la lista de rutinas de controlador, operaciones de VFS y operaciones de Vnode que se anotarán en el archivo de anotaciones cronológicas del sistema. 0 1 Son los números secundarios para la creación de nodos no clónicos para este controlador. Los nombres de nodo se crean agregando el número secundario al nombre de nodo de controlador clonado. No pueden proporcionarse más de cinco números secundarios (0-4). Un ejemplo tendría esta apariencia: d /usr/lpp/db2_07_01/bin/dlfsdrv 14,208,255,-1 - 0 1 Los mensajes que se registren cronológicamente dependen de los valores para la prioridad global del mensaje y para la prioridad global del módulo. Para minimizar la anotación cronológica, puede cambiar el valor para la prioridad global del mensaje. Hay cuatro valores de prioridad de mensaje que pueden utilizarse: #define LOG_EMERGENCY 0x01 #define LOG_TRACING 0x02 #define LOG_ERROR 0x04 #define LOG_TROUBLESHOOT 0x08 La mayoría de los mensajes de DLFF tienen LOG_TROUBLESHOOT como prioridad de mensajes. Aquí mostramos algunos ejemplos de configuración alternativos: Si necesita mensajes de emergencia y mensajes de error, establezca la prioridad global del mensaje en 5 (1+4) en el archivo de configuración dlfs_cfg: d /usr/lpp/db2_07_01/bin/dlfsdrv 14,208,5,-1 - 0 1 Si sólo se necesitan mensajes de error, establezca la prioridad global del mensaje en 4: d /usr/lpp/db2_07_01/bin/dlfsdrv 14,208,4,-1 - 0 1 Si no requiere anotación cronológica para DLFS, establezca la prioridad global del mensaje en 0: d /usr/lpp/db2_07_01/bin/dlfsdrv 14,208,0,-1 - 0 1 4.15.1 Anotación cronológica de mensajes después de la instalación Si necesita anotar cronológicamente mensajes de emergencia, error y resolución de problemas después de la instalación, debe modificar el archivo dlfs_cfg. El archivo dlfs_cfg está ubicado en el directorio /usr/lpp/db2_07_01/cfg. La prioridad global del mensaje debe establecerse en 255 (prioridad máxima) o en 13 (8+4+1). Establecer la prioridad en 13 (8+4+1) registrará cronológicamente información de emergencia, error y resolución de problemas. Después de establecer la prioridad global del mensaje, desmonte el sistema de archivos de filtro DLFS y vuelva a cargar el controlador dlfsdrv para que los valores de prioridad nuevos se establezcan en el momento de la carga. Después de volver a cargar el controlador dlfsdrv, debe volverse a montar el sistema de archivos de filtro DLFS. Nota: Los valores para dlfs_cfg permanecerán para cualquier carga sucesiva del controlador dlfsdrv hasta que se vuelva a modificar el archivo dlfs_cfg. ------------------------------------------------------------------------ 4.16 Restauración de DATALINK La restauración de cualquier copia de seguridad fuera de línea que se haya realizado después de una restauración de base de datos, con o sin recuperación de avance, no implicará proceso de conciliación rápida. En tales casos, todas las tablas con columnas DATALINK bajo control de enlace de archivo pasarán a estado pendiente de reconciliación de enlace de datos (DRP). ------------------------------------------------------------------------ 4.17 Descarte de Data Links Manager Ahora se puede descartar DB2 Data Links Manager para una base de datos especificada. El proceso de algunas peticiones de SQL relacionados con Data Links, así como también programas de utilidad, por ejemplo copia de seguridad y restauración, implican la comunicación con todos los DLM configurados en una base de datos. Previamente, DB2 no tenía la capacidad de descartar un DLM configurado aunque no hubiera sido operativo. Esto ocasionaba una actividad general en el proceso de programas de utilidad y SQL. Cuando se añadía un DLM, el motor se comunicaba con el mismo en el proceso de peticiones, lo que puede haber ocasionado la anomalía de algunas peticiones de SQL (por ejemplo, descartar tabla/espaciotabla/basedatos). ------------------------------------------------------------------------ 4.18 La desinstalación de los componentes de DLFM utilizando la SMIT puede eliminar catálogos de archivos adicionales Antes de desinstalar DB2 (Versiones 5, 6 ó 7) de una máquina AIX en la que está instalado Data Links Manager, siga estos pasos: 1. Como root, haga una copia de /etc/vfs utilizando el mandato: cp -p /etc/vfs /etc/vfs.bak 2. Desinstale DB2. 3. Como root, sustituya /etc/vfs con la copia de seguridad creada en el paso 1: cp -p /etc/vfs.bak /etc/vfs ------------------------------------------------------------------------ 4.19 Antes de empezar/determinar el nombre del sistema principal Es necesario determinar los nombres de cada uno de los servidores DB2 y servidores Data Links. Será necesario conocer estos nombres de sistema principal para verificar la instalación. Al conectar con un DB2 Data Links File Manager, el servidor DB2 UDB envía internamente la información siguiente al DLFM: * Nombre de base de datos * Nombre de instancia * Nombre de sistema principal Luego el DLFM compara esta información con sus tablas internas para determinar si debe permitirse la conexión. Permitirá la conexión sólo si esta combinación de nombre de base de datos, nombre de instancia y nombre de sistema principal se ha registrado con él mismo, utilizando el mandato dlfm add_db. El nombre de sistema principal que se utiliza en el mandato dlfm add_db debe coincidir exactamente con el que envía internamente el servidor DB2 UDB. Utilice el nombre de sistema principal exacto que se obtiene del modo siguiente: 1. Entre el mandato hostname en el servidor DB2. Por ejemplo, este mandato puede devolver db2server. 2. Dependiendo de la plataforma, lleve a cabo una de las acciones siguientes: o En AIX, entre el mandato host db2server, donde db2server es el nombre obtenido en el paso anterior. Este mandato debe devolver una salida parecida a la siguiente: db2server.services.com is 9.11.302.341, Alias: db2server o En Windows NT, entre el mandato nslookup db2server, donde db2server es el nombre obtenido en el paso anterior. Este mandato debe devolver una salida parecida a la siguiente: Servidor: dnsserv.services.com Dirección: 9.21.14.135 Nombre: db2server.services.com Dirección: 9.21.51.178 o En Solaris, entre cat /etc/hosts | grep 'nombresistemaprincipal'. Esto debe devolver una salida parecida a la siguiente si el nombre de sistema principal se especifica sin un nombre de dominio en /etc/hosts: 9.112.98.167 db2server loghost Si se especifica el nombre de sistema principal con un nombre de dominio, el mandato devuelve una salida parecida a la siguiente: 9.112.98.167 db2server.services.com loghost Utilice db2server.services.com para el nombre de sistema principal cuando registre una base de datos de DB2 UDB utilizando el mandato dlfm add_db. Las conexiones internas del servidor DB2 con el DLFM fallarán si se utilizan otros alias en el mandato dlfm add_db. Un servidor Data Links se registra en una base de datos de DB2 utilizando el mandato de DB2 "add datalinks manager for database alias_basedatos using node hostname port número_puerto". El nombre de sistema principal es el nombre del servidor Data Links. En este mandato se puede utilizar cualquier alias válido del servidor Data Links. Los valores DATALINK que son referencias a este servidor Data Links deben especificar el nombre de sistema principal en el valor de URL; es decir, debe utilizarse el nombre exacto que se ha utilizado en el mandato "add datalinks manager" al asignar valores de URL a columnas DATALINK. La utilización de un alias distinto ocasionará una anomalía en la sentencia de SQL. ------------------------------------------------------------------------ 4.20 Trabajo con Data Links File Manager: Borrado después de descartar un DB2 Data Links Manager de una base de datos de DB2 Cuando se descarta un DB2 Data Links Manager de una base de datos utilizando el mandato DROP DATALINKS MANAGER, el comando por sí mismo no limpia la información correspondiente en DB2 Data Links Manager. Los usuarios pueden iniciar explícitamente el desenlace de cualquier archivo enlazado a la base de datos y la recogida de desechos de información de copia de seguridad. Esto se puede llevar a cabo utilizando el mandato dlfm drop_dlm. Este mandato inicia la supresión asíncrona de toda la información para una base de datos específica. El DB2 Data Links Manager debe estar ejecutándose para que este mandato sea satisfactorio. Es sumamente importante que este mandato se utilice únicamente después de descartar un DB2 Data Links Manager; de lo contrario, se perderá información importante sobre DB2 Data Links Manager y no se podrá recuperar. Para iniciar el proceso de desenlace y de recogida de desechos de información de copia de seguridad para una base de datos específica: 1. Inicie una sesión en el sistema como Administrador de DB2 Data Links Manager. 2. Emita el mandato siguiente: dlfm drop_dlm basedatos instancia nombresistemaprincipal donde: basedatos es el nombre de la base de datos de DB2 UDB remota; instancia es la instancia bajo la que reside la base de datos y nombresistemaprincipal es el nombre del sistema principal del servidor DB2 UDB en el que reside la base de datos. 3. Finalice la sesión. Para obtener un marco hipotético completo sobre la utilización que muestre el contexto en el que debe utilizarse este mandato, consulte el manual Consulta de mandatos. Se ha creado un nuevo código de error para este mandato (consulte 4.22, DLFM1001E (Nuevo mensaje de error)). ------------------------------------------------------------------------ 4.21 Acción del usuario para la anomalía de dlfm client_conf Si, en un cliente DLFM, falla dlfm client_conf por algún motivo, la razón puede ser que existan entradas "obsoletas" en los catálogos de DB2. La solución consiste en emitir los mandatos siguientes: db2 uncatalog db db2 uncatalog node db2 terminate A continuación, vuelva a intentar dlfm client_conf. ------------------------------------------------------------------------ 4.22 DLFM1001E (Nuevo mensaje de error) DLFM1001E: Error en el proceso de drop_dlm Causa: El Data Links Manager no ha podido iniciar el proceso de desenlace y recogida de desechos para la base de datos especificada. Este puede suceder debido a cualquiera de las razones siguientes: * El Data Links Manager no se está ejecutando. * Se ha especificado una combinación no válida de base de datos, instancia y nombre de sistema principal. * Se ha producido una anomalía en uno de los servicios componentes del Data Links Manager. Acción: Realice los pasos siguientes: 1. Asegúrese de que el Data Links Manager se esté ejecutando. Inicie el Data Links Manager si todavía no se está ejecutando. 2. Asegúrese de que la combinación de base de datos, instancia y nombre de sistema principal identifica una base de datos registrada. Puede hacerlo utilizando el mandato "dlfm list registered databases" en el Data Links Manager. 3. Si todavía se produce un error, consulte la información que se encuentra en el archivo db2diag.log para ver si alguno de los servicios componentes (por ejemplo, el Servicio de gestión de conexiones, el Servicio de gestión de transacciones, etc.) ha sido anómalo. Anote el código de error de db2diag.log y efectúe las acciones oportunas que se sugieren bajo dicho código de error. ------------------------------------------------------------------------ 4.23 Opción de archivo de configuración de puesta a punto DLFM Se ha eliminado la opción dlfm.cfg de puesta a punto de dlfm. Debe hacerse caso omiso a las referencias a la misma que aparezcan en la documentación. ------------------------------------------------------------------------ 4.24 Error al ejecutar el script de Data Links/DFS dmapp_prestart en AIX Si el mandato /usr/sbin/cfgdmepi -a "/usr/lib/drivers/dmlfs.ext" es anómalo con un código de retorno de 1 al ejecutar el script de Data Links/DFS dmapp_prestart, instale DFS 3.1 ptfset1 para arreglar cfgdmepi. ------------------------------------------------------------------------ 4.25 Integración de Tivoli Space Manager con Data Links Ahora DB2 Data Links Manager podrá aprovechar las funciones de Tivoli Space Manager. El programa cliente de Tivoli Space Manager Hierarchical Storage Manager (HSM) migra automáticamente los archivos seleccionados al almacenamiento para mantener niveles específicos de espacio libre en los sistemas de archivos locales. Vuelve a llamar automáticamente a los archivos migrados cuando se accede a los mismos y permite a los usuarios migrar y volver a llamar archivos específicos. Esta característica ayuda a los clientes que tienen sistemas de archivos con archivos grandes que se tienen que mover de forma periódica a un almacenamiento terciario en el que el espacio del sistema de archivos se tiene que gestionar de forma regular. Para muchos clientes, Tivoli Space Manager proporciona actualmente los métodos necesarios para gestionar su almacenamiento terciario. El nuevo soporte de DB2 Data Links Manager de Tivoli Space Manager ofrece mayor flexibilidad para gestionar el espacio para archivos DATALINK. En lugar de tener que preasignar almacenamiento suficiente en el sistema de archivos DB2 Data Links Manager para todos los archivos que se puedan almacenar ahí, Tivoli Space Manager permite que las asignaciones del sistema de archivos gestionado por Data Links se ajusten durante un periodo de tiempo sin el riesgo de que se llene sin querer el sistema de archivos durante su uso normal. Adición de soporte de Data Links y HSM a un sistema de archivos Cuando registre un sistema de archivos con Hierarchical Storage Management (HSM), hágalo con HSM primero y luego con DataLinks File Manager. 1. Registre con HSM, mediante el mandato "dsmmigfs add /fs". 2. Registre con DLM, mediante el mandato "dlfmfsmd /fs". El soporte de Data Links de un sistema de archivos se refleja en la stanza en /etc/filesystems para un sistema de archivos HSM a través de las siguientes entradas: vfs = dlfs mount = false options = rw,Basefs=fsm nodename = - Adición de soporte de Data Links a un sistema de archivos HSM existente Registre con DLM, mediante el mandato "dlfmfsmd /fs". Adición de soporte de HSM a un sistema de archivos Data Links existente 1. Registre con HSM, mediante el mandato "dsmmigfs add /fs". 2. Registre con DLM, mediante el mandato "dlfmfsmd /fs". Eliminación del soporte de Data Links de un sistema de archivos Data Links-HSM Elimine el soporte de Data Links utilizando el mandato "dlfmfsmd -j /fs". Eliminación del soporte de HSM de un sistema de archivos Data Links-HSM 1. Elimine el soporte de HSM mediante el mandato "dsmmigfs remove /fs". 2. Elimine el soporte de Data Links, "dlfmfsmd -j /fs". 3. Registre con DLM, mediante el mandato "dlfmfsmd /fs". Eliminación del soporte de Data Links y HSM de un sistema de archivos Data Links-HSM 1. Elimine el soporte de HSM mediante el mandato "dsmmigfs remove /fs". 2. Elimine el soporte de Data Links utilizando el mandato "dlfmfsmd -j /fs". 4.25.1 Restricciones y limitaciones Esta función actualmente sólo recibe soporte en AIX. La migración selectiva (dsmmigrate) y rellamada de un archivo enlazado FC (BD con permiso de lectura) sólo puede realizarla un usuario root. La migración selectiva sólo la puede realizar el propietario del archivo, que en el caso de archivos de base de datos con permiso de lectora es el Administrador de DataLink Manager (dlfm). Para acceder a estos archivos se necesita una señal del lado de la base de datos del sistema principal. El único usuario que no necesita señal es el usuario "root". Es más fácil para un usuario "root" realizar la migración selectiva y volver a llamar a archivos de base de datos con permiso de lectura. El usuario dlfm puede migrar un archivo FC mediante una señal válida únicamente la primera vez. La segunda vez que se intente la migración (después de la rellamada), la operación fallará con el mensaje de error "ANS1028S Error interno del programa. Póngase en contacto con el representante de servicio." Si un usuario que no sea root intenta ejecutar dsmmigrate en un archivo FC, obtendrá un error. Esta limitación es menor puesto que normalmente son los administradores los que acceden a los archivos del servidor de archivos. Las llamadas del sistema stat y statfs mostrarán Vfs-type como fsm en lugar de dlfs, aunque dlfs esté montado sobre fsm. El comportamiento anterior es para la función normal de deamons dsmrecalld, que realizan operaciones statfs en el sistema de archivos para comprobar si su Vfs-type es fsm o no. El mandato "dsmls" no muestra ninguna salida si un archivo que tiene el número de inode mínimo está enlazado a FC (BD con permiso de lectura) El mandato dsmls es parecido al mandato ls y lista los archivos que administra TSM. No es necesaria ninguna acción por parte del usuario. ------------------------------------------------------------------------ 4.26 Capítulo 4. Instalación y configuración de DB2 Data Links Manager para AIX 4.26.1 Consideraciones para la instalación 4.26.1.1 Migración de DB2 File Manager Versión 5.2 a DB2 Data Links Manager Versión 7 La información que se encuentra en el paso 3 es incorrecta. El Paso 3 debería decir lo siguiente: "3. Como administrador de DLFM, ejecute el mandato /usr/lpp/db2_07_01/adm/db2dlmmg. ------------------------------------------------------------------------ 4.27 Capítulo 6. Verificación de la instalación en AIX 4.27.1 Soluciones temporales en entornos NFS En este apartado se describen soluciones temporales para los problemas conocidos cuando se ejecute DB2 Data Links Manager para AIX en entornos NFS que no aparezcan en la documentación actual. Estos problemas son específicos de NFS y no tienen nada que ver con DB2 Data Links Manager ni con DB2 Universal Database. Aspectos adicionales de la gestión de la antememoria de NFS En el cliente NFS para AIX se mantienen dos antememorias distintas. El cliente NFS mantiene una antememoria con atributos de archivos y directorios a los que se ha accedido recientemente. Asimismo, el cliente soporta opcionalmente una antememoria de datos para almacenar el contenido de los archivos en el cliente. A veces, el proceso de gestión de la antememoria de atributos produce una condición inusual en un cliente NFS, después de que se enlace un archivo READ PERMISSION DB. Algunas veces, los usuarios pueden acceder a un archivo READ PERMISSION DB sin señal de control de acceso, en caso de que dichos usuarios estuvieran conectados a la máquina antes de que se enlazara el archivo. Para reducir las probabilidades de un acceso no autorizado al archivo, utilice uno de los métodos siguientes: o Use el mandato touch sobre el archivo antes de ejecutar la sentencia INSERT de SQL para establecer el enlace. o Use el mandato touch en el directorio que contiene el archivo. o Use el mandato mount con uno de los cinco parámetros de configuración de la antememoria de atributos (actimeo, acregmin, acregmax, acdirmin, acdirmax) para minimizar el tiempo que se retienen los atributos en la antememoria después de que se modifique un archivo o directorio. Probablemente observará accesos no autorizados a los archivos READ PERMISSION DB durante las pruebas de la función Data Links, puesto que sólo hay un archivo enlazado y hay poca actividad de NFS. Es menos probable que se encuentre este escenario en un entorno de producción, ya que la actividad de NFS es abundante y la antememoria de atributos de NFS no suele retener los atributos para todos los archivos enlazados. ------------------------------------------------------------------------ Suplemento de instalación y configuración ------------------------------------------------------------------------ 5.1 Capítulo 5. Instalación de clientes DB2 en sistemas operativos UNIX 5.1.1 Parámetros de configuración del kernel HP-UX La recomendación para configurar parámetros del kernel HP-UX indica incorrectamente que msgmbn y msgmax se deben establecer en 65535 o superior. Ambos parámetros deben tener exactamente el valor 65535. ------------------------------------------------------------------------ 5.2 Capítulo 12. Ejecución de sus propias aplicaciones 5.2.1 Vinculación de programas de utilidad de bases de datos utilizando el Cliente de tiempo de ejecución El Cliente de tiempo de ejecución no se puede utilizar para vincular los programas de utilidad de bases de datos (import, export, reorg, el procesador de línea de mandatos) ni los archivos de vinculación de CLI de DB2 para cada base de datos antes de utilizarlos con la base de datos. En su lugar se debe utilizar DB2 Administration Client o DB2 Application Development Client. Debe vincular estos programas de utilidad de bases de datos y los archivos de vinculación de CLI de DB2 con cada base de datos para poderlos utilizar con la base de datos. En un entorno de red, si utilizan varios clientes que se ejecutan en sistemas operativos distintos, o que corresponden a versiones o niveles de servicio de DB2 distintos, debe vincular los programas de utilidad una vez para cada combinación de sistema operativo y versión de DB2. 5.2.2 Acceso de clientes UNIX a DB2 utilizando ODBC En el Capítulo 12 ("Ejecución de las aplicaciones propias del usuario") se establece que es necesario actualizar odbcinst.ini si se instala un ODBC Driver Manager con la aplicación de cliente ODBC u ODBC SDK. Esto es parcialmente incorrecto. No es necesario actualizar odbcinst.ini si se instala un producto Merant ODBC Driver Manager. ------------------------------------------------------------------------ 5.3 Capítulo 24. Configuración de un sistema federado para que acceder a varias fuentes de datos 5.3.1 Sistemas federados Un sistema federado DB2 es un tipo especial de sistema de gestión de bases de datos distribuidas (DBMS). Un sistema federado le permite consultar y recuperar datos ubicados en otros DBMS. Una sola sentencia SQL puede hacer referencia a varios DBMS o a bases de datos individuales. Por ejemplo, puede unir datos ubicados en una tabla DB2 Universal Database, una tabla Oracle y una vista Sybase. Un sistema federado DB2 consta de un servidor con una instancia de DB2 (una base de datos que servirá como base de datos federada) y una o más fuentes de datos. La base de datos federada contiene entradas de catálogo que identifican fuentes de datos y sus características. Una fuente de datos consta de un DBMS y datos. Las fuentes de datos soportadas incluyen: * Oracle * Sybase * Microsoft SQL Server * Informix * miembros de la familia DB2 Universal Database (como, por ejemplo, DB2 para OS/390, DB2 para AS/4000 y DB2 para Windows) Los servidores federados DB2 Universal Database se comunican con, y recuperan datos de, fuentes de datos utilizando protocolos, denominados reiniciadores. El reiniciador que se utilice dependerá de la plataforma en que se esté ejecutando la instancia de DB2. Se utilizan apodos para identificar las tablas y vistas ubicadas en las fuentes de datos. Las aplicaciones se pueden conectar con la base de datos federada igual que lo hacen con cualquier otra base de datos DB2. Después de configurar un sistema federado, se puede acceder a la información de las fuentes de datos como si los datos estuvieran en una sola base de datos local. Los usuarios y las aplicaciones envían consultas a la base de datos federada, la cual recupera datos de las fuentes de datos. Un sistema federado DB2 funciona bajo algunas restricciones. Las peticiones distribuidas se limitan a operaciones de sólo lectura en DB2 Versión 7. Además, no puede ejecutar operaciones de programas de utilidad (LOAD, REORG, REORGCHK, IMPORT, RUNSTATS, etc.) sobre apodos. Sin embargo, puede utilizar un recurso de paso a través para someter sentencias DDL y DML directamente a los DBMS utilizando el dialecto de SQL asociado a la fuente de datos. 5.3.2 Restricción Los nuevos reiniciadores de la Versión 7.2 (tales como Informix en AIX, HP, y Solaris; Oracle en Linux, HP y Solaris; Sybase en AIX y Solaris; y Microsoft SQL Server en AIX y NT) no están disponibles en este FixPak ; debe adquirir DB2 Relational Connect Versión 7.2. 5.3.3 Instalación de DB2 Relational Connect Esta sección contiene instrucciones para instalar DB2 Relational Connect en el servidor que utilizará como servidor del sistema federado. Se requiere Relational Connect para acceder a fuentes de datos Oracle, Sybase, Microsoft SQL Server e Informix. No se requiere DB2 Relational Connect para acceder a miembros de la familia DB2 Universal Database. Antes de instalar DB2 Relational Connect: * Asegúrese de tener DB2 Universal Database Enterprise Edition o DB2 Universal Database Enterprise -- Extended Edition instalado en el servidor federado. En servidores DB2 para UNIX: Si tiene intención de incluir bases de datos de la familia DB2 en las peticiones distribuidas, debe haber seleccionado la opción de fuentes de datos Unión distribuida para DB2 al instalar DB2 Universal Database.Para verificar que se ha implementado esta opción, compruebe que el parámetro FEDERATED tiene el valor YES. Puede comprobar este valor emitiendo el mandato GET DATABASE MANAGER CONFIGURATION, que muestra todos los parámetros y sus valores actuales. * Cerciórese de que el software de cliente para la fuente de datos esté instalado en el servidor federado. 5.3.3.1 Instalación de DB2 Relational Connect en servidores Windows NT 1. Inicie una sesión en el servidor federado con la cuenta de usuario que ha creado para realizar la instalación de DB2 Universal Database. 2. Concluya cualquier programa que se esté ejecutando para que el programa de instalación pueda actualizar los archivos necesarios. 3. Invoque el programa de instalación (setup). Puede invocar el programa de instalación de forma automática o manual. Si el programa de instalación no se inicia automáticamente, o si desea ejecutar el programa de instalación en otro idioma, invóquelo de forma manual. o Para invocar el programa de instalación de forma automática: a. Inserte el CD de DB2 Relational Connect en la unidad. b. La característica de ejecución automática inicia automáticamente el programa de instalación. El idioma del sistema está determinado y se ejecuta el programa de instalación correspondiente a dicho idioma. o Para invocar el programa de instalación de forma manual: a. Pulse Inicio y seleccione la opción Ejecutar. b. En el campo Abrir, escriba el siguiente mandato: x:\setup /i idioma donde: x Representa la unidad de CD-ROM. idioma Representa el código de país/región correspondiente a su idioma (por ejemplo, EN para inglés). c. Pulse Bien. Se abre el programa de instalación. 4. Pulse Instalar para comenzar el proceso de instalación. 5. Siga las solicitudes del programa de instalación. Cuando finalice la instalación, DB2 Relational Connect estará instalado en el directorio junto con los demás productos DB2. o En servidores DB2 para el Entorno operativo Solaris, el directorio es /opt/IBMdb2/V7.1 o En servidores DB2 para HP-UX, el directorio es /opt/IBMdb2/V7.1 o En servidores DB2 para Linux, el directorio es /usr/IBMdb2/V7.1 5.3.3.2 Instalación de DB2 Relational Connect en servidores UNIX Para instalar DB2 Relational Connect en el servidor federado UNIX, utilice el programa de utilidad db2setup. Nota: Las pantallas que aparecen al utilizar el programa de utilidad db2setup dependen de lo que ya se tenga instalado en el servidor federado. En estos pasos se supone que no ha instalado Relational Connect. 1. Inicie una sesión como usuario con autorización root. 2. Inserte y monte el CD-ROM del producto DB2. Para obtener información sobre cómo montar un CD-ROM, consulte el manual DB2 for UNIX Quick Beginnings. 3. Cambie al directorio en el que está montado el CD-ROM entrando el mandato cd /cdrom, donde cdrom es el punto de montaje del CD-ROM del producto. 4. Escriba el mandato ./db2setup. Tras unos segundos, se abrirá la ventana Instalar DB2 V7. Esta ventana lista los elementos que están instalados actualmente y los elementos que están disponibles para su instalación. 5. Navegue a la unión distribuida que desea instalar, como por ejemplo Unión distribuida para fuentes de datos Informix, y pulse la barra espaciadora para seleccionarla. Aparecerá un asterisco junto a la opción cuando esté seleccionada. 6. Seleccione OK. Se abrirá la ventana Crear servicios de DB2. 7. Puesto que el servidor federado ya contiene una instancia de DB2, seleccione la opción No crear una instancia de DB2 y seleccione OK. 8. Si ha elegido que no se cree un Servidor de administración, aparecerá un aviso. Seleccione OK. La ventana Programa de utilidad de instalación de DB2 muestra un Informe de resumen de lo que se va a instalar. Puesto que no ha instalado Relational Connect anteriormente, deben aparecer dos elementos: o la signatura del producto para DB2 Relational Connect o la unión distribuida para la fuente de datos que ha seleccionado 9. Seleccione Continuar. Aparecerá una ventana que indica que esta es su última oportunidad para detener la instalación de Relational Connect. Seleccione OK para continuar con la instalación. La instalación puede tardar unos minutos en finalizar. 10. La ventana Programa de utilidad de instalación de DB2 muestra un Informe de estado que indica qué componentes se han instalado satisfactoriamente. Seleccione OK. Se abrirá la ventana Programa de utilidad de instalación de DB2. Seleccione Cerrar y luego OK para salir del programa de utilidad. Cuando finalice la instalación, DB2 Relational Connect estará instalado en el directorio junto con los demás productos DB2. o En servidores DB2 para AIX, el directorio es /usr/lpp/db2_07_01. o En servidores DB2 para el Entorno operativo Solaris, el directorio es /opt/IBMdb2/V7.1. o En servidores DB2 para HP-UX, el directorio es /opt/IBMdb2/V7.1. o En servidores DB2 para Linux, el directorio es /usr/IBMdb2/V7.1. ------------------------------------------------------------------------ 5.4 Capítulo 26. Acceso a fuentes de datos Oracle Además de dar soporte a reiniciadores en AIX y Windows NT, DB2 Universal Database da ahora soporte al reiniciador de Oracle en Linux, en el entorno operativo Solaris y en HP-UX. Este soporte está limitado a Oracle Versión 8. Para acceder a los reiniciadores correspondientes a estas plataformas, tiene que insertar el CD de la V7.2 de DB2 Relational Connect y seleccionar Unión distribuida para fuentes de datos Oracle. Una vez instalado DB2 Relational Connect, puede añadir una fuente de datos Oracle a un servidor federado: 1. Instale y configure el software cliente de Oracle en el servidor federado de DB2. 2. Establezca las variables de entorno de fuentes de datos modificando el archivo db2dj.ini y emitiendo un mandato db2set. 3. Para servidores federados de DB2 que se ejecuten en plataformas UNIX, ejecute el script djxlink para editar con enlace las bibliotecas Oracle SQL*Net o Net8 al servidor federado de DB2. 4. Asegúrese de que el archivo tnsnames.ora de SQL*Net o Net8 se actualiza. 5. Recicle la instancia de DB2. 6. Cree el reiniciador. 7. Opcional: Establezca la variable de entorno DB2_DJ_COMM. 8. Cree un servidor. 9. Cree una correlación de usuario. 10. Cree apodos para tablas y vistas. Encontrará instrucciones detalladas para estos pasos, incluido el establecimiento de variables de entorno, en el Capítulo 26. Configuración de un sistema federado para acceder a fuentes de datos de Oracle de la publicación Suplemento de instalación y configuración de DB2. Esta información también está disponible en línea en http://www.ibm.com/software/data/db2/relconnect/. 5.4.1 Errores de la documentación El apartado, "Cómo añadir fuentes de datos de Oracle a un sistema federado" tiene los errores siguientes: * Es necesario un paso adicional entre los pasos dos y tres del manual. Los tres primeros pasos deben ser como sigue: 1. Instale y configure el software de cliente de Oracle en el servidor federado de DB2 utilizando la documentación facilitada por Oracle. 2. Establezca las variables de entorno de la fuente de datos modificando el archivo db2dj.ini y emitiendo el mandato db2set. El mandato db2set actualiza el registro del perfil de DB2 con sus valores. Se pueden encontrar instrucciones detalladas para establecer las variables de entorno en el Capítulo 26, Configuración de un sistema federado para acceder a fuentes de datos de Oracle de la publicación Suplemento de instalación y configuración de DB2. 3. Para servidores federados de DB2 que se ejecutan en plataformas UNIX, ejecute el script djxlink para montar con enlace las bibliotecas SQL*Net o Net8 de Oracle en el servidor federado de DB2. En función de la plataforma, el script djxlink se encuentra en: /usr/lpp/db2_07_01/bin en AIX /opt/IBMdb2/V7.1/bin en el Entorno operativo Solaris /usr/IBMdb2/V7.1/bin en Linux Sólo debe ejecutar el script djxlink después de instalar el software cliente de Oracle en el servidor federado de DB2. 4. Prosiga con los pasos que siguen al número tres tal como se indica en el manual. * La documentación indica que ha de establecerse: DB2_DJ_INI = sqllib/cfg/db2dj.ini Esto es incorrecto, debería establecerse en lo siguiente: DB2_DJ_INI = $INSTHOME/sqllib/cfg/db2dj.ini ------------------------------------------------------------------------ 5.5 Acceso a fuentes de datos Sybase (capítulo nuevo) Antes de añadir fuentes de datos Sybase a un servidor federado, tiene que instalar y configurar el software Sybase Open Client en el servidor federado de DB2. Consulte los procedimientos de instalación de la documentación que viene con el software de bases de datos Sybase para ver detalles específicos sobre cómo instalar el software Open Client. Como parte de la instalación, asegúrese de incluir los procedimientos almacenados de catálogos y las bibliotecas de Sybase Open Client. Para configurar el servidor federado para que acceda a datos almacenados en fuentes de datos Sybase, tiene que: 1. Instalar DB2 Relational Connect Versión 7.2. Consulte 5.3.3, Instalación de DB2 Relational Connect. 2. Añadir fuentes de datos Sybase al servidor federado. 3. Especificar las páginas de códigos de Sybase. Este capítulo trata los pasos 2 y 3. Las instrucciones de este capítulo se aplican a Windows NT, AIX y al entorno operativo Solaris. Si hay diferencias específicas para cada plataforma, se indican. 5.5.1 Adición de fuentes de datos Sybase a un servidor federado Para añadir una fuente de datos Sybase a un servidor federado, tiene que: 1. Establecer las variables de entorno y actualizar el registro de perfiles. 2. Enlazar DB2 al software de cliente Sybase (sólo AIX y Solaris). 3. Reciclar la instancia de DB2. 4. Crear y configurar un archivo de interfaces. 5. Cree el reiniciador. 6. Opcional: Establecer la variable de entorno DB2_DJ_COMM. 7. Crear un servidor. 8. Opcional: establecer la opción del servidor CONNECTSTRING 9. Crear una correlación de usuario. 10. Crear apodos para tablas y vistas. Estos pasos se explican en detalle en esta sección. 5.5.1.1 Paso 1: Establecer las variables de entorno y actualizar el registro de perfiles Establezca las variables de entorno de la fuente de datos modificando el archivo db2dj.ini y emitiendo el mandato db2set. El archivo db2dj.ini contiene información de configuración sobre el software del cliente Sybase instalado en el servidor federado. El mandato db2set actualiza el registro del perfil de DB2 con sus valores. En un sistema de bases de datos particionado, puede utilizar un solo archivo db2dj.ini para todos los nodos de una determinada instancia o puede utilizar un archivo db2dj.ini exclusivo para uno o más nodos de una instancia determinada. Un sistema de bases de datos no particionado sólo puede tener un archivo db2dj.ini por instancia. Para establecer las variables de entorno: 1. Edite el archivo db2dj.ini situado en sqllib/cfg y establezca la siguiente variable de entorno: SYBASE="" donde es el directorio en el que está instalado el cliente Sybase. 2. Actualice el archivo .profile de la instancia DB2 con la variable de entorno de Sybase. Puede hacerlo emitiendo el siguiente mandato: export PATH="$SYBASE/bin:$PATH" export SYBASE="" donde es el directorio en el que está instalado el cliente Sybase. 3. Ejecute la instancia de DB2 .profile entrando: . .profile 4. Emita el mandato db2set para actualizar el registro de perfiles de DB2 con los cambios. La sintaxis de este mandato, db2set, depende de la estructura del sistema de bases de datos. Este paso sólo es necesario si utiliza el archivo db2dj.ini en cualquiera de las siguientes estructuras de sistemas de bases de datos: Si utiliza el archivo db2dj.ini en un sistema de bases de datos no particionado o si desea que el archivo db2dj.ini se aplique sólo al nodo actual, emita: db2set DB2_DJ_INI = sqllib/cfg/db2dj.ini Si utiliza el archivo db2dj.ini en un sistema de bases de datos particionado y desea que los valores del archivo db2dj.ini se apliquen a todos los nodos de esta instancia, emita: db2set -g DB2_DJ_INI = sqllib/cfg/db2dj.ini Si utiliza el archivo db2dj.ini en un sistema de bases de datos particionado y desea que los valores del archivo db2dj.ini se apliquen a un nodo específico, emita: db2set -i INSTANCEX 3 DB2_DJ_INI = sqllib/cfg/node3.ini donde: INSTANCEX Es el nombre de la instancia. 3 Es el número de nodo listado en el archivo db2nodes.cfg. node3.ini Es la versión modificada y con el nombre cambiado del archivo db2dj.ini. 5.5.1.2 Paso 2: Enlazar DB2 al software cliente de Sybase (sólo AIX y Solaris) Para habilitar el acceso a fuentes de datos Sybase, el servidor federado de DB2 debe estar editado con enlace a las bibliotecas del cliente. El proceso de editar con enlace crea un reiniciador para cada fuente de datos con la que se va a comunicar el servidor federado. Cuando ejecuta el script djxlink, crea la biblioteca del reiniciador. Para emitir el tipo de script djxlink: djxlink 5.5.1.3 Paso 3: Reciclar la instancia de DB2 Para asegurarse de que las variables de entorno están definidas en el programa, recicle la instancia de DB2. Cuando recicla la instancia, renueva la instancia de DB2 para que acepte los cambios realizados. Emita los siguientes mandatos para reciclar la instancia de DB2: En servidores DB2 para Windows NT: NET STOP nombre_instancia NET START nombre_instancia En servidores DB2 para AIX y Solaris: db2stop db2start 5.5.1.4 Paso 4: Crear y configurar un archivo de interfaces Para crear y configurar un archivo de interfaces, debe crear el archivo y dejarlo accesible. 1. Utilice el programa de utilidad suministrado por Sybase para crear un archivo de interfaces que incluya los datos para todos los Sybase Open Servers a los que desea acceder. Consulte la documentación de instalación de Sybase para obtener más información sobre cómo utilizar este programa de utilidad. Windows NT suele llamar a este archivo sql.ini. Cambie el nombre del archivo que acaba de crear, sql.ini, por interfaces para que el archivo tenga el mismo nombre en todas las plataformas. Si elige no cambiar el nombre de sql.ini por interfaces, debe utilizar el parámetro IFILE o la opción CONNECTSTRING que se explica en el paso 8. En sistemas AIX y Solaris, este archivo se llama /sqllib/interfaces. 2. Permita que DB2 pueda acceder al archivo de interfaces. En servidores DB2 para Windows NT: Coloque el archivo en el directorio %DB2PATH% de la instancia de DB2. En servidores DB2 para AIX y Solaris: Coloque el archivo en el directorio $HOME/sqllib de la instancia de DB2. Utilice el mandato ln para enlazar con el archivo desde el directorio $HOME/sqllib de la instancia de DB2. Por ejemplo: ln -s -f /home/sybase/interfaces /home/db2djinst1/sqllib 5.5.1.5 Paso 5: Crear el reiniciador Utilice la sentencia CREATE WRAPPER para especificar el reiniciador que se utilizará para acceder a fuentes de datos Sybase. Los reiniciadores son mecanismos que utilizan los servidores federados para comunicarse con fuentes de datos y recuperar datos de las mismas. DB2 incluye dos reiniciadores para Sybase, CTLIB y DBLIB. El siguiente ejemplo muestra una sentencia CREATE WRAPPER: CREATE WRAPPER CTLIB donde CTLIB es el nombre de reiniciador por omisión que se utiliza con el software Sybase Open Client. El reiniciador CTLIB se puede utilizar en servidores Windows NT, AIX y Solaris. Puede sustituir el nombre de reiniciador por omisión por el nombre que elija. Sin embargo, si lo hace, debe también incluir el parámetro LIBRARY y el nombre de la biblioteca del reiniciador correspondiente al servidor federado en la sentencia CREATE WRAPPER. Consulte la sentencia CREATE WRAPPER del manual Consulta de SQL de DB2 para obtener más información sobre nombres de bibliotecas de reiniciadores. 5.5.1.6 Paso 6: Opcional: Establecer la variable de entorno DB2_DJ_COMM Para mejorar el rendimiento cuando se accede a la fuente de datos Sybase, establezca la variable de entorno DB2_DJ_COMM. Esta variable determina si el reiniciador se carga cuando se inicializa el servidor federado. Establezca la variable de entorno DB2_DJ_COMM de modo que incluya la biblioteca del reiniciador que corresponde al reiniciador que ha especificado en el paso anterior; por ejemplo: En servidores DB2 para Windows NT: db2set DB2_DJ_COMM='ctlib.dll' En servidores DB2 para AIX: db2set DB2_DJ_COMM='libctlib.a' En servidores DB2 para Solaris: db2set DB2_DJ_COMM='libctlib.so' Asegúrese de que no hay espacios junto al signo igual (=). Consulte el manual Consulta de SQL de DB2 para obtener más información sobre nombres de bibliotecas de reiniciadores. Consulte el manual Administration Guide para obtener más información sobre la variable de entorno DB2_DJ_COMM. 5.5.1.7 Paso 7: Crear el servidor Utilice la sentencia CREATE SERVER para definir cada servidor Sybase a cuyas fuentes de datos desea acceder; por ejemplo: CREATE SERVER SYBSERVER TYPE SYBASE VERSION 12.0 WRAPPER CTLIB OPTIONS (NODE 'sybnode', DBNAME'sybdb') donde: SYBSERVER Es un nombre que el usuario asigna al servidor Sybase. Este nombre debe ser exclusivo. SYBASE Es el tipo de fuente de datos cuyo acceso está configurando. Sybase es la única fuente de datos que recibe soporte. 12.0 Es la versión de Sybase a la que está accediendo. Las versiones soportadas son 10.0, 11.0, 11.1, 11.5, 11.9 y 12.0. CTLIB Es el nombre del reiniciador que ha especificado en la sentencia CREATE WRAPPER. 'sybnode' Es el nombre del nodo en el que reside SYBSERVER. Obtenga el valor del nodo del archivo de interfaces. Este valor es sensible a mayúsculas y minúsculas. Aunque el nombre del nodo se especifica como una opción, es necesario para fuentes de datos Sybase. Consulte el manual Consulta de SQL de DB2 para obtener información sobre opciones adicionales. 'sybdb' Es el nombre de la base de datos de Sybase a la que desea acceder. 5.5.1.8 Opcional: Paso 8: Establecer la opción del servidor CONNECTSTRING Especifique los umbrales de tiempo de espera excedido, la vía de acceso y el nombre del archivo de interfaces y el tamaño de paquete del archivo de interfaces. Sybase Open Client utiliza los umbrales de tiempo de espera excedido para interrumpir consultas y respuestas que se ejecutan durante demasiado tiempo. Puede establecer estos umbrales en DB2 mediante la opción CONNECTSTRING de la sentencia CREATE SERVER OPTION DDL. Utilice la opción CONNECTSTRING para especificar: * Duración de tiempo de espera para consultas SQL. * Duración de tiempo de espera para respuesta de inicio de sesión. * Vía de acceso y nombre del archivo de interfaces. * Tamaño de paquete. .-;--------------------------------. V | >>---+------------------------------+-+------------------------>< +-TIMEOUT-- = --segundos-------+ +-LOGIN_TIMEOUT-- = --segundos-+ +-IFILE-- = --"serie"----------+ +-PACKET_SIZE-- = --bytes------+ '-;----------------------------' TIMEOUT Especifica el número de segundos que debe esperar DB2 Universal Database una respuesta de Sybase Open Client para cualquier sentencia SQL. El valor de segundos es un número entero positivo en el rango de enteros de DB2 Universal Database. El valor de tiempo de espera excedido que especifique depende de qué reiniciador utilice. Los servidores Windows NT, AIX y Solaris pueden utilizar el reiniciador DBLIB. El valor por omisión del reiniciador DBLIB es 0. En servidores Windows NT, AIX y Solaris, el valor por omisión correspondiente a DBLIB hace que DB2 Universal Database espere indefinidamente una respuesta. LOGIN_TIMEOUT Especifica el número de segundos que debe esperar DB2 Universal Database una respuesta de Sybase Open Client a una petición de inicio de sesión. Los valores por omisión son los mismos que para TIMEOUT. IFILE Especifica la vía de acceso y nombre del archivo de interfaces de Sybase Open Client. La vía de acceso identificada en serie debe estar entre dobles comillas ("). En servidores Windows, el valor por omisión es %DB2PATH%. En servidores AIX y Solaris, el valor por omisión es sqllib/interfaces del directorio inicial de la instancia de DB2 Universal Database. PACKET_SIZE Especifica el tamaño de paquete del archivo de interfaces en bytes. Si la fuente de datos no da soporte al tamaño de paquete especificado, la conexión fallará. Al aumentar el tamaño de paquete cuando cada registro es muy grande (por ejemplo, cuando se insertan filas en tablas grandes), se aumenta significativamente el rendimiento. El tamaño en bytes es un valor numérico. Obtendrá más información en los manuales de consulta de Sybase. Ejemplos: En servidores Windows NT, para establecer el valor de tiempo de espera en 60 segundos y el archivo de interfaces en C:\etc\interfaces utilice el siguiente mandato: CREATE SERVER OPTION connectstring FOR SERVER sybase1 SETTING 'TIMEOUT=60;LOGIN_TIMEOUT=5;IFILE="C:\etc\interfaces";' En servidores AIX y Solaris, para establecer el valor de tiempo de espera en 60 segundos y el archivo de interfaces en /etc/interfaces utilice el siguiente mandato: CREATE SERVER OPTION connectstring FOR SERVER sybase1 SETTING 'TIMEOUT=60;PACKET_SIZE=4096;IFILE="/etc/interfaces";' 5.5.1.9 Paso 9: Crear una correlación de usuario Si un ID de usuario o contraseña del servidor federado no coinciden con el ID de usuario o contraseña de una fuente de datos Sybase, utilice la sentencia CREATE USER MAPPING para correlacionar el ID de usuario local con el ID de usuario y contraseña definidos en la fuente de datos Sybase; por ejemplo: CREATE USER MAPPING FOR DB2USER SERVER SYBSERVER OPTIONS ( REMOTE_AUTHID 'sybuser', REMOTE_PASSWORD 'dayl1te') donde: DB2USER Es el ID de usuario local que está correlacionando con un ID de usuario definido en la fuente de datos Sybase. SYBSERVER Es el nombre de la fuente de datos Sybase definida en la sentencia CREATE SERVER. 'sybuser' Es el ID de usuario de la fuente de datos Sybase con la que está correlacionando DB2USER. Este valor es sensible a mayúsculas y minúsculas. 'dayl1te' Es la contraseña asociada con 'sybuser'. Este valor es sensible a mayúsculas y minúsculas. Consulte el manual Consulta de SQL de DB2 para obtener más información sobre opciones adicionales. 5.5.1.10 Paso 10: Crear apodos para tablas y vistas Asigne un apodo a cada vista o tabla ubicada en la fuente de datos Sybase. Utilizará estos apodos cuando consulte la fuente de datos Sybase. Los apodos de Sybase son sensibles a mayúsculas y minúsculas. Especifique los nombres de esquema y de tabla entre dobles comillas ("). El siguiente ejemplo muestra una sentencia CREATE NICKNAME: CREATE NICKNAME SYBSALES FOR SYBSERVER."salesdata"."europe" donde: SYBSALES Es un apodo exclusivo para la tabla o vista de Sybase. SYBSERVER."salesdata"."europe" Es un identificador de tres partes que sigue este formato: nombre_fuente_datos."nombre_esquema_remoto"."nombre_tabla_remota" Repita este paso para cada tabla o vista para la que desee crear apodos. Cuando cree el apodo, DB2 utilizará la conexión para consultar el catálogo de fuentes de datos. Esta consulta prueba la conexión con la fuente de datos. Si la conexión no funciona, recibirá un mensaje de error. Consulte el manual Consulta de SQL de DB2 para obtener más información sobre la sentencia CREATE NICKNAME. Para obtener más información sobre apodos en general y para verificar correlaciones de tipos de datos, consulte el manual DB2 Administration Guide. 5.5.2 Especificación de páginas de códigos de Sybase Este paso sólo es necesario cuando el servidor federado DB2 y el servidor Sybase ejecutan distintas páginas de códigos. Las fuentes de datos que utilizan el mismo juego de códigos que DB2 no se tienen que convertir. La tabla siguiente ofrece opciones de Sybase equivalentes para páginas de códigos del Soporte de idiomas nacionales (NLS). Las fuentes de datos de Sybase se tienen que configurar para que correspondan con estos equivalentes o bien el código del cliente debe ser capaz de detectar la discrepancia y marcarla como un error o correlacionar los datos utilizando su propia semántica. Si no se encuentra ninguna tabla de conversión entre la página de códigos fuente y la página de códigos de destino, DB2 emite un mensaje de error. Consulte la documentación de Sybase para obtener más información. Tabla 1. Opciones de páginas de códigos de Sybase Página de Opción de Sybase equivalente códigos 850 cp850 897 sjis 819 iso_1 912 iso_2 1089 iso_6 813 iso_7 916 iso_8 920 iso_9 ------------------------------------------------------------------------ 5.6 Acceso a fuentes de datos Microsoft SQL Server mediante ODBC (capítulo nuevo) Antes de añadir fuentes de datos de Microsoft SQL Server a un servidor federado DB2, tiene que instalar y configurar el controlador ODBC en el servidor federado. Consulte los procedimientos de instalación de la documentación que viene con el controlador ODBC para obtener detalles específicos sobre cómo instalar el controlador ODBC. Para configurar el servidor federado para que acceda a datos almacenados en fuentes de datos de Microsoft SQL Server, tiene que: 1. Instalar y configurar el controlador ODBC en el servidor federado. Consulte los procedimientos de instalación de la documentación que viene con el controlador ODBC para obtener más detalles sobre cómo instalar el controlador ODBC. En servidores DB2 para Windows NT: Configure un DSN del sistema utilizando el gestor de dispositivos ODBC. En servidores DB2 para AIX: Instale la versión con hebras de las bibliotecas que suministra MERANT, especifique el directorio de la biblioteca MERANT como primera entrada de LIBPATH y configure el archivo .odbc.ini. Cree el archivo .odbc.ini en el directorio inicial. 2. Instalar DB2 Relational Connect Versión 7.2. Consulte 5.3.3, Instalación de DB2 Relational Connect. 3. Añadir fuentes de datos de Microsoft SQL Server al servidor federado. 4. Especificar las páginas de códigos de Microsoft SQL Server. Este capítulo trata los pasos 3 y 4. Las instrucciones de este capítulo se aplican a plataformas Windows NT y AIX. Si hay diferencias específicas para cada plataforma, se indican. 5.6.1 Adición de fuentes de datos Microsoft SQL Server a un servidor federado Después de instalar el controlador ODBC y DB2 Relational Connect, añada fuentes de datos de Microsoft SQL Server al servidor federado siguiendo los pasos siguientes: 1. Establezca las variables de entorno (sólo en AIX). 2. Ejecute el script shell (sólo en AIX). 3. Opcional: Establezca la variable de entorno DB2_DJ_COMM. 4. Recicle la instancia de DB2 (sólo en AIX). 5. Cree el reiniciador. 6. Cree el servidor. 7. Cree una correlación de usuario. 8. Cree apodos para las tablas y vistas. 9. Opcional: Obtenga rastreos de ODBC. Estos pasos se explican en detalle en las siguientes secciones. 5.6.1.1 Paso 1: Establecer las variables de entorno (sólo en AIX) Establezca las variables de entorno de la fuente de datos modificando el archivo db2dj.ini y emitiendo el mandato db2set. El archivo db2dj.ini contiene información de configuración para conectar con fuentes de datos de Microsoft SQL Server. El mandato db2set actualiza el registro del perfil de DB2 con sus valores. En un sistema de bases de datos particionado, puede utilizar un solo archivo db2dj.ini para todos los nodos de una determinada instancia o puede utilizar un archivo db2dj.ini exclusivo para uno o más nodos de una instancia determinada. Un sistema de bases de datos no particionado sólo puede tener un archivo db2dj.ini por instancia. Para establecer las variables de entorno: 1. Edite el archivo db2dj.ini situado en $HOME/sqllib/cfg/ y establezca las siguientes variables de entorno: ODBCINI=$HOME/.odbc.ini DJX_ODBC_LIBRARY_PATH=/lib LIBPATH=/lib DB2ENVLIST=LIBPATH Emita el mandato db2set para actualizar el registro de perfiles de DB2 con los cambios. La sintaxis de db2set depende de la estructura del sistema de bases de datos. * Si utiliza el archivo db2dj.ini en un sistema de bases de datos no particionado o si utiliza el archivo db2dj.ini en un sistema de bases de datos particionado y desea que los valores del archivo db2dj.ini se apliquen sólo al nodo actual, emita este mandato: db2set DB2_DJ_INI=/db2dj.ini * Si utiliza el archivo db2dj.ini en un sistema de bases de datos particionado y desea que los valores del archivo db2dj.ini se apliquen a todos los nodos de esta instancia, emita este mandato: db2set -g DB2_DJ_INI=/db2dj.ini * Si utiliza el archivo db2dj.ini en un sistema de bases de datos particionado y desea que los valores del archivo db2dj.ini se apliquen a un nodo específico, emita este mandato: db2set -i INSTANCEX 3 DB2_DJ_INI=$HOME/sqllib/cfg/node3.ini donde: INSTANCEX Es el nombre de la instancia. 3 Es el número de nodo listado en el archivo db2nodes.cfg. node3.ini Es la versión modificada y con el nombre cambiado del archivo db2dj.ini. 5.6.1.2 Paso 2: Ejecutar el script shell (sólo en AIX) El script shell djxlink.sh enlaza las bibliotecas del cliente con las bibliotecas del reiniciador. Para ejecutar el script shell: djxlink 5.6.1.3 Paso 3: Opcional: Establecer la variable de entorno DB2_DJ_COMM Si cree que se tarda demasiado en acceder a la fuente de datos de Microsoft SQL Server, puede mejorar el rendimiento estableciendo la variable de entorno DB2_DJ_COMM para que cargue el reiniciador cuando se inicialice el servidor federado en lugar de cuando intente acceder a la fuente de datos. Establezca la variable de entorno DB2_DJ_COMM de modo que incluya la biblioteca del reiniciador correspondiente al reiniciador especificado en el Paso 5. Por ejemplo: En servidores DB2 para Windows NT: db2set DB2_DJ_COMM=djxmssql3.dll En servidores DB2 para AIX: db2set DB2_DJ_COMM=libmssql3.a Asegúrese de que no hay espacios junto al signo igual (=). Consulte el manual Consulta de SQL de DB2 para obtener más información sobre nombres de bibliotecas de reiniciador. 5.6.1.4 Paso 4: Reciclar la instancia de DB2 (sólo en AIX) Para asegurarse de que las variables de entorno están definidas en el programa, recicle la instancia de DB2. Cuando recicla la instancia, renueva la instancia de DB2 para que acepte los cambios realizados. Recicle la instancia de DB2 emitiendo los siguientes mandatos: db2stop db2start 5.6.1.5 Paso 5: Crear el reiniciador DB2 Universal Database tiene dos protocolos diferentes, denominados reiniciadores, que puede utilizar para acceder a fuentes de datos de Microsoft SQL Server. Los reiniciadores son mecanismos que utilizan los servidores federados para comunicarse con fuentes de datos y recuperar datos de las mismas. El reiniciador que utilice depende de la plataforma en que se esté ejecutando DB2 Universal Database. Utilice la Tabla 2 como guía para seleccionar el reiniciador adecuado. Tabla 2. Controladores ODBC Controlador ODBC Plataforma Nombre del reiniciador Controlador ODBC 3.0 (o superior) Windows NT DJXMSSQL3 Controlador MERANT DataDirect AIX MSSQLODBC3 Connect ODBC 3.6 Utilice la sentencia CREATE WRAPPER para especificar el reiniciador que se utilizará para acceder a fuentes de datos de Microsoft SQL Server. El siguiente ejemplo muestra una sentencia CREATE WRAPPER: CREATE WRAPPER DJXMSSQL3 donde DJXMSSQL3 es el nombre del reiniciador por omisión utilizado en un servidor DB2 para Windows NT (utilizando el controlador ODBC 3.0). Si tiene un servidor DB2 para AIX, especificaría el nombre de reiniciador MSSQLODBC3. Puede sustituir el nombre de reiniciador por omisión por el nombre que elija. Sin embargo, si lo hace, debe incluir el parámetro LIBRARY y el nombre de la biblioteca del reiniciador correspondiente a la plataforma del servidor federado en la sentencia CREATE WRAPPER. Por ejemplo: En servidores DB2 para Windows NT: CREATE WRAPPER nombre_reiniciador LIBRARY 'djxmssql3.dll' donde nombre_reiniciador es el nombre que desea dar al reiniciador y 'djxmssql3.dll' es el nombre de la biblioteca. En servidores DB2 para AIX: CREATE WRAPPER nombre_reiniciador LIBRARY 'libmssql3.a' donde nombre_reiniciador es el nombre que desea dar al reiniciador y 'libdjxmssql.a' es el nombre de la biblioteca. Consulte la sentencia CREATE WRAPPER del manual Consulta de SQL de DB2 para obtener más información sobre nombres de bibliotecas de reiniciadores. 5.6.1.6 Paso 6: Crear el servidor Utilice la sentencia CREATE SERVER para definir cada fuente de datos de Microsoft SQL Server a la que desea conectarse. Por ejemplo: CREATE SERVER sqlserver TYPE MSSQLSERVER VERSION 7.0 WRAPPER djxmssql3 OPTIONS (NODE 'sqlnode', DBNAME 'nombre_basedatos') donde: sqlserver Es un nombre que asigna al servidor de Microsoft SQL Server. Este nombre debe ser exclusivo. MSSQLSERVER Es el tipo de fuente de datos cuyo acceso está configurando. 7.0 Es la versión de Microsoft SQL Server a la que está accediendo. DB2 Universal Database da soporte a las versiones 6.5 y 7.0 de Microsoft SQL Server. DJXMSSQL3 Es el nombre del reiniciador que ha definido en la sentencia CREATE WRAPPER. 'sqlnode' Es el nombre del DSN del sistema que hace referencia a la versión de Microsoft SQL Server del Microsoft SQL Server al que está accediendo. Este valor es sensible a mayúsculas y minúsculas. DB2 Universal Database da soporte a las versiones 6.5 y 7.0 de Microsoft SQL Server. Aunque el nombre del nodo (nombre del DSN del sistema) se especifica como opción en la sentencia CREATE SERVER, es necesario para fuentes de datos de Microsoft SQL Server. Consulte el manual Consulta de SQL de DB2 para ver opciones adicionales que puede utilizar con la sentencia CREATE WRAPPER. 'nombre_basedatos' Es el nombre de la base de datos a la que se está conectando. Aunque el nombre de la base de datos se especifica como opción en la sentencia CREATE SERVER, es necesario para fuentes de datos de Microsoft SQL Server. 5.6.1.7 Paso 7: Crear una correlación de usuario Si un ID de usuario o contraseña del servidor federado no coinciden con el ID de usuario o contraseña de una fuente de datos de Microsoft SQL Server, utilice la sentencia CREATE USER MAPPING para correlacionar el ID de usuario local con el ID de usuario y contraseña definidos en la fuente de datos de Microsoft SQL Server; por ejemplo: CREATE USER MAPPING FOR db2user SERVER nombre_servidor OPTIONS (REMOTE_AUTHID 'mssqluser', REMOTE_PASSWORD 'dayl1te') donde: db2user Es el ID de usuario local que está correlacionando con un ID de usuario definido en la fuente de datos de Microsoft SQL Server. nombre_servidor Es el nombre del servidor que ha definido en la sentencia CREATE SERVER. 'mssqluser' Es el ID de usuario de la fuente de datos de Microsoft SQL Server con la que está correlacionando db2user. Este valor es sensible a mayúsculas y minúsculas. 'dayl1ite' Es la contraseña asociada con 'mssqluser'. Este valor es sensible a mayúsculas y minúsculas. Consulte el manual Consulta de SQL de DB2 para ver opciones adicionales que puede utilizar con la sentencia CREATE USER MAPPING. 5.6.1.8 Paso 8: Crear apodos para tablas y vistas Asigne un apodo para cada vista o tabla situada en la fuente de datos de Microsoft SQL Server a la que desea acceder. Utilizará estos apodos cuando consulte la fuente de datos de Microsoft SQL Server. Utilice la sentencia CREATE NICKNAME para asignar un apodo. Los apodos son sensibles a mayúsculas y minúsculas. El siguiente ejemplo muestra una sentencia CREATE NICKNAME: CREATE NICKNAME mssqlsales FOR nombre_servidor.salesdata.europe donde: mssqlsales Es un apodo exclusivo para la tabla o vista de Microsoft SQL Server. nombre_servidor.salesdata.europe Es un identificador de tres partes que sigue este formato: nombre_servidor_fuente_datos.nombre_esquema_remoto.nombre_tabla_remota Se recomienda utilizar comillas dobles para las partes nombre_esquema_remoto y nombre_tabla_remota del apodo. Cuando crea un apodo, DB2 intenta acceder a las tablas de catálogo de fuentes de datos (Microsoft SQL Server las denomina tablas del sistema). Esto prueba la conexión con la fuente de datos. Si la conexión falla, el usuario recibe un mensaje de error. Repita este paso para todas las tablas y vistas de bases de datos para las que desea crear apodos. Para obtener más información sobre la sentencia CREATE NICKNAME, consulte el manual Consulta de SQL de DB2. Para obtener más información sobre apodos en general y para verificar las correlaciones de tipos de datos, consulte el manual DB2 Administration Guide. 5.6.1.9 Paso 9: Opcional: Obtener rastreos de ODBC Si tiene problemas al acceder a la fuente de datos, puede obtener información de rastreo de ODBC para analizar y resolver estos problemas. Para asegurarse de que el rastreo ODBC funciona correctamente, utilice la herramienta de rastreo que suministra ODBC Data Source Administrator. El hecho de activar el rastreo afecta al rendimiento del sistema, por lo tanto debe desactivar el rastreo una vez resueltos los problemas. 5.6.2 Revisión de páginas de códigos de Microsoft SQL Server Microsoft SQL Server da soporte a muchas de las opciones comunes de páginas de códigos del Soporte de idiomas nacionales (NLS) soportadas por DB2 UDB. Las fuentes de datos que utilizan el mismo juego de códigos que DB2 no se tienen que convertir. La Tabla 3 lista las páginas de códigos que reciben soporte de DB2 Universal Database y de Microsoft SQL Server. Tabla 3. Opciones de páginas de códigos de DB2 UDB y de Microsoft SQL Server Página de Idioma soportado códigos 1252 Juego de caracteres ISO 850 Multilingüe 437 Inglés de EE.UU. 874 Tailandés 932 Japonés 936 Chino (simplificado) 949 Coreano 950 Chino (tradicional) 1250 Europa Central 1251 Cirílico 1253 Griego 1254 Turco 1255 Hebreo 1256 Árabe Cuando el servidor federado DB2 y Microsoft SQL Server ejecutan distintas páginas de códigos del Soporte de idiomas nacionales (NLS), se deben configurar las fuentes de datos de Microsoft SQL Server para que correspondan con estos equivalentes o bien el código del cliente debe ser capaz de detectar la discrepancia y marcarla como un error o correlacionar los datos utilizando su propia semántica. Si no se encuentra ninguna tabla de conversión entre la página de códigos fuente y la página de códigos de destino, DB2 emite un mensaje de error. Consulte la documentación de Microsoft SQL Server para obtener más información. ------------------------------------------------------------------------ 5.7 Acceso a fuentes de datos Informix (capítulo nuevo) Antes de añadir fuentes de datos Informix a un servidor federado de DB2, tiene que instalar y configurar el software de Informix Client SDK en el servidor federado. Consulte los procedimientos de instalación de la documentación que viene con el software de bases de datos Informix para ver detalles específicos sobre cómo instalar el software de Client SDK. Formando parte de la instalación, asegúrese de incluir las bibliotecas de Informix Client SDK. Para configurar el servidor federado para que acceda a datos almacenados en fuentes de datos Informix, tiene que: 1. Instalar DB2 Relational Connect. Consulte 5.3.3, Instalación de DB2 Relational Connect. 2. Aplicar el FixPak de DB2 más reciente. 3. Añadir fuentes de datos Informix al servidor federado. Este capítulo trata el paso 3. Las instrucciones contenidas en este capítulo se aplican a los sistemas operativos AIX, Entorno operativo Solaris y HP-UX. Si hay diferencias específicas para cada sistema operativo, se indican. 5.7.1 Adición de fuentes de datos Informix a un servidor federado Para añadir una fuente de datos Informix a un servidor federado, tiene que: 1. Establecer las variables de entorno y actualizar el registro de perfiles. 2. Enlazar DB2 con el software de cliente Informix. 3. Reciclar la instancia de DB2. 4. Crear el archivo sqlhosts de Informix. 5. Cree el reiniciador. 6. Opcional: Establecer la variable de entorno DB2_DJ_COMM. 7. Crear un servidor. 8. Crear una correlación de usuario. 9. Crear apodos para tablas, vistas y sinónimos de Informix. Estos pasos se explican en detalle en esta sección. 5.7.1.1 Paso 1: Establecer las variables de entorno y actualizar el registro de perfiles Establezca las variables de entorno de la fuente de datos modificando el archivo db2dj.ini y emitiendo el mandato db2set. El archivo db2dj.ini contiene información de configuración sobre el software de cliente Informix instalado en el servidor federado. El mandato db2set actualiza el registro del perfil de DB2 con sus valores. En un sistema de bases de datos particionado, puede utilizar un solo archivo db2dj.ini para todos los nodos de una determinada instancia o puede utilizar un archivo db2dj.ini exclusivo para uno o más nodos de una instancia determinada. Un sistema de bases de datos no particionado sólo puede tener un archivo db2dj.ini por instancia. Para establecer las variables de entorno: 1. Edite el archivo db2dj.ini situado en el directorio sqllib/cfg y establezca las siguientes variables de entorno: INFORMIXDIR Establezca la variable de entorno INFORMIXDIR con la vía de acceso al directorio en que está instalado el software de Informix Client SDK; por ejemplo: INFORMIXDIR=informix INFORMIXSERVER Esta variable identifica el nombre del servidor Informix por omisión. INFORMIXSERVER=/informix/csdk Nota: Aunque el reiniciador de Informix no utiliza el valor de esta variable, el cliente Informix necesita que ésta se establezca. El reiniciador utiliza el valor de la opción de servidor node, que especifica el servidor de bases de datos Informix al que se desea acceder. INFORMIXSQLHOSTS Si está utilizando la vía de acceso por omisión para el archivo sqlhosts de Informix ($INFORMIXDIR/etc/sqlhosts), no es necesario que establezca esta variable. Sin embargo, si utiliza para el archivo sqlhosts de Informix una vía de acceso distinta a la predeterminada, tiene que establecer esta variable con el nombre de vía de acceso completa del archivo sqlhosts de Informix. Por ejemplo: INFORMIXSQLHOSTS=/informix/csdk/etc/my_sqlhosts 2. Actualice el archivo .profile de la instancia de DB2 con la variable de entorno de Informix. Puede hacerlo emitiendo los mandatos siguientes para establecer y exportar cada una de las variables: PATH=$INFORMIXDIR/bin:$PATH export PATH INFORMIXDIR= export INFORMIXDIR donde vía_cliente_informix es la vía de acceso del directorio en que está instalado el cliente Informix en el servidor federado. Si un nombre de la vía de acceso contiene un espacio en blanco, utilice comillas (") que delimiten la vía de acceso. 3. Ejecute la instancia de DB2 .profile entrando: . .profile 4. Emita el mandato db2set para actualizar el registro de perfiles de DB2 con los cambios. La sintaxis de este mandato, db2set, depende de la estructura del sistema de bases de datos. Este paso sólo es necesario si utiliza el archivo db2dj.ini en cualquiera de las siguientes estructuras de sistemas de bases de datos: Si utiliza el archivo db2dj.ini en un sistema de bases de datos no particionado o si desea que el archivo db2dj.ini se aplique sólo al nodo actual, emita: db2set DB2_DJ_INI=sqllib/cfg/db2dj.ini Si utiliza el archivo db2dj.ini en un sistema de bases de datos particionado y desea que los valores del archivo db2dj.ini se apliquen a todos los nodos de esta instancia, emita: db2set -g DB2_DJ_INI = sqllib/cfg/db2dj.ini Si utiliza el archivo db2dj.ini en un sistema de bases de datos particionado y desea que los valores del archivo db2dj.ini se apliquen a un nodo específico, emita: db2set -i INSTANCEX 3 DB2_DJ_INI=sqllib/cfg/node3.ini donde: INSTANCEX Es el nombre de la instancia. 3 Es el número de nodo listado en el archivo db2nodes.cfg. node3.ini Es la versión modificada y con el nombre cambiado del archivo db2dj.ini. 5.7.1.2 Paso 2: Enlazar con el software de cliente Informix de DB2 Para habilitar el acceso a fuentes de datos Informix, el servidor federado de DB2 debe estar editado con enlace a las bibliotecas del cliente. El proceso de editar con enlace crea un reiniciador para cada fuente de datos con la que se va a comunicar el servidor federado. Cuando se ejecuta el script djxlinkInformix, se crea la biblioteca del reiniciador de Informix. Para emitir el script djxlinkInformix, escriba: djxlinkInformix Nota: El script djxlinkInformix sólo crea la biblioteca del reiniciador de Informix. Es otro script, el script djxlink, el que intenta crear una biblioteca de reiniciador para cada fuente de datos soportada por DB2 Universal Database (Oracle, Microsoft SQL Server, etc.). Si sólo dispone del software de cliente para algunas de las fuentes de datos instaladas, cuando emita el script djxlink recibirá un mensaje de error para cada una de las fuentes de datos que falten. 5.7.1.3 Paso 3: Reciclar la instancia de DB2 Para asegurarse de que las variables de entorno están definidas en el programa, recicle la instancia de DB2. Cuando recicla la instancia, renueva la instancia de DB2 para que acepte los cambios realizados. Emita los siguientes mandatos para reciclar la instancia de DB2: En servidores DB2 para AIX, Entorno operativo Solaris y HP-UX: db2stop db2start 5.7.1.4 Paso 4: Crear el archivo sqlhosts de Informix Este archivo especifica la ubicación de cada servidor de bases de datos Informix y el tipo de conexión (protocolo) para el servidor de bases de datos. Para obtener más información sobre cómo definir este archivo, consulte el manual de Informix Administrators Guide for Informix Dynamic Server. Aviso: Si no define el nombre del servidor de bases de datos Informix en el archivo sqlhosts, cuando realice una operación que requiera conexión con el servidor de bases de datos Informix recibirá un error. 5.7.1.5 Paso 5: Crear el reiniciador Utilice la sentencia CREATE WRAPPER para especificar el reiniciador que se utilizará para acceder a fuentes de datos Informix. Los reiniciadores son mecanismos que utilizan los servidores federados para comunicarse con fuentes de datos y recuperar datos de las mismas. El siguiente ejemplo muestra una sentencia CREATE WRAPPER: CREATE WRAPPER informix donde informix es el nombre_reiniciador; informix es el nombre de reiniciador por omisión utilizado con el software de Informix Client SDK. Puede sustituir el nombre de reiniciador por omisión por el nombre que elija. Sin embargo, si lo hace, debe también incluir el parámetro LIBRARY y el nombre de la biblioteca del reiniciador correspondiente al servidor federado en la sentencia CREATE WRAPPER. Consulte la sentencia CREATE WRAPPER en el manual Consulta de SQL de DB2 para obtener más información sobre nombres de bibliotecas de reiniciadores. Los nombres de bibliotecas de reiniciadores para Informix son: * libinformix.a (AIX) * libinformix.so (Entorno operativo Solaris) * libinformix.sl (HP-UX) 5.7.1.6 Paso 6: Opcional: Establecer la variable de entorno DB2_DJ_COMM Para mejorar el rendimiento cuando se acceda a la fuente de datos Informix, establezca la variable de entorno DB2_DJ_COMM en el servidor federado. Esta variable determina si se carga un reiniciador cuando se inicializa el servidor federado. Establezca la variable de entorno DB2_DJ_COMM de modo que incluya la biblioteca del reiniciador que corresponde al reiniciador que ha especificado en el paso anterior. Si está utilizando las interfaces de línea de mandatos del shell Korn o del shell Bourne, utilice los mandatos de exportación siguientes: En servidores DB2 para AIX: DB2_DJ_COMM='libinformix.a' export DB2_DJ_COMM En servidores DB2 para el Entorno operativo Solaris: DB2_DJ_COMM='libinformix.so' export DB2_DJ_COMM En servidores DB2 para HP-UX: DB2_DJ_COMM='libinformix.sl' export DB2_DJ_COMM Asegúrese de que no hay espacios junto al signo igual (=). Si está utilizando la interfaz de línea de mandatos del shell C, establezca las variables de entorno mediante los mandatos siguientes: setenv DB2_DJ_COMM 'libinformix.a' (servidores DB2 para AIX) setenv DB2_DJ_COMM 'libinformix.so' (servidores DB2 para el Entorno operativo Solaris) setenv DB2_DJ_COMM 'libinformix.sl' (servidores DB2 para HP--UX) Consulte el manual Consulta de SQL de DB2 para obtener más información sobre nombres de bibliotecas de reiniciadores y sobre la variable de entorno DB2_DJ_COMM. 5.7.1.7 Paso 7: Crear el servidor Utilice la sentencia CREATE SERVER para definir cada servidor Informix a cuyas fuentes de datos desea acceder. La sintaxis de esta sentencia es: CREATE SERVER nombre_servidor TYPE tipo_servidor VERSION versión_servidor WRAPPER nombre_reiniciador OPTIONS (NODE 'nombre_nodo', DBNAME 'nombre_basedatos') donde: nombre_servidor Es un nombre que el usuario asigna al servidor de bases de datos Informix. Este nombre debe ser exclusivo. TYPE tipo_servidor Especifica el tipo de fuente de datos cuyo acceso está configurando. Nota: Para el reiniciador de Informix, el tipo_servidor debe ser informix. VERSION versión_servidor Es la versión del servidor de bases de datos Informix al que desea acceder. Las versiones de Informix soportadas son 5, 7, 8 y 9. WRAPPER nombre_reiniciador Es el nombre que ha especificado en la sentencia CREATE WRAPPER. NODE 'nombre_nodo' Es el nombre del nodo en que reside nombre_servidor. El nombre_nodo se debe definir en el archivo sqlhosts de Informix (vea el paso 4). Aunque el nombre_nodo se especifica como opción en la sentencia CREATE SERVER, es necesario para las fuentes de datos Informix. Este valor es sensible a mayúsculas y minúsculas. Consulte el manual Consulta de SQL de DB2 para obtener información sobre opciones adicionales. DBNAME 'nombre_basedatos' Es el nombre de la base de datos Informix a la que desea acceder. A continuación se muestra un ejemplo de la sentencia CREATE SERVER: CREATE SERVER asia TYPE informix VERSION 9 WRAPPER informix OPTIONS (NODE 'abc', DBNAME 'ventas') Las opciones de servidor FOLD_ID y FOLD_PW afectan al hecho de que el reiniciador convierta o no el ID de usuario y la contraseña en mayúsculas o minúsculas, antes de enviarlos a Informix. A continuación se muestra un ejemplo de la sentencia CREATE SERVER con las opciones de servidor FOLD_ID y FOLD_PW: CREATE SERVER asia TYPE informix VERSION 9 WRAPPER informix OPTIONS (NODE 'abc', DBNAME 'ventas', FOLD_ID 'U', FOLD_PW 'U') 5.7.1.8 Paso 8: Crear una correlación de usuario Si un ID de usuario o contraseña del servidor federado de DB2 no coinciden con el ID de usuario o contraseña de una fuente de datos Informix, utilice la sentencia CREATE USER MAPPING para correlacionar el ID de usuario local con el ID de usuario y la contraseña definidos en la fuente de datos Informix; por ejemplo: CREATE USER MAPPING FOR idsuario_local SERVER nombre_servidor OPTIONS (REMOTE_AUTHID 'idusuario_remoto', REMOTE_PASSWORD 'contraseña_remota') donde: idusuario_local Es el ID de usuario local que está correlacionando con un ID de usuario definido en una fuente de datos Informix. SERVER nombre_servidor Es el nombre de la fuente de datos Informix definida en la sentencia CREATE SERVER. REMOTE_AUTHID 'idusuario_remoto' Es el ID de usuario del servidor de bases de datos Informix con el que está correlacionando idusuario_local. Este valor es sensible a las mayúsculas y minúsculas a no ser que la opción de servidor FOLD_ID se establezca en 'U' o 'L' en la sentencia CREATE SERVER. REMOTE_PASSWORD 'contraseña_remota' Es la contraseña asociada con idusuario_remoto. Este valor es sensible a las mayúsculas y minúsculas a no ser que la opción de servidor FOLD_PW se establezca en 'U' o 'L' en la sentencia CREATE SERVER. A continuación se muestra un ejemplo de la sentencia CREATE USER MAPPING: CREATE USER MAPPING FOR robert SERVER asia OPTIONS (REMOTE_AUTHID 'bob', REMOTE_PASSWORD 'day2night') Puede utilizar el registro especial de DB2 USER para correlacionar el ID de autorización de la persona que emite la sentencia CREATE USER MAPPING con el ID de autorización de la fuente de datos especificado en la opción de usuario REMOTE_AUTHID. A continuación se muestra un ejemplo de la sentencia CREATE USER MAPPING que incluye el registro especial USER: CREATE USER MAPPING FOR USER SERVER asia OPTIONS (REMOTE_AUTHID 'bob', REMOTE_PASSWORD 'day2night') Consulte el manual Consulta de SQL de DB2 para obtener más información sobre opciones adicionales. 5.7.1.9 Paso 9: Crear apodos para tablas, vistas y sinónimos de Informix Asigne un apodo a cada tabla, vista o sinónimo de Informix ubicados en su fuente de datos Informix. Los apodos pueden tener una longitud de 128 caracteres. Utilizará estos apodos cuando consulte la fuente de datos Informix. DB2 convertirá los nombres de servidor, esquema y tabla a mayúsculas a no ser que los encierre entre comillas ("). El siguiente ejemplo muestra una sentencia CREATE NICKNAME: CREATE NICKNAME apodo FOR servidor."esquema_remoto"."tabla_remota" donde: apodo Es un apodo exclusivo que se utiliza para identificar la tabla, vista o sinónimo de Informix. servidor."esquema_remoto"."tabla_remota" Es un identificador de tres partes para el objeto remoto. o servidor es el nombre asignado al servidor de bases de datos Informix en la sentencia CREATE SERVER. o esquema_remoto es el nombre del esquema remoto al que pertenece la tabla, vista o sinónimo. o tabla_remota es el nombre de la tabla, vista o sinónimo remotos a que desea acceder. A continuación se muestra un ejemplo de la sentencia CREATE NICKNAME: CREATE NICKNAME ventasjapón FOR asia."datosventas"."japón" Repita este paso para cada tabla o vista para la que desee crear un apodo. Cuando cree el apodo, DB2 utilizará la conexión para consultar el catálogo de fuentes de datos. Esta consulta prueba la conexión con la fuente de datos. Si la conexión no funciona, recibirá un mensaje de error. Consulte el manual Consulta de SQL de DB2 para obtener más información sobre la sentencia CREATE NICKNAME. Para obtener más información sobre apodos en general y para verificar correlaciones de tipos de datos, consulte el manual DB2 Administration Guide. ------------------------------------------------------------------------ Administración Tabla de contenido parcial * Administration Guide o 6.1 Actualización disponible * Guía de administración: Planificación o 7.1 Capítulo 8. Diseño físico de bases de datos + 7.1.1 Consideraciones sobre el diseño de espacios de tablas + 7.1.1.1 Optimización del rendimiento de los espacios de tablas cuando se colocan datos al asalto o 7.2 Apéndice D. Soporte de idioma nacional (NLS) + 7.2.1 Soporte de código de país/región y página de códigos: + 7.2.2 Consideraciones sobre la importación/exportación/carga -- Restricciones para las páginas de códigos 1394 y 5488 * Guía de administración: Rendimiento o 8.1 Esquemas de las tablas temporales del sistema o 8.2 Capítulo 8. Rendimiento operativo + 8.2.1 Agrupación de almacenamientos intermedios basada en bloques + 8.2.1.1 Ejemplos de agrupación de almacenamientos intermedios basada en bloques o 8.3 Capítulo 10. Ajuste de la configuración mediante la adición de procesadores + 8.3.1 Problemas al añadir nodos a una base de datos particionada o 8.4 Apéndice A. Variables de registro y de entorno de DB2 * Administering Satellites Guide and Reference o 9.1 Configuración de la Versión 7.2 de DB2 Personal Edition y DB2 Workgroup Edition como satélites + 9.1.1 Requisitos previos + 9.1.1.1 Consideraciones sobre la instalación + 9.1.2 Configuración del sistema Versión 7.2 para la sincronización + 9.1.3 Instalación del FixPak 2 o superior en un sistema Versión 6 Enterprise Edition + 9.1.3.1 Actualización de la Versión 6 de DB2 Enterprise Edition para utilizarlo como servidor de control de DB2 + 9.1.4 Actualización de una Versión 6 del Centro de control y del Centro de administración de satélites * Consulta de mandatos o 10.1 Actualización disponible o 10.2 db2updv7 - Actualizar la base de datos al nivel de arreglo actual de la versión 7 o 10.3 REBIND + Missing value o 10.4 db2inidb - Inicializar una base de datos reflejada * Data Recovery and High Availability Guide and Reference o 11.1 Data Recovery and High Availability Guide and Reference Available Online o 11.2 Nuevo comportamiento de la copia de seguridad y restauración cuando LOGRETAIN=CAPTURE o 11.3 Ahora, NEWLOGPATH2 se llama DB2_NEWLOGPATH2 o 11.4 Elección de un método de copia de seguridad para DB2 Data Links Manager en AIX o Solaris * Data Movement Utilities Guide and Reference o 12.1 Soporte de página de códigos para los programas de utilidad de importación, exportación y carga o 12.2 db2relocatedb (nuevo mandato) + db2relocatedb - Reubicar base de datos o 12.3 Capítulo 2. Importación + 12.3.1 Utilización de la importación con inserciones en almacenamiento intermedio o 12.4 Capítulo 3. Carga + 12.4.1 Estados de pendiente después de una operación de carga + 12.4.2 Limitaciones y restricciones de carga + 12.4.3 Modificador de tipo de archivo totalfreespace o 12.5 Capítulo 4. AutoLoader + 12.5.1 rexecd necesario para ejecutar AutoLoader cuando la autentificación se establece en YES o 12.6 AutoLoader puede colgarse durante un fork o 12.7 Apéndice C. Formatos de archivo de programa de utilidad de Exportación/Importación/Carga * Replication Guide and Reference o 13.1 Duplicación y servidores que no son IBM o 13.2 Duplicación en Windows 2000 o 13.3 Error conocido al guardar archivos de SQL o 13.4 Mantenimiento de DB2 o 13.5 Programa de utilidad de diferencia de datos en la Web o 13.6 Capítulo 3. Escenario de duplicación de datos + 13.6.1 Escenarios de duplicación o 13.7 Capítulo 5. Planificación de la duplicación + 13.7.1 Nombres de tabla y de columna + 13.7.2 Duplicación de DATALINK + 13.7.3 Restricciones de LOB + 13.7.4 Planificación de la duplicación o 13.8 Capítulo 6. Configuración del entorno de duplicación + 13.8.1 Requisito previo a una actualización en cualquier parte (update-anywhere) + 13.8.2 Configuración del entorno de duplicación o 13.9 Capítulo 8. Determinación de problemas o 13.10 Capítulo 9. Capture y Apply para AS/400 o 13.11 Capítulo 10. Capture y Apply para OS/390 + 13.11.1 Requisitos previos para DB2 DataPropagator para OS/390 + 13.11.2 Esquemas de codificación UNICODE y ASCII en OS/390 + 13.11.2.1 Elección de un esquema de codificación + 13.11.2.2 Establecimiento de esquemas de codificación o 13.12 Capítulo 11. Capture y Apply para plataformas UNIX + 13.12.1 Establecimiento de variables de entorno para Capture y Apply en UNIX y Windows o 13.13 Capítulo 14. Estructuras de tabla o 13.14 Capítulo 15. Mensajes de Capture y Apply o 13.15 Apéndice A. Inicio de los programas Capture y Apply desde dentro de una aplicación * System Monitor Guide and Reference o 14.1 db2ConvMonStream * Troubleshooting Guide o 15.1 Inicio de DB2 en Windows 95, Windows 98 y Windows ME cuando el usuario no tiene iniciada una sesión o 15.2 Capítulo 1. Buenas prácticas para la resolución de problemas + 15.2.1 Herramienta para analizar el problema y recopilar el entorno + 15.2.1.1 Salidas de la recopilación + 15.2.1.2 Visualización de detailed_system_info.html + 15.2.1.3 Visualización de la sintaxis de DB2 Support Tool de página en página o 15.3 Capítulo 2. Resolución de problemas de DB2 Universal Database Server o 15.4 Capítulo 8. Resolución de problemas de DB2 Data Links Manager * Utilización de DB2 Universal Database en plataformas de 64 bits o 16.1 Capítulo 5. Configuración + 16.1.1 LOCKLIST + 16.1.2 shmsys:shminfo_shmmax o 16.2 Capítulo 6. Restricciones * Administración y programación del expansor de XML * MQSeries o 18.1 Instalación y configuración de DB2 MQSeries Functions + 18.1.1 Instalación de MQSeries + 18.1.2 Instalación de AMI de MQSeries + 18.1.3 Habilitación de DB2 MQSeries Functions o 18.2 Estilos de gestión de mensajes de MQSeries o 18.3 Estructura de mensajes o 18.4 Visión general funcional de MQSeries + 18.4.1 Limitaciones + 18.4.2 Códigos de error o 18.5 Escenarios de aplicación + 18.5.1 Gestión básica de mensajes + 18.5.2 Envío de mensajes + 18.5.3 Recuperación de mensajes + 18.5.4 Conectividad de aplicación a aplicación + 18.5.4.1 Comunicaciones tipo petición y respuesta + 18.5.4.2 Publicación y suscripción o 18.6 enable_MQFunctions + enable_MQFunctions o 18.7 disable_MQFunctions + disable_MQFunctions ------------------------------------------------------------------------ Administration Guide ------------------------------------------------------------------------ 6.1 Actualización disponible Se ha actualizado el manual Administration Guide y el último PDF está disponible para bajarlo en línea desde http://www.ibm.com/software/data/db2/udb/winos2unix/support. La información contenida en estas notas es adicional a la consulta actualizada. Toda la documentación actualizada también está disponible en CD. Se puede solicitar dicho CD a través del servicio de DB2 y utilizando el número de PTF U478862. Puede encontrar información sobre cómo entrar en contacto con el Servicio de DB2 en http://www.ibm.com/cgi-bin/db2www/data/db2/udb/winos2unix/support/help.d2w/report . ------------------------------------------------------------------------ Guía de administración: Planificación ------------------------------------------------------------------------ 7.1 Capítulo 8. Diseño físico de bases de datos 7.1.1 Consideraciones sobre el diseño de espacios de tablas 7.1.1.1 Optimización del rendimiento de los espacios de tablas cuando se colocan datos al asalto DB2_PARALLEL_IO DB2_PARALLEL_IO también afecta a los espacios de tablas en los que se ha definido más de un contenedor. Si no se establece la variable de registro, el paralelismo de E/S es igual al número de contenedores que tiene el espacio de tablas. Si se establece la variable de registro, el paralelismo de E/S es igual al resultado del tamaño de captación previa dividido por el tamaño de extensión. Es posible que desee establecer la variable de registro si los contenedores individuales del espacio de tablas están esparcidos en varios discos físicos. Por ejemplo, un espacio de tablas tiene dos contenedores y el tamaño de captación previa es cuatro veces el tamaño de extensión. Si no se establece la variable de registro, una petición de captación previa para este espacio de tablas se dividirá en dos peticiones (siendo cada una de ellas para dos extensiones). Siempre que los captadores previos estén disponibles para trabajar, dos de ellos pueden trabajar sobre estas peticiones en paralelo. En caso de establecer la variable de registro, una petición de captación previa para este espacio de tablas se dividirá en cuatro peticiones (una extensión por petición), con la posibilidad de que cuatro captadores previos den servicio a las peticiones en paralelo. En este ejemplo, si cada uno de los dos contenedores tuviera dedicado un solo disco, el hecho de establecer la variable de registro para este espacio de tablas puede tener como consecuencia una contención en estos discos, puesto que habría dos captadores previos accediendo a la vez a cada uno de los dos discos. Sin embargo, si cada uno de los dos contenedores estuviera esparcido en varios discos, al establecer esta variable de registro se permitiría, potencialmente, el acceso a cuatro discos distintos a la vez. ------------------------------------------------------------------------ 7.2 Apéndice D. Soporte de idioma nacional (NLS) 7.2.1 Soporte de código de país/región y página de códigos: En la tabla de Idiomas y juegos de códigos soportados, la página de códigos 5488 también se conoce como GB 18030, y la página de códigos 1394 también se conoce como ShiftJISX 0213. 7.2.2 Consideraciones sobre la importación/exportación/carga -- Restricciones para las páginas de códigos 1394 y 5488 Los datos de las páginas de códigos 1394 (ShiftJISX 0213) y 5488 (GB 18030) se pueden transferir a una base de datos Unicode utilizando los programas de utilidad de carga o importación. El programa de utilidad de exportación se puede utilizar para transferir datos de una base de datos Unicode a un archivo de datos de las páginas de códigos 1394 y 5488. Sólo se soportan conexiones entre un cliente Unicode y un servidor Unicode, por lo que es necesario utilizar un cliente Unicode o establecer la variable de registro DB2CODEPAGE de DB2 en 1208 antes de utilizar los programas de utilidad de carga, importación o exportación. La conversión de las páginas de códigos 1394 ó 5488 a Unicode puede tener como consecuencia una expansión. Por ejemplo, un carácter de 2 bytes se puede almacenar en forma de dos caracteres Unicode de 16 bits en las columnas GRAPHIC. Deberá cerciorarse de que las columnas de destino de la base de datos Unicode son suficientemente anchas para contener cualquier byte Unicode expandido. ------------------------------------------------------------------------ Guía de administración: Rendimiento ------------------------------------------------------------------------ 8.1 Esquemas de las tablas temporales del sistema El esquema de una tabla temporal del sistema está determinado por el ID de aplicación y el ID de autorización que la crean. Si se dispone de estos datos, el esquema en que se crea la tabla es . En algunas circunstancias, las tablas se crean utilizando únicamente uno de estos ID para determinar el esquema y, a veces, ninguno. Esto puede tener como consecuencia tablas tales como AUTHID.TEMPTABLENAME o .TEMPTABLENAME. Puede ver la información de esquema de estas tablas mediante el mandato GET SNAPSHOT. Para obtener información sobre este mandato, consulte el manual Consulta de mandatos ------------------------------------------------------------------------ 8.2 Capítulo 8. Rendimiento operativo 8.2.1 Agrupación de almacenamientos intermedios basada en bloques Sólo se soporta esta característica en el Entorno operativo Sun Solaris. Debido a la actividad general de E/S, las páginas captadas previamente de disco constituyen una operación cara. La captación previa de DB2 mejora significativamente el rendimiento cuando se puede solapar el proceso con la E/S. La mayoría de plataformas proporcionan primitivos de alto rendimiento para leer páginas contiguas de disco en porciones no contiguas de la memoria. Estos primitivos se suelen denominar "lectura dispersa" o "E/S vectorial". En algunas plataformas, el rendimiento de estos primitivos no puede competir con la realización de E/S en tamaños de bloque grandes. Por omisión, las agrupaciones de almacenamientos intermedios se basan en páginas. Es decir, que las páginas contiguas de disco se captan previamente en páginas no contiguas de la memoria. El rendimiento de la captación previa se puede mejorar más en dichas plataformas si se puede leer páginas de disco en páginas contiguas de una agrupación de almacenamientos intermedios. Existe una variable de registro, DB2_BLOCK_BASED_BP, que permite crear en la agrupación de almacenamientos intermedios una sección que contenga conjuntos de páginas contiguas. A estos conjuntos de páginas contiguas se les denomina "bloques". Estableciendo esta variable de registro, una captación previa secuencial leerá las páginas de disco directamente en estos bloques, en lugar de leer cada una de las páginas individualmente. Esto mejorará el rendimiento de E/S. Para obtener más información sobre esta variable de registro, consulte el apartado 'Registry and Environment Variables' del manual Administration Guide. Es posible vincular varios espacios de tablas de tamaños de extensión distintos a una agrupación de almacenamientos intermedios del mismo tamaño de bloque. Existe una gran relación entre los tamaños de extensión y los tamaños de bloque, aunque se trata de conceptos distintos. Una extensión es la granularidad con que se separan los espacios de tablas en varios contenedores. Un bloque es la única granularidad con que los servidores de E/S que realizan peticiones secuenciales de captación previa considerarán el realizar E/S basada en bloques. Las peticiones secuenciales individuales de captación previa utilizan páginas de tamaño extendido. Cuando se recibe una petición de captación previa de este tipo, el servidor de E/S determina el coste y el beneficio de realizar cada una de las peticiones como E/S basada en bloques (si existe un área basada en bloques en la agrupación de almacenamientos intermedios), en lugar de realizar la E/S basada en páginas mediante el método de lectura dispersa. El beneficio de realizar la E/S como E/S basada en bloques es el incremento de rendimiento obtenido de leer el disco contiguo en memoria contigua. El coste es la cantidad de memoria de agrupación de almacenamientos intermedios desaprovechada que puede resultar de la utilización de este método. La memoria de agrupación de almacenamientos intermedios se puede desaprovechar por dos motivos al realizar E/S basada en bloques: * El número de páginas de la petición de captación previa contiene un número de páginas inferior al de un bloque. Es decir, el tamaño de extensión es menor que el tamaño de bloque. * Algunas de las páginas solicitadas formando parte de la petición de captación previa ya se encuentran en el área de páginas de la agrupación de almacenamientos intermedios. Nota: Los bloques del área basada en bloques de una agrupación de almacenamientos intermedios no se pueden subdividir. Todas las páginas del bloque deben ser contiguas. Como consecuencia, existe la posibilidad de que se desaproveche espacio. El servidor de E/S admite algunas páginas desaprovechadas en cada bloque, a fin de beneficiarse de realizar una E/S basada en bloques. Sin embargo, cuando se desaproveche una parte excesiva de un bloque, el servidor de E/S invertirá el proceso para utilizar una captación previa basada en páginas en el área de páginas de la agrupación de almacenamientos intermedios. Como resultado, parte de la E/S realizada durante la captación previa no estará basada en bloques. Ésta no es una condición óptima. Para obtener un rendimiento óptimo, es conveniente que los espacios de tablas del mismo tamaño de extensión estén vinculados a una agrupación de almacenamientos intermedios que tenga el mismo tamaño de bloque. También se puede lograr un buen rendimiento si el tamaño de extensión de algunos espacios de tablas es mayor que el tamaño de bloque de la agrupación de almacenamientos intermedios a la que están vinculados. No es aconsejable vincular espacios de tablas a una agrupación de almacenamientos intermedios cuando el tamaño de extensión es menor que el tamaño de bloque. Nota: El área de bloques de una agrupación de almacenamientos intermedios sólo se utiliza para la captación previa secuencial. Si el sistema implica poca captación previa secuencial, o ninguna, el área de bloques será una porción desaprovechada de la agrupación de almacenamientos intermedios. Para una agrupación de almacenamientos intermedios, no se pueden configurar a la vez AWE y el soporte basado en bloques. Si las variables de registro DB2_AWE y DB2_BLOCK_BASED_BP hacen referencia a la misma agrupación de almacenamientos intermedios, se dará prioridad a AWE. En este caso, se inhabilitará el soporte basado en bloques y sólo se rehabilitará una vez que se inhabilite AWE. Una agrupación de almacenamientos intermedios que utiliza almacenamiento ampliado no soporta la E/S basada en bloques. 8.2.1.1 Ejemplos de agrupación de almacenamientos intermedios basada en bloques Antes de trabajar con cualquiera de los ejemplos, deberá conocer los identificadores de las agrupaciones de almacenamientos intermedios del sistema. Puede ver el ID de una agrupación de almacenamientos intermedios en la columna BUFFERPOOLID o en la vista de catálogos del sistema SYSCAT.BUFFERPOOLS. Escenario 1 Dispone de una agrupación de almacenamientos intermedios con un ID de 4 y que contiene 1000 páginas. Desea crear un área de bloques formada por 700 páginas, en la que cada bloque contenga 32 páginas. Debe ejecutar el mandato siguiente: db2set DB2_BLOCK_BASED_BP=4,700,32 Cuando se inicie la base de datos, se creará la agrupación de almacenamientos intermedios con ID 4, con un área de bloques de 672 páginas y un área de páginas de 328 páginas. En este ejemplo, 700 no se puede dividir equitativamente entre 32. Esto significa que el tamaño del área de bloques especificado se ha tenido que reducir al límite de tamaño de bloque más próximo utilizando la fórmula siguiente: ((tamaño del área de bloques)) FLOOR(----------------------------) X tamaño de bloque ( (tamaño bloque) ) ( 700 ) = FLOOR(-----------------) X 32 ( 32 ) = 21 x 32 = 672 Escenario 2 Dispone de una agrupación de almacenamientos intermedios con un ID de 11 y que contiene 3000 páginas. Desea crear un área de bloques formada por 2700 páginas. Debe ejecutar el mandato siguiente: db2set DB2_BLOCK_BASED_BP=11,2700 Cuando se inicie la base de datos, se creará la agrupación de almacenamientos intermedios con ID 11, con un área de bloques de 2688 páginas y un área de páginas de 312 páginas. Si no se especifica ningún valor explícito para el tamaño de bloque, se utiliza el valor por omisión de 32. En este ejemplo, 2700 no se puede dividir equitativamente entre 32. Esto significa que el tamaño del área de bloques especificado se ha tenido que reducir al límite de tamaño de bloque más próximo utilizando la fórmula siguiente: ((tamaño del área de bloques)) FLOOR(----------------------------) X tamaño de bloque ( (tamaño bloque) ) ( 2700 ) = FLOOR(-----------------) X 32 ( 32 ) = 84 x 32 = 2688 ------------------------------------------------------------------------ 8.3 Capítulo 10. Ajuste de la configuración mediante la adición de procesadores 8.3.1 Problemas al añadir nodos a una base de datos particionada Cuando se añaden nodos a una base de datos particionada que tiene uno o más espacios de tablas temporales del sistema con un tamaño de página diferente del tamaño de página por omisión (4 KB), puede recibir este mensaje de error: "SQL6073N Ha fallado la operación de añadir nodo" y un SQLCODE. Esto se produce porque, cuando se crea el nodo sólo, existe la agrupación de almacenamientos intermedios IBMDEFAULTBP con un tamaño de página de 4 KB. Por ejemplo, puede utilizar el mandato db2start para añadir un nodo a la base de datos particionada actual: DB2START NODENUM 2 ADDNODE HOSTNAME newhost PORT 2 Si la base de datos particionada tiene espacios de tablas temporales del sistema con el tamaño de página por omisión, se devuelve el siguiente mensaje: SQL6075W La operación Iniciar gestor de bases de datos ha añadido satisfactoriamente el nodo. El nodo no está activo hasta que se detienen todos los nodos y se vuelve a iniciar. Sin embargo, si la base de datos particionada tiene espacios de tablas temporales del sistema que no tienen el tamaño de página por omisión, se devuelve el mensaje siguiente: SQL6073N Ha fallado la operación de nodo. SQLCODE = "<-902>" En un ejemplo similar, puede utilizar el mandato ADD NODE después de actualizar manualmente el archivo db2nodes.cfg con la nueva descripción de nodo. Después de editar el archivo y ejecutar el mandato ADD NODE con una base de datos particionada que tiene espacios de tablas temporales del sistema con el tamaño de página por omisión, se devuelve el mensaje siguiente: DB20000I El mandato ADD NODE se completó satisfactoriamente. Sin embargo, si la base de datos particionada tiene espacios de tablas temporales del sistema que no tienen el tamaño de página por omisión, se devuelve el mensaje siguiente: SQL6073N Ha fallado la operación de nodo. SQLCODE = "<-902>" Un modo de evitar los problemas descritos previamente consiste en ejecutar: DB2SET DB2_HIDDENBP=16 antes de emitir db2start o el mandato ADD NODE. Esta variable de registro permite que DB2 asigne agrupaciones de almacenamientos intermedios ocultas de 16 páginas cada una utilizando un tamaño de página diferente del valor por omisión. Esto permite que la operación ADD NODE se complete satisfactoriamente. Otro modo de evitar estos problemas consiste en especificar la cláusula WITHOUT TABLESPACES en ADD NODE o el mandato db2start. Después de esto, deberá crear las agrupaciones de almacenamientos intermedios utilizando la sentencia CREATE BUFFERPOOL y asociar los espacios de tablas temporales del sistema con la agrupación de almacenamientos intermedios utilizando la sentencia ALTER TABLESPACE. Cuando se añaden nodos a un grupo de nodos existentes que tienen uno o más espacios de tablas con un tamaño de página diferente del tamaño de página por omisión (4 KB), puede recibir el mensaje de error: "SQL0647N La agrupación de almacenamientos intermedios "" no está activa actualmente.". Esto se produce porque las agrupaciones de almacenamientos intermedios que no tienen el tamaño de página por omisión creadas en el nuevo nodo no se han activado para los espacios de tablas. Por ejemplo, puede utilizar la sentencia ALTER NODEGROUP para añadir un nodo a un grupo de nodos: DB2START CONNECT TO mpp1 ALTER NODEGROUP ng1 ADD NODE (2) Si el grupo de nodos tiene espacios de tablas con el tamaño de página por omisión, se devuelve el mensaje siguiente: SQL1759W Es necesario redistribuir el grupo de nodos para cambiar la posición de los datos para que los objetos del grupo de nodos " incluyan algunos nodos añadidos o excluyan algunos nodos eliminados. Sin embargo, si el grupo de nodos tiene espacios de tablas que no tienen el tamaño de página por omisión, el mensaje que se devuelve es: SQL0647N La agrupación de almacenamientos intermedios "" no está activa actualmente. Un modo de evitar este problema consiste en crear agrupaciones de almacenamientos intermedios para cada tamaño de página y, a continuación, volver a conectar con la base de datos antes de emitir la sentencia ALTER NODEGROUP: DB2START CONNECT TO mpp1 CREATE BUFFERPOOL bp1 SIZE 1000 PAGESIZE 8192 CONNECT RESET CONNECT TO mpp1 ALTER NODEGROUP ng1 ADD NODE (2) Un segundo modo de evitar el problema consiste en ejecutar: DB2SET DB2_HIDDENBP=16 antes de emitir el mandato db2start y las sentencias CONNECT y ALTER NODEGROUP. Otro problema se puede producir cuando se utiliza la sentencia ALTER TABLESPACE para añadir un espacio de tablas a un nodo. Por ejemplo: DB2START CONNECT TO mpp1 ALTER NODEGROUP ng1 ADD NODE (2) WITHOUT TABLESPACES ALTER TABLESPACE ts1 ADD ('ts1') ON NODE (2) Estas series de mandatos y sentencias generan el mensaje de error SQL0647N (no el mensaje esperado SQL1759W). Para completar este cambio correctamente, debe volver a conectar con la base de datos después de la sentencia ALTER NODEGROUP... WITHOUT TABLESPACES. DB2START CONNECT TO mpp1 ALTER NODEGROUP ng1 ADD NODE (2) WITHOUT TABLESPACES CONNECT RESET CONNECT TO mpp1 ALTER TABLESPACE ts1 ADD ('ts1') ON NODE (2) Otro modo de evitar el problema consiste en ejecutar: DB2SET DB2_HIDDENBP=16 antes de emitir el mandato db2start y las sentencias CONNECT, ALTER NODEGROUP y ALTER TABLESPACE. ------------------------------------------------------------------------ 8.4 Apéndice A. Variables de registro y de entorno de DB2 Tabla 4. Variables relativas al rendimiento Nombre de variable Sistema Valores operativo Descripción DB2_BLOCK_BASED_BP Solaris Valor por omisión=None Valores: varía según el parámetro Especifica los valores necesarios para crear un área de bloques en una agrupación de almacenamientos intermedios. El ID de la agrupación de almacenamientos intermedios es necesario y se puede ver en la columna BUFFERPOOLID o en la vista de catálogos del sistema SYSCAT.BUFFERPOOLS. Se debe indicar el número de páginas que se asignarán a la E/S basada en bloques en la agrupación de almacenamientos intermedios. El número de páginas a incluir en un bloque es opcional. El valor por omisión para este parámetro es 32. El formato para usar esta variable de registro es: DB2_BLOCK_BASED_BP=BUFFER POOL ID,BLOCK AREA SIZE,[BLOCK SIZE];... Es posible definir varias agrupaciones de almacenamientos intermedios como basadas en bloques mediante la utilización de la misma variable, con un signo de punto y coma para separar las entradas. El valor de BLOCK SIZE puede ir de 2 a 256. Si no se especifica BLOCK SIZE, se utilizará el valor por omisión (32). Si el BLOCK AREA SIZE especificado es mayor que el 98% del tamaño total de la agrupación de almacenamientos intermedios, la agrupación no se creará basada en bloques. Es buena práctica disponer siempre de una porción de la agrupación de almacenamientos intermedios en el área basada en páginas, puesto que existe la posibilidad de que se necesiten páginas individuales aunque la mayor parte de la E/S del sistema se realice con captación previa secuencial. Si el valor especificado para BLOCK AREA SIZE no es múltiplo de BLOCK SIZE, se reduce al próximo límite del tamaño de bloque. Para obtener más información sobre la E/S basada en bloques, consulte el apartado 8.2.1, Agrupación de almacenamientos intermedios basada en bloques. ------------------------------------------------------------------------ Administering Satellites Guide and Reference ------------------------------------------------------------------------ 9.1 Configuración de la Versión 7.2 de DB2 Personal Edition y DB2 Workgroup Edition como satélites Las siguientes secciones describen cómo configurar la Versión 7.2 de los sistemas DB2 Personal Edition y DB2 Workgroup Edition basados en Windows de modo que se puedan utilizar como satélites con funcionalidad completa en un entorno de satélites. Para obtener información sobre los términos y conceptos utilizados en la siguiente información, consulte el manual Administering Satellites Guide and Reference. Encontrará este manual en el siguiente URL: http://www-4.ibm.com/cgi-bin/db2www/data/db2/udb/winos2unix/support/v6pubs.d2w/en_main Para ver notas técnicas que complementan la información del manual Administering Satellites Guide and Reference, consulte el siguiente URL: http://www-4.ibm.com/cgi-bin/db2www/data/db2/udb/winos2unix/support/browse.d2w/report?type=tech5udb&tech5udb=Y 9.1.1 Requisitos previos Para configurar DB2 Personal Edition o DB2 Workgroup Edition como satélites, necesita: 1. Un servidor de control de DB2 El servidor de control de DB2 es un sistema DB2 Enterprise Edition que se ejecuta en Windows NT o AIX y que tiene instalado el componente Servidor de control. El sistema DB2 Enterprise Edition que utilice debe estar al nivel de la Versión 6 con FixPak 2 o superior o de la Versión 7 con cualquier nivel de FixPak. o Si tiene un sistema Versión 6 Enterprise Edition que desea utilizar como servidor de control de DB2, consulte 9.1.3, Instalación del FixPak 2 o superior en un sistema Versión 6 Enterprise Edition. o Si utiliza la Versión 7 y no tiene el componente Servidor de control instalado, instale este componente, vuelva a instalar los FixPak que ya ha instalado y luego cree la instancia del servidor de control de DB2 y la base de datos de control de satélites. Consulte el manual Administering Satellites Guide and Reference para ver instrucciones sobre cómo crear estos objetos. Nota: Si está instalando un sistema Versión 7.2 Enterprise Edition en Windows NT para utilizarlo como servidor de control de DB2 y desea realizar una instalación de archivo de respuestas, consulte la nota técnica denominada Palabras clave del servidor de control de DB2 para obtener información sobre las palabras clave a especificar en el archivo de respuestas. 2. La instancia del servidor de control de DB2 y la base de datos de control de satélites La instancia del servidor de control de DB2 se suele llamar DB2CTLSV y la base de datos de control de satélites se llama SATCTLDB. La instancia del servidor de control de DB2 y la base de datos de control de satélites están en el sistema Enterprise Edition y, en Windows NT, se crean automáticamente cuando instala DB2 con el componente Servidor de control. Si instala DB2 en AIX, consulte el manual Administering Satellites Guide and Reference para obtener información sobre cómo crear la instancia del servidor de control de DB2 y la base de datos de control de satélites. 3. El Centro de administración de satélites El Centro de administración de satélites es un grupo de herramientas de GUI que puede utilizar para configurar y administrar el entorno de satélites. Puede acceder a este grupo de herramientas desde el Centro de control. Para obtener más información sobre el Centro de administración de satélites y el entorno de satélites, consulte el manual Administering Satellites Guide and Reference y la ayuda en línea disponible desde el Centro de administración de satélites. Si está ejecutando un Centro de control de la Versión 6, consulte el tema 9.1.4, Actualización de una Versión 6 del Centro de control y del Centro de administración de satélites. Si aún no ha utilizado el Centro de administración de satélites para configurar el entorno de satélites y para crear el objeto que representa el nuevo satélite en el Centro de administración de satélites, debe hacerlo antes de instalar el satélite. Para obtener más información, consulte la descripción sobre cómo configurar y probar un entorno de satélites en el manual Administering Satellites Guide and Reference. 4. Un sistema Versión 7.2 Personal Edition o Workgroup Edition que desea utilizar como satélite. 9.1.1.1 Consideraciones sobre la instalación Cuando instala DB2 Personal Edition o DB2 Workgroup Edition, no tiene que seleccionar ningún componente especial para habilitar un sistema a sincronizar. Si tiene intención de realizar una instalación de archivo de respuestas, consulte Cómo realizar una instalación de archivo de respuestas para ver las palabras clave que tiene que especificar al instalar el sistema Versión 7.2. Si está realizando una instalación interactiva del sistema Versión 7.2, consulte 9.1.2, Configuración del sistema Versión 7.2 para la sincronización cuando haya terminado de instalar DB2 para ver los valores que debe definir en el sistema Versión 7.2 para habilitarlo para sincronizar. Cómo realizar una instalación de archivo de respuestas Si está realizando una instalación de archivo de respuestas de la Versión 7.2 de DB2 Personal Edition o DB2 Workgroup Edition, puede definir las siguientes palabras clave en el archivo de respuestas. Si decide no especificar una o más palabras clave durante la instalación de archivo de respuestas, consulte 9.1.2, Configuración del sistema Versión 7.2 para la sincronización para ver los pasos adicionales a seguir después de instalar DB2 para habilitar el sistema Versión 7.2 a sincronizar. También puede seguir las instrucciones de esta sección si desea cambiar cualquiera de los valores especificados durante la instalación de archivo de respuestas. db2.db2satelliteid Define el ID del satélite en el sistema. Nota: Si no especifica esta palabra clave, el ID del satélite se define automáticamente como el ID de usuario utilizado para instalar DB2. Si desea utilizar este ID de usuario como ID del satélite, no tiene que especificar ningún valor para esta palabra clave. db2.db2satelliteappver Define la versión de la aplicación en el sistema. Nota: Si no especifica esta palabra clave, la versión de la aplicación en el satélite se establece automáticamente en V1R0M00. Si desea utilizar este valor como la versión de la aplicación, no tiene que especificar ningún valor para esta palabra clave. db2.satctldb_username Define el nombre de usuario a utilizar para que el sistema se conecte a la base de datos de control de satélites. db2.satctldb_password Define la contraseña que el nombre de usuario pasa al servidor de control de DB2 cuando el nombre de usuario se conecta a la base de datos de control de satélites. Una vez finalizada la instalación de archivo de respuestas, el sistema Versión 7.2 está listo para sincronizar. Debe emitir el mandato db2sync -t en el satélite para verificar que los valores especificados en el satélite son correctos y que el satélite se puede conectar a la base de datos de control de satélites. Para obtener más información sobre cómo realizar una instalación de archivo de respuestas, consulte el manual Administering Satellites Guide and Reference. Notas: 1. En la Versión 7, se necesitan ID de usuario y contraseñas para la creación de todos los servicios en Windows NT y Windows 2000. Estos ID de usuario y contraseñas se especifican en el archivo de respuestas mediante pares de palabras clave. El primer par de palabras clave del archivo de respuestas se convierte en el ID de usuario y contraseña correspondientes a todos los servicios, a no ser que altere temporalmente estos valores para un servicio, especificando el par específico de palabras clave para dicho servicio. En la Versión 6, las palabras clave admin.userid y admin.password se pueden especifican durante una instalación de archivo de respuestas de DB2 Satellite Edition para especificar el ID de usuario y contraseña que utilizaría el Servicio de mandatos remoto. Para la Versión 7.2 de Personal Edition y Workgroup Edition, si especifica estas palabras clave, se utilizan para la instancia de DB2DAS00 en el sistema Versión 7.2. Para un sistema DB2 Versión 7.2, el Servicio de mandatos remoto utilizará el ID de usuario y contraseña que utiliza la instancia de DB2 en el sistema. Si no especifica valores para db2.userid y db2.password, se aplica la regla de valores por omisión descrita anteriormente. 2. En la Versión 6, podía crear una base de datos al instalar DB2 Satellite Edition utilizando una instalación de archivo de respuestas. No puede crear una base de datos durante una instalación de archivo de respuestas en la Versión 7.2 de Personal Edition o Workgroup Edition que tiene intención de utilizar como un satélite. Las siguientes palabras clave (que se describen en el manual Administering Satellites Guide and Reference) no reciben soporte: o db2.userdb_name o db2.userdb_recoverable o db2.userdb_rep_src 9.1.2 Configuración del sistema Versión 7.2 para la sincronización Si instala el sistema versión 7.2 de forma interactiva, debe establecer varios valores en el sistema DB2 Personal Edition o DB2 Workgroup Edition después de instalar DB2 para que el sistema pueda sincronizar. Nota: Puede ejecutar un script del sistema operativo en el sistema para establecer todos los valores en el satélite, excepto el ID de usuario y la contraseña que utiliza el satélite para conectar con la base de datos de control de satélites (consulte el paso 4). 1. Establezca el ID del satélite mediante el mandato db2set. Si instala DB2 Personal Edition o DB2 Workgroup Edition de forma interactiva, el ID de satélite se establece automáticamente en el ID de usuario que se utilizó para instalar DB2. Si desea utilizar este ID de usuario como el ID del satélite, no tiene que llevar a cabo este paso. Para obtener información sobre cómo establecer el ID del satélite, consulte el manual Administering Satellites Guide and Reference. 2. Establezca la versión de la aplicación en el satélite mediante el mandato db2sync -s. Si instala DB2 Personal Edition o DB2 Workgroup Edition de forma interactiva, la versión de la aplicación en el satélite se establece automáticamente en V1R0M00. Si desea utilizar este valor como la versión de la aplicación, no tiene que llevar a cabo este paso. Puede utilizar el mandato db2sync -g en el satélite para ver el valor actual de la versión de la aplicación. Si desea cambiar este valor, emita el mandato db2sync -s. Se le solicitará que proporcione un nuevo valor para la versión de la aplicación. Para obtener más información sobre cómo establecer la versión de la aplicación, consulte el manual Administering Satellites Guide and Reference. 3. Emita los mandatos catalog node y catalog database en el satélite para catalogar la instancia del servidor de control de DB2 y la base de datos de control de satélites, SATCTLDB, en el satélite. También puede utilizar el mandato db2sync -t en el satélite para abrir la aplicación DB2 Synchronizer en modalidad de prueba. Si la base de datos SATCTLDB no está catalogada en el satélite cuando emite el mandato, se abre la ventana Catalogar base de datos de control. Puede utilizar la característica de descubrimiento de DB2 disponible en la ventana Catalogar base de datos de control para catalogar el servidor de control de DB2 y la base de datos SATCTLDB o bien puede escribir el nombre del sistema principal y el nombre del servidor en esta ventana. También se le solicitará que especifique el ID de usuario y contraseña que utilizará el satélite para conectar con la base de datos de control de satélites, tal como se describe en el paso 4. Nota: Después de instalar la Versión 7.2 de DB2 Personal Edition o DB2 Workgroup Edition de forma interactiva, el programa DB2 Synchronizer no se inicia automáticamente en modalidad de prueba (que era el caso de la Versión 6 de DB2 Satellite Edition). 4. Emita el mandato db2sync -t en el satélite para: o Especificar el ID de usuario y la contraseña que utilizará el satélite para conectar con la base de datos de control de satélites. Si las credenciales de sincronización aún no están almacenadas en el satélite, se abre la ventana Conectar con base de datos de control. Debe utilizar esta ventana para especificar el ID de usuario y contraseña que utilizará el satélite para conectar con la base de datos de control de satélites. o Verifique que los valores establecidos en el satélite son correctos o Verifique que el satélite se puede conectar con la base de datos de control de satélites Una vez realizadas estas tareas de configuración, el sistema Versión 7.2 está listo para sincronizar. 9.1.3 Instalación del FixPak 2 o superior en un sistema Versión 6 Enterprise Edition Para que un sistema Enterprise Edition Versión 6 se utilice como servidor de control de DB2, el sistema debe tener instalado el FixPak 2 o posteriores. Las secciones siguientes describen las tareas que debe llevar a cabo para actualizar un sistema Versión 6 Enterprise Edition en Windows NT o AIX para utilizarlo como servidor de control de DB2. Si está utilizando un Centro de control Versión 6, realice también los pasos del tema 9.1.4, Actualización de una Versión 6 del Centro de control y del Centro de administración de satélites para verificar que tiene el nivel correcto del Centro de control y del Centro de administración de satélites para administrar el entorno de satélites. 9.1.3.1 Actualización de la Versión 6 de DB2 Enterprise Edition para utilizarlo como servidor de control de DB2 Para poder utilizar un sistema Versión 6 de DB2 Enterprise Edition como servidor de control de DB2, se debe instalar con el componente Servidor de control y DB2 Enterprise Edition debe estar al nivel de servicio FixPak 2 o superior. En función de si está instalado el componente Servidor de control de DB2 y del nivel de servicio de DB2 Enterprise Edition, tendrá que llevar a cabo una de las siguientes tareas: * Instale el componente Servidor de control de DB2 en un sistema DB2 Enterprise Edition V6.1 existente e instale el FixPak 2 o superior. Luego actualice la base de datos de control de satélites (SATCTLDB) en el sistema. * Actualice un servidor de control de DB2 ya instalado al nivel del FixPak 2 o superior. Utilice la siguiente información para identificar cuál de las dos tareas anteriores tiene que llevar a cabo y los pasos que se aplican a la situación. A continuación se muestra un resumen de los pasos que llevará a cabo. 1. En primer lugar, evalúe el estado actual de la instalación de DB2 Enterprise Edition. Determinará si el componente Servidor de control está instalado y el nivel de servicio de DB2. 2. En segundo lugar, según la información de estado obtenida, determinará lo que se tiene que hacer. 3. En tercer lugar, llevará a cabo los pasos necesarios para actualizar DB2 Enterprise Edition. El servidor de control de DB2 sólo se puede ejecutar en DB2 Enterprise Edition para Windows NT y AIX. Continúe con las instrucciones adecuadas para su plataforma: * Actualización de DB2 Enterprise Edition en Windows NT * Actualización de DB2 Enterprise Edition en AIX Actualización de DB2 Enterprise Edition en Windows NT Utilice la información de las secciones siguientes para determinar el nivel de servicio actual del sistema Versión 6 de DB2 Enterprise Edition y los pasos que tiene que llevar a cabo para actualizar el sistema al nivel de servicio del FixPak o superior. Tendrá que llevar a cabo los pasos de una o más de las siguientes secciones: * Evaluación de DB2 Enterprise Edition en Windows NT * Determinación de lo que se tiene que llevar a cabo * Instalación del componente Servidor de control en Windows NT * Instalación del FixPak 2 o superior en Windows NT * Actualización de la base de datos SATCTLDB en Windows NT Evaluación de DB2 Enterprise Edition en Windows NT Si tiene DB2 Enterprise Edition instalado en Windows NT, siga los pasos siguientes: 1. Compruebe si el componente Servidor de control está instalado. Utilice el Editor de registros para visualizar la lista de componentes instalados: a. Entre regedit en un indicador de mandatos. b. Bajo la clave de registro HKEY_LOCAL_MACHINE\SOFTWARE\IBM\DB2\Components, compruebe si aparece el Servidor de control. Si no aparece, significa que el servidor de control no está instalado. 2. Determine el nivel de servicio de DB2 Enterprise Edition. Emita el mandato db2level desde un indicador de mandatos. Utilice la tabla siguiente para interpretar la salida: Valores de campos clave de la salida de db2level El sistema DB2 Release Nivel Símbolos informativos está al nivel: SQL06010 01010104 db2_v6, n990616 Versión 6.1 base SQL06010 01020104 DB2 V6.1.0.1, n990824, Versión 6.1 WR21136 más FixPak 1 SQL06010 01030104 DB2 V6.1.0.6, s991030, Versión 6.1 WR21163 o DB2 V6.1.0.9, más FixPak 2 s000101, WR21173 Nota: Si el nivel es superior a 01030104, el sistema tiene instalado un FixPak superior al FixPak 2. 3. Anote la información encontrada y continúe en Determinación de lo que se tiene que llevar a cabo. Determinación de lo que se tiene que llevar a cabo Con la información obtenida, busque la fila de la siguiente tabla que se aplica a su situación y siga los pasos necesarios para preparar el sistema DB2 Enterprise Edition para que dé soporte al servidor de control de DB2 al nivel del FixPak 2 o superior. Las secciones que hay después de la tabla proporcionan instrucciones para llevar a cabo los pasos necesarios. Si lo desea, puede marcar cada paso después de llevarlo a cabo. Sólo lleve a cabo los pasos que se apliquen a su situación. Componente Servidor de Nivel de servicio del Pasos que hay que seguir control instalado sistema DB2 Enterprise para preparar el sistema Edition DB2 Enterprise Edition No Versión 6.1 base, Realice los pasos Versión 6.1 más FixPak 1 siguientes: o Versión 6.1 más FixPak 2 o superior 1. Instalación del componente Servidor de control en Windows NT 2. Instalación del FixPak 2 o superior en Windows NT 3. Actualización de la base de datos SATCTLDB en Windows NT Sí Versión 6.1 base o Realice los pasos Versión 6.1 más FixPak 1 siguientes: 1. Instalación del FixPak 2 o superior en Windows NT 2. Actualización de la base de datos SATCTLDB en Windows NT Sí Versión 6.1 más FixPak 2 Realice el paso o superior siguiente: 1. Actualización de la base de datos SATCTLDB en Windows NT Instalación del componente Servidor de control en Windows NT Para instalar el componente Servidor de control en Windows NT: 1. Asegúrese de que ha finalizado toda la actividad de bases de datos en el sistema antes de continuar. 2. Inserte el CD de DB2 Universal Database Enterprise Edition Versión 6.1 en la unidad de CD. Si el programa de instalación no se inicia automáticamente, ejecute el mandato setup que hay en la raíz del CD para comenzar el proceso de instalación. 3. Cuando se le solicite, cierre todos los procesos que estén utilizando DB2. 4. En la ventana de bienvenida, seleccione Siguiente. 5. En la ventana Seleccionar productos, asegúrese de que DB2 Enterprise Edition está seleccionado. 6. En el panel Seleccionar tipo de instalación, pulse Personalizada. 7. En el panel Seleccionar componentes, asegúrese de que el Servidor de control está seleccionado y pulse Siguiente. Nota: Si si selecciona otros componentes que aún no están instalados en el sistema, dichos componentes también se instalarán. No puede modificar la unidad ni directorio en el que se instala DB2. 8. En los paneles Configurar servicios de DB2, puede modificar los valores de protocolo y las opciones de arranque correspondientes a la instancia del Servidor de control o puede aceptar los valores por omisión. Modifique los valores por omisión y pulse Siguiente o pulse Siguiente para utilizar los valores por omisión. 9. Pulse Siguiente en la ventana Empezar a copiar archivos para comenzar el proceso de instalación. 10. Cuando finalice el proceso de copia de archivo, tiene la opción de volver a arranca el sistema. Debe volverlo a arrancar ahora. Los cambios realizados en el sistema correspondientes al Servidor de control no entran en vigor hasta que se vuelve a arrancar el sistema. Cuando haya finalizado el proceso de instalación y haya vuelto a arrancar el sistema, la base de datos de control de satélites (SATCTLDB) creada como parte de la instalación del Servidor de control se debe catalogar en la instancia de DB2 si desea utilizar el Centro de control y el Centro de administración de satélites de forma local en el sistema. Para catalogar la base de datos SATCTLDB: 1. Abra una ventana de mandatos de DB2 seleccionando Inicio>Programas>DB2 para Windows NT>Ventana de mandatos 2. Asegúrese de que está en la instancia de db2. Emita el mandato set y compruebe el valor de db2instance. Si el valor no es db2, emita el siguiente mandato: set db2instance=db2 3. Catalogue la instancia db2ctlsv entrando el siguiente mandato: db2 catalog local node db2ctlsv instance db2ctlsv 4. Catalogue la base de datos SATCTLDB entrando el siguiente mandato: db2 catalog database satctldb at node db2ctlsv 5. Confirme las acciones de catalogación entrando el siguiente mandato: db2 terminate 6. Cierre la Ventana de mandatos de DB2. Instalación del FixPak 2 o superior en Windows NT Para actualizar un sistema Versión 6 de DB2 Enterprise Edition existente en Windows NT al FixPak 2 o superior, puede: * Bajar el último FixPak para DB2 Enterprise Edition para Windows NT V6.1 de la Web, junto con el archivo readme que le acompaña. El FixPak se puede bajar siguiendo las instrucciones del URL: http://www-4.ibm.com/software/data/db2/db2tech/version61.html Instalar el FixPak siguiendo las instrucciones del archivo readme.txt. * Utilizar un CD FixPak de DB2 Universal Database, Versión 6.1 para Windows NT que esté al nivel del FixPak 2 o superior y seguir las instrucciones del archivo readme.txt del directorio WINNT95 del CD para completar la instalación. Actualización de la base de datos SATCTLDB en Windows NT Para actualizar la base de datos SATCTLDB en Windows NT 1. Determine el nivel de la base de datos SATCTLDB: a. Inicie una sesión con un ID de usuario que tenga autorización administrativa local en el sistema Windows NT. b. Abra una ventana de mandatos de DB2 seleccionando Inicio>Programas>DB2 para Windows NT>Ventana de mandatos. c. Conéctese a SATCTLDB entrando el siguiente mandato: db2 connect to satctldb d. Determine si el desencadenante I_BATCHSTEP_TRGSCR existe en la base de datos emitiendo la siguiente consulta: db2 select name from sysibm.systriggers where name='I_BATCHSTEP_TRGSCR' Anote el número de filas que se devuelven. e. Entre el siguiente mandato para cerrar la conexión con la base de datos: db2 connect reset Si el paso 1d ha devuelto una fila, significa que la base de datos está al nivel correcto. En este caso, sáltese el paso 2 y continúe en el paso 3. Si se devuelven cero (0) filas, significa que la base de datos no está al nivel correcto y se tiene que actualizar, tal como se describe en el paso 2, antes de poder llevar a cabo el paso 3. 2. Para actualizar la base de datos SATCTLDB, siga los pasos siguientes. Entre todos los mandatos en la Ventana de mandatos de DB2: a. Vaya al directorio \misc, donde es la unidad y vía de acceso de instalación, por ejemplo c:\sqllib. b. Asegúrese de que está en la instancia db2ctlsv. Emita el mandato set y compruebe el valor de db2instance. Si el valor no es db2ctlsv, emita el siguiente mandato: set db2instance=db2ctlsv c. Elimine la base de datos SATCTLDB entrando el siguiente mandato: db2 drop database satctldb d. Cree la nueva base de datos SATCTLDB entrando el siguiente mandato: db2 -tf satctldb.ddl -z satctldb.log e. Emita el mandato siguiente: db2 terminate 3. Vincule el procedimiento almacenado db2satcs.dll a la base de datos SATCTLDB. Realice los pasos siguientes: a. Conéctese a la base de datos SATCTLDB entrando el siguiente mandato: db2 connect to satctldb b. Vaya al directorio \bnd, donde es la unidad y vía de acceso de instalación, por ejemplo c:\sqllib. c. Emita el mandato bind del siguiente modo: db2 bind db2satcs.bnd 4. Entre el siguiente mandato para cerrar la conexión con la base de datos: db2 connect reset 5. Cierre la Ventana de mandatos de DB2. Actualización de DB2 Enterprise Edition en AIX Utilice la información de las secciones siguientes para determinar el nivel de servicio actual del sistema Versión 6 de DB2 Enterprise Edition y los pasos que tiene que llevar a cabo para actualizar el sistema al nivel de servicio del FixPak o superior. Tendrá que llevar a cabo los pasos de una o más de las siguientes secciones: * Evaluación de DB2 Enterprise Edition en AIX * Determinación de lo que se tiene que llevar a cabo * Instalación del componente Servidor de control en AIX * Instalación del FixPak 2 o superior en AIX * Actualización de la base de datos SATCTLDB en AIX Evaluación de DB2 Enterprise Edition en AIX Si tiene la Versión 6 de DB2 Enterprise Edition instalada en AIX, lleve a cabo los pasos siguientes: 1. Compruebe si el componente Servidor de control está instalado. Entre el mandato siguiente: lslpp -l | grep db2_06_01.ctsr Si no se devuelve ningún dato, significa que el componente Servidor de control no está instalado. 2. Determine el nivel de servicio de DB2 Enterprise Edition. Inicie una sesión como propietario de la instancia de DB2 y emita el mandato db2level. Utilice la tabla siguiente para interpretar la salida: Valores de campos clave de la salida de db2level El sistema DB2 Release Nivel Símbolos informativos está al nivel: SQL06010 01010104 db2_v6, n990616 Versión 6.1 base SQL06010 01020104 DB2 V6.1.0.1, n990824, Versión 6.1 U465423 más FixPak 1 SQL06010 01030104 DB2 V6.1.0.6, s991030, Versión 6.1 U468276 o DB2 V6.1.0.9, más FixPak 2 s000101, U469453 Nota: Si el nivel es superior a 01030104, el sistema tiene instalado un FixPak superior al FixPak 2. 3. Anote la información encontrada y continúe en Determinación de lo que se tiene que llevar a cabo. Determinación de lo que se tiene que llevar a cabo Con la información obtenida, busque la fila de la siguiente tabla que se aplica a su situación y siga los pasos necesarios para preparar el sistema Versión 6 de DB2 Enterprise Edition para que dé soporte al servidor de control de DB2 al nivel del FixPak 2. Las secciones que hay después de la tabla proporcionan instrucciones para llevar a cabo los pasos necesarios. Si lo desea, puede marcar cada paso después de llevarlo a cabo. Sólo lleve a cabo los pasos que se apliquen a su situación. Componente Servidor de Nivel de servicio del Pasos que hay que seguir control instalado sistema DB2 Enterprise para preparar el sistema Edition DB2 Enterprise Edition No Versión 6.1 base, Realice los pasos Versión 6.1 más FixPak 1 siguientes: o Versión 6.1 más FixPak 2 o superior 1. Instalación del componente Servidor de control en AIX 2. Instalación del FixPak 2 o superior en AIX 3. Actualización de la base de datos SATCTLDB en AIX Sí Versión 6.1 base o Realice los pasos Versión 6.1 más FixPak 1 siguientes: 1. Instalación del FixPak 2 o superior en AIX 2. Actualización de la base de datos SATCTLDB en AIX Sí Versión 6.1 más FixPak 2 Realice el paso o superior siguiente: 1. Actualización de la base de datos SATCTLDB en AIX Instalación del componente Servidor de control en AIX Para instalar el componente Servidor de control en AIX 1. Inicie una sesión como usuario con autorización root. 2. Inserte el CD de DB2 Universal Database Enterprise Edition Versión 6.1 en la unidad de CD. 3. Cambie al directorio en el que está montado el CD, por ejemplo cd /cdrom. 4. Escriba el siguiente mandato para iniciar el programa de instalación de DB2: ./db2setup 5. Cuando se abra la ventana del programa de instalación de DB2, utilice la tecla tabuladora para seleccionar la opción Instalar y pulse Intro. 6. Busque la línea Enterprise Edition y utilice la tecla tabuladora para seleccionar la opción Personalizar que hay junto a la misma. Pulse Intro. 7. Seleccione el componente Servidor de control de DB2, vaya a OK y pulse Intro. 8. Siga las instrucciones de las demás ventanas para completar la instalación del componente Servidor de control de DB2. Una vez finalizado el proceso de instalación, cree la instancia DB2CTLSV y la base de datos SATCTLDB. Para llevar a cabo estas tareas, siga las instrucciones detalladas del tema "Setting up the DB2 Control Server on AIX" del Capítulo 13 del manual Administering Satellites Guide and Reference. Instalación del FixPak 2 o superior en AIX Para actualizar un sistema DB2 Enterprise Edition en AIX al FixPak 2 o superior, puede: * Bajar el último FixPak para DB2 Enterprise Edition para AIX V6.1 de la Web, junto con el archivo Readme que le acompaña. El FixPak se puede bajar siguiendo las instrucciones del URL: http://www-4.ibm.com/software/data/db2/db2tech/version61.html Instalar el FixPak siguiendo las instrucciones del archivo Readme del Fixpak * Utilizar un CD FixPak de DB2 Universal Database, Versión 6.1 para AIX que esté al nivel del FixPak 2 o superior y seguir las instrucciones del directorio readme del CD para completar la instalación. Asegúrese de haber actualizado la instancia DB2CTLSV ejecutando el mandato db2iupdt tal como se indica en el archivo Readme del FixPak. Actualización de la base de datos SATCTLDB en AIX Para actualizar la base de datos SATCTLDB en AIX: 1. Determine el nivel de la base de datos SATCTLDB: a. Inicie una sesión como db2ctlsv. b. Asegúrese de que el servidor de bases de datos se ha iniciado. Si el servidor no se ha iniciado, emita el mandato db2start. c. Conéctese a la base de datos SATCTLDB entrando el siguiente mandato: db2 connect to satctldb d. Determine si el desencadenante I_BATCHSTEP_TRGSCR existe en la base de datos emitiendo la siguiente consulta: db2 "select name from sysibm.systriggers where name='I_BATCHSTEP_TRGSCR'" Anote el número de filas que se devuelven. e. Entre el siguiente mandato para cerrar la conexión con la base de datos: db2 connect reset Si el paso 1d ha devuelto una fila, significa que la base de datos está al nivel correcto. En este caso, sáltese el paso 2 y continúe en el paso 3. Si se devuelven cero (0) filas, significa que la base de datos no está al nivel correcto y se tiene que actualizar, tal como se describe en el paso 2, antes de poder llevar a cabo el paso 3. 2. Para actualizar la base de datos SATCTLDB al nivel del FixPak 2, siga los pasos siguientes. Entre todos los mandatos en la Ventana de mandatos de DB2: a. Cambie al directorio $HOME/sqllib/misc. b. Elimine la base de datos SATCTLDB entrando el siguiente mandato: db2 drop database satctldb c. Cree la nueva base de datos SATCTLDB entrando el siguiente mandato: db2 -tf satctldb.ddl -z $HOME/satctldb.log d. Emita el mandato siguiente: db2 terminate 3. Vincule el procedimiento almacenado db2satcs.dll a la base de datos SATCTLDB. Realice los pasos siguientes: a. Conéctese a la base de datos SATCTLDB entrando el siguiente mandato: db2 connect to satctldb b. Cambie al directorio $HOME/sqllib/bnd. c. Emita el mandato bind del siguiente modo: db2 bind db2satcs.bnd 4. Entre el siguiente mandato para cerrar la conexión con la base de datos: db2 connect reset 9.1.4 Actualización de una Versión 6 del Centro de control y del Centro de administración de satélites Para utilizar una Versión 6 del Centro de control y del Centro de administración de satélites con una Versión 6 del Centro de control de DB2 y de la base de datos de control de satélites (SATCTLDB) que se han actualizado al FixPak 2 o superior, las herramientas también se tienen que actualizar al FixPak 2 o superior. Si el Centro de control y el Centro de administración de satélites se están ejecutando en el mismo sistema que el servidor de control de DB2, se actualizaron cuando se actualizó el sistema DB2 Enterprise Edition al FixPak 2. Sin embargo, si ejecuta estas herramientas en otro sistema, debe actualizar dicho sistema al nivel del FixPak 2 o superior. Para actualizar este sistema al FixPak 2 o superior: * Baje de la Web el último FixPak correspondiente a su producto al nivel V6.1, junto con el archivo readme que le acompaña. Los FixPak se puede bajar siguiendo las instrucciones del URL: http://www-4.ibm.com/software/data/db2/db2tech/version61.html Instale el FixPak siguiendo las instrucciones del archivo readme. * Utilice un CD FixPak de DB2 Universal Database, Versión 6.1 correspondiente al sistema operativo que está ejecutando que está al nivel del FixPak 2 o superior y siga las instrucciones del archivo readme para completar la instalación. ------------------------------------------------------------------------ Consulta de mandatos ------------------------------------------------------------------------ 10.1 Actualización disponible Se ha actualizado el manual Consulta de mandatos y el último PDF está disponible para bajarlo en línea desde http://www.ibm.com/software/data/db2/udb/winos2unix/support. La información contenida en estas notas es adicional a la consulta actualizada. Toda la documentación actualizada también está disponible en CD. Se puede solicitar dicho CD a través del servicio de DB2 y utilizando el número de PTF U478862. Puede encontrar información sobre cómo entrar en contacto con el Servicio de DB2 en http://www.ibm.com/cgi-bin/db2www/data/db2/udb/winos2unix/support/help.d2w/report . ------------------------------------------------------------------------ 10.2 db2updv7 - Actualizar la base de datos al nivel de arreglo actual de la versión 7 Este mandato actualiza los catálogos del sistema de una base de datos para dar soporte al FixPak actual de los modos siguientes: * Permite utilizar las nuevas funciones incorporadas (ABS, DECRYPT_BIN, DECRYPT_CHAR, ENCRYPT, GETHINT, MULTIPLY_ALT y ROUND). * Permite utilizar los procedimientos incorporados nuevos (GET_ROUTINE_SAR y PUT_ROUTINE_SAR). * Añade o aplica correcciones a las funciones WEEK_ISO y DAYOFWEEK_ISO en bases de datos Windows y OS/2. * Aplica una corrección a los descriptores empaquetados de tabla para tablas migradas de la Versión 2 a la Versión 6. * Crea la vista SYSCAT.SEQUENCES. Autorización sysadm Conexión necesaria Base de datos. Este mandato establece automáticamente una conexión con la base de datos especificada. Sintaxis del mandato >>-db2updv7---d--nombre_basedatos-------------------------------> >--+-------------------------------+--+----+------------------->< '--u--idusuario---p--contraseña-' '--h-' Parámetros del mandato -d nombre-basedatos Especifica el nombre de la base de datos que se va a actualizar. -u idusuario Especifica el ID de usuario. -p contraseña Especifica la contraseña del usuario. -h Muestra información de ayuda. Al especificar esta opción, se pasarán por alto todas las demás opciones y sólo se visualizará la información de ayuda. Ejemplo Después de instalar el FixPak, actualice el catálogo del sistema en la base de datos de ejemplo emitiendo el mandato siguiente: db2updv7 -d ejemplo Notas de utilización Esta herramienta sólo puede utilizarse en una base de datos que ejecuta DB2 Versión 7.1 o Versión 7.2 en la que se haya instalado al menos el FixPak 2. Si se emite el mandato más de una vez, no se comunica ninguno de los errores y cada una de las actualizaciones de catálogo sólo se aplica una vez. Para habilitar las funciones incorporadas nuevas, todas las aplicaciones deben desconectarse de esta base de datos y la base de datos debe desactivarse en el caso de que se hubiera activado. ------------------------------------------------------------------------ 10.3 REBIND El diagrama de sintaxis del mandato REBIND debe ser como sigue: Missing value Sintaxis del mandato >>-REBIND--+---------+--nombre-paquete--------------------------> '-PACKAGE-' .-ANY----------. >--RESOLVE--+-CONSERVATIVE-+----------------------------------->< ------------------------------------------------------------------------ 10.4 db2inidb - Inicializar una base de datos reflejada La descripción del parámetro RELOCATE USING archivoconfig debe ser como sigue: Especifica que los archivos de la base de datos se reubicarán en base a la información indicada en el archivo de configuración, antes de inicializar la base de datos como instantánea, en espera o reflejada. Nota: Para obtener información acerca del formato del archivo de configuración, consulte el manual Data Movement Utilities Guide and Reference. ------------------------------------------------------------------------ Data Recovery and High Availability Guide and Reference ------------------------------------------------------------------------ 11.1 Data Recovery and High Availability Guide and Reference Available Online Ahora, el nuevo manual Data Recovery and High Availability Guide and Reference está disponible en línea, tanto en formato HTML como PDF, en http://www.ibm.com/software/data/db2/udb/winos2unix/support. La información contenida en estas notas es adicional a la consulta actualizada. Toda la documentación actualizada también está disponible en CD. Se puede solicitar dicho CD a través del servicio de DB2 y utilizando el número de PTF U478862. Puede encontrar información sobre cómo entrar en contacto con el Servicio de DB2 en http://www.ibm.com/cgi-bin/db2www/data/db2/udb/winos2unix/support/help.d2w/report . ------------------------------------------------------------------------ 11.2 Nuevo comportamiento de la copia de seguridad y restauración cuando LOGRETAIN=CAPTURE Si se configura una base de datos con LOGRETAIN establecido en CAPTURE, no se pueden realizar las operaciones siguientes: * Copia de seguridad en línea de la base de datos * Copia de seguridad en línea o fuera de línea a nivel de espacio de tablas * Restauración en línea o fuera de línea a nivel de espacio de tablas A continuación de una operación de restauración de una base de datos utilizando una imagen de copia de seguridad fuera de línea mientras LOGRETAIN está establecido en CAPTURE, la base de datos no se pone en estado pendiente de retrotracción. Se soporta una operación de restauración de base de datos utilizando una imagen de copia de seguridad en línea de la base de datos mientras LOGRETAIN está establecido en CAPTURE (Versión 7.2 anterior al FixPak 4). ------------------------------------------------------------------------ 11.3 Ahora, NEWLOGPATH2 se llama DB2_NEWLOGPATH2 Las referencias a la variable de registro NEWLOGPATH2 se han cambiado por DB2_NEWLOGPATH2. ------------------------------------------------------------------------ 11.4 Elección de un método de copia de seguridad para DB2 Data Links Manager en AIX o Solaris Antes de establecer la opción PASSWORDACCESS en el archivo de opciones del sistema de Tivoli Storage Manager, se debe asegurar de que /usr/lib contiene un enlace simbólico con el archivo de bibliotecas libApiDS.a. ------------------------------------------------------------------------ Data Movement Utilities Guide and Reference ------------------------------------------------------------------------ 12.1 Soporte de página de códigos para los programas de utilidad de importación, exportación y carga Actualmente, los programas de utilidad de importación, exportación y carga se pueden utilizar para transferir datos de la nueva página de códigos de Chino GB 18030 (identificador de página de códigos 5488) y de la nueva página de códigos de Japonés (identificador de página de código 1394) a las bases de datos Unicode de DB2 UDB. Asimismo, el programa de utilidad de exportación se puede utilizar para transferir datos de las bases de datos Unicode de DB2 UDB a datos de las páginas de códigos GB 18030 o ShiftJIS X0213. Por ejemplo, el mandato siguiente cargará el archivo de datos Shift_JISX0213 u/jp/user/x0213/data.del, que reside en un cliente conectado de forma remota, en MYTABLE: db2 load client from /u/jp/user/x0213/data.del of del modified by codepage=1394 insert into mytable donde MYTABLE está ubicada en una base de datos Unicode de DB2 UDB. ------------------------------------------------------------------------ 12.2 db2relocatedb (nuevo mandato) db2relocatedb - Reubicar base de datos Cambia el nombre de una base de datos, o reubica una base de datos o parte de ella (es decir, un contenedor, un directorio de registro) según se especifica en el archivo de configuración proporcionado por el usuario. Esta herramienta realiza los cambios necesarios en la instancia de DB2 y en los archivos de soporte de bases de datos. Autorización Ninguna Conexión necesaria Ninguno Sintaxis del mandato >>-db2relocatedb---f--configFilename--------------------------->< Parámetros del mandato -f configFilename Especifica el nombre del archivo que contiene la información de configuración necesaria para reubicar la base de datos. Puede ser un nombre de archivo relativo o absoluto. El formato del archivo de configuración es: DB_NAME=oldName,newName DB_PATH=oldPath,newPath INSTANCE=oldInst,newInst NODENUM=nodeNumber LOG_DIR=oldDirPath,newDirPath CONT_PATH=oldContPath1,newContPath1 CONT_PATH=oldContPath2,newContPath2 ... Donde: DB_NAME Especifica el nombre de la base de datos que se está reubicando. Si se cambia el nombre de la base de datos, se deben especificar tanto el nombre antiguo como el nuevo. Este campo es obligatorio. DB_PATH Especifica la vía de acceso de la base de datos que se está reubicando. Se trata de la vía de acceso en que se creó originalmente la base de datos. Si se cambia la vía de acceso de la base de datos, se deben especificar tanto la vía antigua como la nueva. Este campo es obligatorio. INSTANCE Especifica la instancia en que existe la base de datos. Si se transfiere la base de datos a una nueva instancia, se deben especificar tanto la instancia antigua como la nueva. Este campo es obligatorio. NODENUM Especifica el número de nodo para el nodo de base de datos que se cambia. El valor por omisión es 0. LOG_DIR Especifica un cambio en la ubicación de la vía de acceso de registro cronológico. Se deben especificar tanto la vía antigua como la nueva. CONT_PATH Especifica un cambio en la ubicación de los contenedores de espacios de tablas. Se deben especificar tanto la vía antigua del contenedor como la nueva. Se pueden proporcionar varias líneas CONT_PATH si se han de efectuar varios cambios de vía de acceso de contenedores. Nota: Se ignorarán las líneas en blanco y las que comiencen por un carácter de comentario (#). Ejemplos Ejemplo 1 Para cambiar por PRODDB el nombre de la base de datos TESTDB de la instancia DB2INST1 que reside en la vía de acceso /home/db2inst1, cree el archivo de configuración siguiente: DB_NAME=TESTDB,PRODDB DB_PATH=/home/db2inst1 INSTANCE=db2inst1 NODENUM=0 Guarde el archivo de configuración como relocate.cfg y utilice el mandato siguiente para efectuar los cambios en los archivos de la base de datos: db2relocatedb -f relocate.cfg Ejemplo 2 Para transferir la base de datos DATAB1 de la instancia JSMITH en la vía de acceso /dbpath a la instancia PRODINST, haga lo siguiente: 1. Transfiera los archivos del directorio /dbpath/jsmith a /dbpath/prodinst. 2. Utilice el archivo de configuración siguiente con el mandato db2relocatedb para efectuar los cambios en los archivos de la base de datos: DB_NAME=DATAB1 DB_PATH=/dbpath INSTANCE=jsmith,prodinst NODENUM=0 Ejemplo 3 La base de datos PRODDB existe en la instancia INST1 de la vía de acceso /databases/PRODDB. Es necesario cambiar la ubicación de dos contenedores de espacios de tablas de la forma siguiente: * Es necesario transferir el contenedor de SMS /data/SMS1 a /DATA/NewSMS1. * Es necesario transferir el contenedor de DMS /data/DMS1 a /DATA/DMS1. Una vez que se hayan transferido los archivos y directorios físicos a las nuevas ubicaciones, se puede utilizar el archivo de configuración siguiente con el mandato db2relocatedb para efectuar cambios en los archivos de la base de datos, de forma que reconozcan las nuevas ubicaciones: DB_NAME=PRODDB DB_PATH=/databases/PRODDB INSTANCE=inst1 NODENUM=0 CONT_PATH=/data/SMS1,/DATA/NewSMS1 CONT_PATH=/data/DMS1,/DATA/DMS1 Ejemplo 4 La base de datos TESTDB existe en la instancia DB2INST1 y se creó en la vía de acceso /databases/TESTDB. Se crearon espacios de tablas con los contenedores siguientes: TS1 TS2_Cont0 TS2_Cont1 /databases/TESTDB/TS3_Cont0 /databases/TESTDB/TS4/Cont0 /Data/TS5_Cont0 /dev/rTS5_Cont1 Se va a transferir TESTDB a un nuevo sistema. La instancia del nuevo sistema será NEWINST y la ubicación de la base de datos será /DB2. Cuando se transfiera la base de datos, todos los archivos que existan en el directorio /databases/TESTDB/db2inst1 se deben transferir al directorio /DB2/newinst. Esto significa que los 5 primeros contenedores se reubicarán formando parte de esta transferencia. (Los 3 primeros son relativos al directorio de la base de datos y los 2 siguientes son relativos a la vía de acceso de la base de datos) Puesto que estos contenedores están ubicados en el directorio o en la vía de acceso de la base de datos, no es necesario listarlos en el archivo de configuración. Si los 2 contenedores restantes se van a transferir a ubicaciones distintas del mismo sistema, se deben listar en el archivo de configuración. Una vez que se hayan transferido los archivos y directorios físicos a las nuevas ubicaciones, se puede utilizar el archivo de configuración siguiente con el mandato db2relocatedb para efectuar cambios en los archivos de la base de datos, de forma que reconozcan las nuevas ubicaciones: DB_NAME=TESTDB DB_PATH=/databases/TESTDB,/DB2 INSTANCE=db2inst1,newinst NODENUM=0 CONT_PATH=/Data/TS5_Cont0,/DB2/TESTDB/TS5_Cont0 CONT_PATH=/dev/rTS5_Cont1,/dev/rTESTDB_TS5_Cont1 Ejemplo 5 La base de datos TESTDB tiene 2 particiones en los nodos 10 y 20. La instancia es SERVINST y la vía de acceso de la base de datos es /home/servinst en ambos nodos. El nombre de la base de datos e cambia por SERVDB y la vía de acceso de la base de datos se cambia por /databases en ambos nodos. Asimismo, el directorio de registro cronológico, en el nodo 20, para de ser /testdb_logdir a ser /servdb_logdir. Dado que se efectúan cambios en los dos nodos, se debe crear un archivo de configuración para cada nodo y se debe ejecutar db2relocatedb en cada uno de los nodos con el archivo de configuración correspondiente. En el nodo 10, se utilizará el archivo de configuración siguiente: DB_NAME=TESTDB,SERVDB DB_PATH=/home/servinst,/databases INSTANCE=servinst NODE_NUM=10 En el nodo 20, se utilizará el archivo de configuración siguiente: DB_NAME=TESTDB,SERVDB DB_PATH=/home/servinst,/databases INSTANCE=servinst NODE_NUM=20 LOG_DIR=/testdb_logdir,/servdb_logdir Notas sobre uso Si se cambia la instancia a la que pertenece una base de datos, se debe hacer lo siguiente antes de ejecutar este mandato, a fin de asegurarse de que se realizarán los cambios en la instancia y en los archivos de soporte de la base de datos: * Si se transfiere una base de datos a otra instancia, cree la nueva instancia. * Copie los archivos/dispositivos que pertenecen a las bases de datos que se copian al sistema en que reside la nueva instancia. Si es necesario, se cambiarán los nombres de las vías de acceso. * Cambie el permiso de los archivos/dispositivos que se han copiado de forma que sean propiedad del propietario de la instancia. Si se cambia la instancia, deberá ejecutar esta herramienta el propietario de la nueva instancia. En un entorno EEE, se debe ejecutar esta herramienta para cada nodo que precise cambios. Se debe suministrar un archivo de configuración separado para cada nodo, el cual deberá incluir el valor NODENUM del nodo que se cambia. Por ejemplo, si se cambia el nombre de una base de datos, se verán afectados todos los nodos y se deberá ejecutar el mandato db2relocatedb con un archivo de configuración separado en cada nodo. Si se transfieren contenedores que pertenecen a un solo nodo, sólo es necesario ejecutar el mandato db2relocatedb una vez en dicho nodo. Consulte también Para obtener más información, consulte el mandato db2inidb - Inicializar una base de datos reflejada en la publicación Consulta de mandatos. ------------------------------------------------------------------------ 12.3 Capítulo 2. Importación 12.3.1 Utilización de la importación con inserciones en almacenamiento intermedio La nota que se encuentra al final de esta sección debe decir: Nota: En todos los entornos excepto EEE, la característica de inserciones en almacenamiento intermedio se inhabilita durante las operaciones de importación en las que se especifica el parámetro INSERT_UPDATE. ------------------------------------------------------------------------ 12.4 Capítulo 3. Carga 12.4.1 Estados de pendiente después de una operación de carga Las dos primeras frases del último párrafo de esta sección se han cambiado por las siguientes: El cuarto estado posible asociado al proceso de carga (estado pendiente de comprobación) está relacionado con las limitaciones referenciales y de comprobación, las limitaciones de DATALINKS, las limitaciones de AST o las limitaciones de columnas generadas. Por ejemplo, si una tabla existente es una tabla padre que contiene una clave primaria a la que hace referencia una clave foránea de una tabla dependiente, al sustituir datos en la tabla padre ambas tablas (no el espacio de tablas) se ponen en estado pendiente de comprobación. 12.4.2 Limitaciones y restricciones de carga Se aplican las restricciones siguientes a las columnas generadas y al programa de utilidad de carga: * No es posible cargar una tabla que tiene una columna generada en un índice exclusivo a menos que dicha columna sea una "columna de inclusión" del índice o se utilice el modificador de tipo de archivo generatedoverride. Si se utiliza este modificador, es de esperar que todos los valores para la columna se suministrarán en el archivo de datos de entrada. * No es posible cargar una tabla que tiene una columna generada en la clave de particionamiento a menos que se utilice el modificador de tipo de archivo generatedoverride. Si se utiliza este modificador, es de esperar que todos los valores para la columna se suministrarán en el archivo de datos de entrada. 12.4.3 Modificador de tipo de archivo totalfreespace El modificador de tipo de archivo totalfreespace (LOAD) se ha modificado para que acepte un valor entre 0 y 2 147 483 647. ------------------------------------------------------------------------ 12.5 Capítulo 4. AutoLoader 12.5.1 rexecd necesario para ejecutar AutoLoader cuando la autentificación se establece en YES En el apartado Opciones de AutoLoader, se añadirá la nota siguiente a la descripción de los parámetros AUTHENTICATION y PASSWORD: En un entorno Linux, si se está ejecutando AutoLoader con la opción de autentificación establecida en YES, debe habilitarse rexecd en todas las máquinas. Si rexecd no está habilitado, se generará el mensaje de error siguiente: openbreeze.torolab.ibm.com: Conexión rechazada SQL6554N Se ha producido un error al intentar ejecutar remotamente un proceso. Se generarán los siguientes mensajes de error en el archivo db2diag.log: 2000-10-11-13.04.16.832852 Instance:svtdbm Node:000 PID:19612(db2atld) Appid: oper_system_services sqloRemoteExec Probe:31 ------------------------------------------------------------------------ 12.6 AutoLoader puede colgarse durante un fork AIX 4.3.3 contiene un arreglo para un problema de libc que puede hacer que AutoLoader se quede colgado durante un fork (crear y arrancar un proceso dependiente). AutoLoader es un programa de múltiples hebras. Una de las hebras crea y arranca otro proceso. Crear y arrancar un proceso hijo hace que se cree una imagen de la memoria del padre en el hijo. Es posible que una hebra que no sea de fork haya retenido bloqueos utilizados por libc.a para gestionar varias hebras asignando memoria de la pila dentro del mismo proceso. Puesto que la hebra que no es de fork no existirá en el proceso hijo, este bloqueo nunca se liberará en el hijo, lo cual hace que a veces el padre se quede colgado. ------------------------------------------------------------------------ 12.7 Apéndice C. Formatos de archivo de programa de utilidad de Exportación/Importación/Carga A este apéndice se le ha añadido la siguiente actualización: No se da soporte a los programas de utilidad de exportación, importación y carga cuando éstos se utilizan con un cliente Unicode conectado a una base de datos no Unicode. Sólo se da soporte a los archivos de cliente Unicode cuando éste está conectado a una base de datos Unicode. ------------------------------------------------------------------------ Replication Guide and Reference ------------------------------------------------------------------------ 13.1 Duplicación y servidores que no son IBM Para duplicar datos a o desde servidores no IBM tales como Informix, Microsoft SQL Server, Oracle, Sybase y Sybase SQL Anywhere, debe utilizar DataJoiner Versión 2 o posteriores. No puede utilizar la función de conexión relacional para este tipo de duplicación porque DB2 Relational Connect Versión 7 no tiene capacidad de actualización. Asimismo, debe utilizar DJRA (DataJoiner Replication Administration) para administrar una de estas duplicaciones heterogéneas en todas las plataformas (AS/400, OS/2, OS/390, UNIX y Windows) para todas las versiones existentes de DB2 y DataJoiner. ------------------------------------------------------------------------ 13.2 Duplicación en Windows 2000 DB2 DataPropagator Versión 7 es compatible con el sistema operativo Windows 2000. ------------------------------------------------------------------------ 13.3 Error conocido al guardar archivos de SQL Si utiliza el Centro de control de DB2 Connect Personal Edition, no puede guardar archivos de SQL. Si intenta guardar archivos de SQL, obtiene un mensaje de error que indica que el Servidor de administración de bases de datos (DAS) no está activo, cuando en realidad el DAS no está disponible porque no se suministra con DB2 Connect PE. ------------------------------------------------------------------------ 13.4 Mantenimiento de DB2 Se recomienda instalar el último nivel de mantenimiento de DB2 para los diversos productos DB2 que utilice en su entorno de duplicación. ------------------------------------------------------------------------ 13.5 Programa de utilidad de diferencia de datos en la Web Puede bajar el Programa de utilidad de diferencia de datos (DDU) de la Web de la dirección ftp://ftp.software.ibm.com/ps/products/datapropagator/fixes/. El DDU es un programa de utilidad de ejemplo que puede utilizar para comparar dos versiones del mismo archivo y generar un archivo de salida que muestre las diferencias. Consulte el archivo README que viene con el programa de utilidad de ejemplo para ver detalles. ------------------------------------------------------------------------ 13.6 Capítulo 3. Escenario de duplicación de datos 13.6.1 Escenarios de duplicación Consulte la página de biblioteca del sitio Web de DataPropagator (http://www.ibm.com/software/data/dpropr/) para conseguir un escenario de duplicación de datos heterogéneo. Siga los pasos de este escenario para copiar las modificaciones desde una tabla fuente de duplicación de una base de datos Oracle en AIX a una tabla destino de una base de datos de DB2 para Windows NT. Este marco hipotético utiliza la herramienta DB2 DataJoiner Replication Administration (DJRA), desencadenantes de capturas, el programa Apply y DB2 DataJoiner. En la página 44 del manual, las instrucciones del paso 6 para crear un archivo de contraseña dicen lo siguiente: Paso 6: Creación de un archivo de contraseña Como el programa Apply necesita conectarse con el servidor fuente, debe crear un archivo de contraseña para la autentificación del usuario. Asegúrese de que el ID de usuario que ejecute el programa Apply pueda leer el archivo de contraseña. Para crear un archivo de contraseña: 1. Desde la ventana de solicitud de mandatos de Windows NT vaya al directorio C:\scripts. 2. Cree un archivo nuevo en este directorio que se llame DEPTQUAL.PWD. Puede crear este archivo utilizando cualquier editor de textos, como por ejemplo Notepad. El convenio de denominación para el archivo de contraseñas es applyqual.pwd; donde applyqual es una serie sensible a las mayúsculas que debe coincidir en mayúsculas/minúsculas y valor con el cualificador Apply que se utilice al crear el conjunto de suscripciones. Para este escenario, el cualificador de Apply es DEPTQUAL. Nota: También se da soporte al convenio de denominación de la versión 5 de DB2 DataPropagator. 3. El contenido del archivo de contraseña tiene el formato siguiente: SERVER=servidor USER=id_usuario PWD=contraseña Donde: servidor El nombre del servidor fuente, de destino o de control, exactamente tal como aparece en la tabla del conjunto de suscripciones. Para este escenario, estos nombres son SAMPLE y COPYDB. idusuario El ID de usuario que piensa utilizar para administrar esta base de datos en concreto. Este valor es sensible a mayúsculas para los sistemas operativos Windows NT y UNIX. contraseña La contraseña que está asociada con este ID de usuario. Este valor es sensible a mayúsculas para los sistemas operativos Windows NT y UNIX. No deje líneas en blanco ni líneas para comentarios en este archivo. Añada sólo el nombre del servidor, el ID de usuario y la información de la contraseña. 4. El contenido del archivo de contraseña debe ser algo así: SERVER=SAMPLE USER=subina PWD=subpw SERVER=COPYDB USER=subina PWD=subpw Para obtener más información acerca de la autentificación y seguridad en DB2, consulte la publicación IBM DB2 Administration Guide. ------------------------------------------------------------------------ 13.7 Capítulo 5. Planificación de la duplicación 13.7.1 Nombres de tabla y de columna La duplicación no da soporte a espacios en blanco en nombres de tabla y de columna. 13.7.2 Duplicación de DATALINK La duplicación DATALINK está disponible en Solaris como parte de la versión 7.1 FixPak 1. Necesita un daemon de FTP que se ejecute en el sistema de archivos DATALINK fuente y destino y da soporte al mandato MDTM (modtime), que visualiza la hora de la última modificación de un archivo determinado. Si utiliza la versión 2.6 del sistema operativo Solaris o cualquier otra versión que no incluya el soporte de FTP para MDTM, necesitará software adicional, como por ejemplo WU-FTPD. No se pueden duplicar columnas DATALINK entre bases de datos DB2 en bases de datos AS/400 y DB2 que se encuentran en otras plataformas. En la plataforma AS/400, no hay soporte de duplicación del atributo "comment" de los valores DATALINK. Si está ejecutando AIX 4.2, antes de ejecutar el programa de salida de usuario por omisión (ASNDLCOPY) debe instalar el PTF para el APAR IY03101 (AIX 4210-06 RECOMMENDED MAINTENANCE FOR AIX 4.2.1). Este PTF contiene un arreglo Y2K para el mandato "modtime/MDTM" en el daemon FTP. Para verificar el arreglo, compruebe la hora de la última modificación devuelta por el mandato "modtime ", en que es un archivo modificado después del 1 de enero de 2000. Si la tabla de destino es una tabla CCD externa, DB2 DataPropagator llama a la rutina ASNDLCOPY para duplicar archivos DATALINK. Para conocer la información más reciente sobre la utilización de los programas ASNDLCOPY y ASNDLCOPYD, consulte el prólogo del código fuente de cada programa. Se aplican las limitaciones siguientes: * Las tablas CCD internas pueden contener indicadores DATALINK, pero no valores DATALINK. * Las tablas CCD externas condensadas pueden contener valores DATALINK. * Las tablas de destino CCD no condensadas no pueden contener ninguna columna DATALINK. * Cuando los servidores fuente y destino son el mismo, el conjunto de suscripciones no debe contener ningún miembro con columnas DATALINK. 13.7.3 Restricciones de LOB Las tablas CCD internas condensadas no pueden contener referencias a columnas LOB ni a indicadores LOB. 13.7.4 Planificación de la duplicación En la página 65, "Conectividad" debe incluir el hecho siguiente: Si el programa Apply no puede conectar con el servidor de control, el programa Apply termina. Cuando utilice bloqueo de datos para AS/400, debe asegurarse de que la cantidad total de datos a duplicar durante el intervalo no exceda de "4 millones de filas", y no de "4 MB" tal como se indica en la página 69 de la publicación. ------------------------------------------------------------------------ 13.8 Capítulo 6. Configuración del entorno de duplicación 13.8.1 Requisito previo a una actualización en cualquier parte (update-anywhere) Si desea configurar una duplicación de actualización en cualquier parte (update-anywhere) con detección de conflictos y más de 150 miembros abonados en un conjunto de abonados, debe ejecutar el DDL siguiente para crear la tabla ASN.IBMSNAP_COMPENSATE en el servidor de control: CREATE TABLE ASN.IBMSNAP_COMPENSATE ( APPLY_QUAL char(18) NOT NULL, MEMBER SMALLINT, INTENTSEQ CHAR(10) FOR BIT DATA, OPERATION CHAR(1)); 13.8.2 Configuración del entorno de duplicación En la página 95, "Personalización de los nombres de espacio de tabla, índice y tabla de CD" se indica que el archivo DPREPL.DFT se encuentra en el directorio \sqllib\bin o en el directorio \sqllib\java. Esto es incorrecto, DPREPL.DFT está en el directorio \sqllib\cc. En la página 128, la descripción del límite de retención debería indicar que el límite de retención se utiliza para recortar filas sólo cuando Capture se inicia en caliente o cuando utiliza el mandato prune de Capture. Si ha iniciado Capture con la opción de recorte automático, no utilizará el límite de retención para recortar filas. ------------------------------------------------------------------------ 13.9 Capítulo 8. Determinación de problemas El Replication Analyzer se ejecuta en sistemas Windows de 32 bits y AIX. Para ejecutar el Analyzer en AIX, asegúrese de que el directorio sqllib/bin aparece delante de /usr/local/bin en la variable de entorno PATH para evitar conflictos con /usr/local/bin/analyze. El Replication Analyzer tiene dos palabras clave opcionales adicionales: CT y AT. CT=n Mostrar únicamente aquellas entradas de la tabla de rastreo de Capture cuya antigüedad es inferior a n días. Esta palabra clave es opcional. Si no se especifica, el valor por omisión es de 7 días. AT=n Mostrar únicamente aquellas entradas de la tabla de seguimiento de Apply cuya antigüedad es inferior a n días. Esta palabra clave es opcional. Si no se especifica, el valor por omisión es de 7 días. Ejemplo: analyze mydb1 mydb2 f=mydirectory ct=4 at=2 deepcheck q=applyqual1 Para el Replication Analyzer, se actualiza la información de palabras clave siguiente: deepcheck Especifica que el Analyzer realiza un análisis más completo, incluyendo la información siguiente: información de poda de tablas CD y UOW, detalles de compresión y particionamiento de espacios de tablas de DB2 para OS/390, análisis de índices de destino con respecto a errores en sentencias SQL establecidas para tablas de suscripción, líneas de tiempo de suscripción y suscripciones. El análisis incluye a todos los servidores. Esta palabra clave es opcional. lightcheck Especifica que se excluirá del informe la información siguiente: detalles de todas las columnas de la tabla ASN.IBMSNAP_SUBS_COLS, errores de suscripción o anomalías y omisiones, e índices incorrectos o ineficaces. Esta reducción en la información ahorra recursos y produce un archivo de salida HTML más pequeño. Esta palabra clave es opcional y mutuamente exclusiva con la palabra clave deepcheck. Se dispone de herramientas del Analyzer en los PTF para duplicación en plataformas AS/400. Estas herramientas recopilan información sobre el entorno de duplicación y producen un archivo HTML que se puede enviar al representante del servicio IBM para ayudar en la determinación de problemas. Para obtener las herramientas de AS/400, baje el PTF adecuado (por ejemplo, para el producto 5769DP2 se debe bajar el PTF SF61798 o su versión más reciente). Añada el problema y la solución siguiente al apartado "Resolución de problemas": Problema: El programa Apply entra en un bucle con los cambios efectuados en la duplicación; la tabla de seguimiento de Apply indica STATUS=2. El conjunto de suscripciones incluye varias tablas fuente. Para mejorar el manejo de zonas activas para una de las tablas fuente del conjunto, se define una tabla CCD interna para dicha tabla fuente, pero en otro conjunto de suscripciones. Las actualizaciones se realizan sobre la tabla fuente, pero el proceso Apply que llena la tabla CCD interna se ejecuta de forma asíncrona (por ejemplo, es posible que no se haya iniciado el programa Apply o que no se haya desencadenado un suceso, etc.). El programa Apply que duplica actualizaciones de la tabla fuente en la tabla de destino entra en un bucle porque está esperando a que se actualice la tabla CCD interna. Para detener el bucle, inicie el programa Apply (o desencadene el suceso que ocasiona la duplicación) para la tabla CCD interna. El programa Apply llenará la tabla CCD interna y permitirá que el programa Apply que está en un bucle procese los cambios de todas las tablas fuente. Se puede producir una situación parecida para un conjunto de suscripciones que contenga tablas fuente con tablas CCD internas que se llenen mediante varios programas Apply. ------------------------------------------------------------------------ 13.10 Capítulo 9. Capture y Apply para AS/400 En la página 178, "Nota sobre la gestión de trabajos" debe decir: Puede alterar las definiciones por omisión o proporcionar las suyas propias. Si crea su propia descripción de subsistema, debe denominar el subsistema QZSNDPR y crearlo en una biblioteca distinta de QDPR. Para obtener más información sobre cómo cambiar estas definiciones, consulte la publicación "OS/400 Work Management V4R3", SC41-5306. Añada la información siguiente a la página 178, "Verificación y personalización de la instalación de DB2 DataPropagator para AS/400": Si tiene problemas con la contención del bloqueo debido a un gran volumen de transacciones, puede aumentar el valor de tiempo de espera por omisión pasándolo de 30 a 120. Puede cambiar el trabajo cada vez que se inicie el trabajo Capture o puede utilizar el procedimiento siguiente para cambiar el tiempo de espera por omisión para todos los trabajos que se ejecuten en el subsistema: 1. Emita el mandato siguiente para crear un nuevo objeto de clase duplicando QGPL/QBATCH: CRTDUPOBJ OBJ(QBATCH) FROMLIB(QGPL) OBJTYPE(*CLS) TOLIB(QDPR) NEWOBJ(QZSNDPR) 2. Cambie el valor de tiempo de espera para la clase recién creada (por ejemplo, por 300 segundos): CHGCLS CLS(QDPR/QZSNDPR) DFTWAIT(300) 3. Actualice la entrada de direccionamiento en la descripción de subsistema QDPR/QZSNDPR para utilizar la clase recién creada: CHGRTGE SBSD(QDPR/QZSNDPR) SEQNBR(9999) CLS(QDPR/QZSNDPR) En la página 194, "Utilización de la rutina de salida de supresión del receptor de diario", se debería incluir esta frase: Si ha eliminado el registro de la rutina de salida de supresión del receptor de diario, asegúrese de que todos los diarios utilizados para tablas fuente tienen DLTRCV(*NO). En la página 195, los parámetros del mandato ADDEXITPGM deben decir: ADDEXITPGM EXITPNT(QIBM_QJO_DLT_JRNRCV) FORMAT(DRCV0100) PGM(QDPR/QZSNDREP) PGMNBR(*LOW) CRTEXITPNT(*NO) PGMDTA(65535 10 QSYS) ------------------------------------------------------------------------ 13.11 Capítulo 10. Capture y Apply para OS/390 En el Capítulo 10, se han actualizado los siguientes párrafos: 13.11.1 Requisitos previos para DB2 DataPropagator para OS/390 Debe tener DB2 para OS/390 Versión 5, DB2 para OS/390 Versión 6 o DB2 para OS/390 Versión 7 para poder ejecutar DB2 DataPropagator para OS/390 Versión 7 (V7). 13.11.2 Esquemas de codificación UNICODE y ASCII en OS/390 DB2 DataPropagator para OS/390 V7 da soporte a los esquemas de codificación UNICODE y ASCII. Para aprovechar los nuevos esquemas de codificación, debe tener DB2 para OS/390 V7 y debe crear o convertir de forma manual la fuente, el destino y las tablas de control de DB2 DataPropagator tal como se describe en las siguientes secciones. Sin embargo, el entorno de duplicación existente funcionará con DB2 DataPropagator para OS/390 V7 aunque no modifique ningún esquema de codificación. 13.11.2.1 Elección de un esquema de codificación Si sus tablas fuente, CD y destino utilizan el mismo esquema de codificación, puede minimizar la necesidad de convertir datos en su entorno de duplicación. Cuando elija esquemas de codificación para las tablas, siga la única regla de CCSID: los datos de caracteres de un espacio de tabla se pueden modificar en ASCII, UNICODE o EBCDIC. Todas las tablas de un espacio de tabla deben utilizar el mismo esquema de codificación. El esquema de codificación de todas las tablas de una sentencia de SQL debe ser el mismo. Además, todas las tablas que utilice en vistas y uniones deben utilizar el mismo esquema de codificación. Si no sigue la única regla de CCSID, DB2 detectará la violación y devolverá SQLCODE -873 durante la vinculación o ejecución. Qué tablas deben estar en ASCII o UNICODE depende de la configuración de cliente/servidor. En concreto, siga estas reglas cuando elija los esquemas de codificación para tablas: * Las tablas fuente o destino en DB2 para OS/390 pueden estar en EBCDIC, ASCII o UNICODE. Se pueden copiar de tablas o en tablas que tengan el mismo u otro esquema de codificación en cualquier DBMS soportado (familia DB2 o no DB2 con DataJoiner). * En un servidor fuente DB2 para OS/390, todas las tablas CD, UOW, de registros y de control de recortes del mismo servidor deben utilizar el mismo esquema de codificación. Para asegurar esta coherencia, especifique siempre el esquema de codificación de forma explícita. * Todas las tablas de control (ASN.IBMSNAP_SUBS_xxxx) del mismo servidor de control deben utilizar el mismo esquema de codificación. * Otras tablas de control pueden utilizar cualquier esquema de codificación; sin embargo, se recomienda que la tabla ASN.IBMSNAP_CRITSEC permanezca en EBCDIC. 13.11.2.2 Establecimiento de esquemas de codificación Para especificar el esquema de codificación adecuado para tablas, modifique el SQL que se utiliza para generar las tablas: * Cree nuevas tablas fuente o destino con el esquema de codificación adecuado o cambie los esquemas de codificación de las tablas destino y fuente existentes. Se recomienda detener los programas Capture y Apply antes de cambiar el esquema de codificación de tablas existentes; después puede iniciar en frío el programa Capture y reiniciar el programa Apply. Para cambiar el esquema de codificación de tablas existentes: 1. Utilice el programa de utilidad Reorg para copiar la tabla existente. 2. Elimine la tabla existente. 3. Vuelva a crear la tabla especificando el nuevo esquema de codificación. 4. Utilice el programa de utilidad Load para cargar los datos antiguos en la nueva tabla. Consulte el manual DB2 Universal Database for OS/390 Utility Guide and Reference para obtener más información sobre los programas de utilidad Load y Reorg. * Cree nuevas tablas de control con el esquema de codificación adecuado o modifique el esquema de codificación correspondiente a las existentes. DPCNTL.MVS se suministra con DB2 para OS/390 en sqllib\samples\repl y contiene varias sentencias CREATE TABLE que crean los archivos de control. Para las tablas que tienen que estar en ASCII o UNICODE (por ejemplo, ASN.IBMSNAP_REGISTER y ASN.IBMSNAP_PRUNCNTL), añada el teclado CCSID ASCII o CCSID UNICODE, tal como se muestra en el ejemplo siguiente. CREATE TABLE ASN.IBMSNAP_PRUNCNTL ( TARGET_SERVER CHAR( 18) NOT NULL, TARGET_OWNER CHAR( 18) NOT NULL, TARGET_TABLE CHAR( 18) NOT NULL, SYNCHTIME TIMESTAMP, SYNCHPOINT CHAR( 10) FOR BIT DATA, SOURCE_OWNER CHAR( 18) NOT NULL, SOURCE_TABLE CHAR( 18) NOT NULL, SOURCE_VIEW_QUAL SMALLINT NOT NULL, APPLY_QUAL CHAR( 18) NOT NULL, SET_NAME CHAR( 18) NOT NULL, CNTL_SERVER CHAR( 18) NOT NULL, TARGET_STRUCTURE SMALLINT NOT NULL, CNTL_ALIAS CHAR( 8) ) CCSID UNICODE DATA CAPTURE CHANGES IN TSSNAP02; Para modificar las tablas de control o las tablas CD existentes, utilice los programas de utilidad Reorg y Load. * Cuando cree nuevas fuentes de duplicación o grupos de suscripciones, modifique el archivo SQL generado por la herramienta de administrador para especificar el esquema de codificación adecuado. El SQL tiene varias sentencias CREATE TABLE que sirven para crear las tablas de CD y destino para la fuente de duplicación y el grupo de suscripciones, respectivamente. Añada el teclado CCSID ASCII o CCSID UNICODE cuando sea necesario. Por ejemplo: CREATE TABLE user1.cdtable1 ( employee_name varchar, employee_age decimal ) CCSID UNICODE; El manual DB2 UDB para OS/390 Consulta de SQL contiene más información sobre CCSID. ------------------------------------------------------------------------ 13.12 Capítulo 11. Capture y Apply para plataformas UNIX 13.12.1 Establecimiento de variables de entorno para Capture y Apply en UNIX y Windows Si ha creado la base de datos fuente con una página de códigos que no corresponde con el valor de página de códigos por omisión, establezca la variable de entorno DB2CODEPAGE en dicha página de códigos. Consulte el manual DB2 Administration Guide para obtener información sobre cómo obtener valores de páginas de códigos antes de establecer DB2CODEPAGE. Capture se debe ejecutar en la misma página de códigos que la base de datos para la que está capturando datos. DB2 obtiene la página de códigos de Capture a partir del entorno activo en el que se está ejecutando Capture. Si la variable de entorno DB2CODEPAGE no está establecida, DB2 obtiene el valor de página de códigos a partir del sistema operativo. El valor que se obtiene del sistema operativo es correcto para Capture si ha utilizado la página de códigos por omisión al crear la base de datos. ------------------------------------------------------------------------ 13.13 Capítulo 14. Estructuras de tabla En la página 339, añada la sentencia siguiente a la descripción de la columna STATUS para el valor "2": Si utiliza tablas CCD internas y obtiene repetidamente un valor de "2" en la columna de estado de la tabla de seguimiento de Apply, diríjase al "Capítulo 8: Determinación de problemas" y consulte el "Problema: El programa Apply entra en bucle sin cambios de duplicación, la tabla de seguimiento de Apply muestra STATUS=2". ------------------------------------------------------------------------ 13.14 Capítulo 15. Mensajes de Capture y Apply El mensaje ASN0017E debería decir: ASN0017E El programa Capture ha encontrado un error interno grave y no ha podido emitir el mensaje de error correcto. El nombre de la rutina es "rutina". El código de retorno es "código_retorno". Se debe añadir el mensaje ASN1027S: ASN1027S Se han especificado demasiadas columnas de objetos grandes (LOB). El código de error es "". Explicación: Se han especificado demasiadas columnas de objetos grandes (BLOB, CLOB o DBCLOB) para un miembro de un grupo de suscripciones. El número máximo de columnas permitido es 10. Respuesta del usuario: Elimine las columnas de objetos grandes sobrantes del miembro del grupo de suscripciones. El mensaje ASN1048E debe decir lo siguiente: ASN1048E Ha fallado la ejecución de un ciclo de Apply. Consulte la tabla de seguimiento de Apply para ver más detalles: "" Explicación: Ha fallado un ciclo de Apply. En el mensaje "" se identifica "", "" y "". Respuesta del usuario: Compruebe los campos APPERRM de la tabla de seguimiento de auditoría para determinar por qué ha fallado el ciclo de Apply. ------------------------------------------------------------------------ 13.15 Apéndice A. Inicio de los programas Capture y Apply desde dentro de una aplicación En la página 399 de la publicación, aparecen algunos errores en los comentarios de la rutina de ejemplo que inicia los programas Capture y Apply; sin embargo, el código del ejemplo es correcto. La última parte del ejemplo hace referencia a los parámetros de Apply, a pesar del hecho de que los comentarios indican que hace referencia a los parámetros de Capture. Puede obtener ejemplos de la API de Apply y Capture, así como de los makefiles respectivos, en los directorios siguientes: Para NT - sqllib\samples\repl Para UNIX - sqllib/samples/repl ------------------------------------------------------------------------ System Monitor Guide and Reference ------------------------------------------------------------------------ 14.1 db2ConvMonStream En las Notas de uso, la estructura del tipo de corriente de datos variable instantánea SQLM_ELM_SUBSECTION debe ser sqlm_subsección. ------------------------------------------------------------------------ Troubleshooting Guide ------------------------------------------------------------------------ 15.1 Inicio de DB2 en Windows 95, Windows 98 y Windows ME cuando el usuario no tiene iniciada una sesión Para que un mandato db2start se ejecute satisfactoriamente en un entorno Windows 95, Windows 98 o Windows Millenium Edition (ME), debe: * Iniciar una sesión utilizando la ventana de inicio de sesión de Windows o la ventana de inicio de sesión de Microsoft Networking * Emita el mandato db2logon (vea la nota (NOTE_1) para obtener información sobre el mandato db2logon). Además, el ID de usuario que se especifique durante el inicio de sesión o para el mandato db2logon se debe ajustar a los requisitos de DB2 (vea la nota (NOTE2)). Cuando se inicia el mandato db2start, en primer lugar comprueba si el usuario tiene iniciada una sesión. Si la tiene iniciada, el mandato db2start utiliza el ID de dicho usuario. Si no la tiene iniciada, el mandato db2start comprueba si se ha ejecutado un mandato db2logon y, de ser así, el mandato db2start utiliza el ID de usuario que se ha especificado para el mandato db2logon. Si el mandato db2start no puede encontrar un ID de usuario válido, el mandato termina. Durante la instalación de DB2 Universal Database Versión 7 en Windows 95, Windows 98 y Windows ME, el software de instalación, por omisión, añade un atajo a la carpeta Arranque que ejecuta el mandato db2start cuando se arranca el sistema (vea la nota (NOTE_1) si desea obtener más información). Si el usuario del sistema no tiene iniciada una sesión ni ha emitido el mandato db2logon, el mandato db2start se interrumpirá. Si usted o sus usuarios no inician normalmente sesiones con Windows o con una red, puede ocultar el requisito de que se emita el mandato db2logon antes que un mandato db2start ejecutando desde un archivo de proceso por lotes, tal como sigue: 1. Cree un archivo de proceso por lotes que emita el mandato db2logon seguido del mandato db2start.exe. Por ejemplo: @echo off db2logon db2local /p:contraseña db2start cls exit 2. Asigne al archivo de proceso por lotes el nombre db2start.bat y almacénelo en el directorio /bin que se encuentra bajo la unidad y vía de acceso en que ha instalado DB2. El archivo de proceso por lotes se almacena en esta ubicación para asegurarse de que el sistema operativo pueda encontrar la vía de acceso al archivo. La unidad y vía de acceso en que se ha instalado DB2 están almacenadas en la variable de registro DB2PATH de DB2. Para averiguar la unidad y vía de acceso en que se ha instalado DB2, emita el mandato siguiente: db2set -g db2path Suponga que el mandato db2set devuelve el valor c:\sqllib. En este caso, almacenará el archivo de proceso por lotes de la manera siguiente: c:\sqllib\bin\db2start.bat 3. Para iniciar DB2 cuando se arranque el sistema, debe ejecutar el archivo de proceso por lotes desde un atajo de la carpeta Arranque. Tiene dos posibilidades: o Modificar el atajo creado por el programa de instalación de DB2 para ejecutar el archivo de proceso por lotes en lugar de db2start.exe. En el ejemplo precedente, el atajo ejecutaría ahora el archivo de proceso por lotes db2start.bat. El atajo creado por el programa de instalación de DB2 tiene por nombre DB2 - DB2.lnk y, en la mayoría de sistemas, está ubicado en c:\WINDOWS\Menú Inicio\Programas\Inicio\DB2 - DB2.lnk. o Añada su propio atajo para ejecutar el archivo de proceso por lotes y suprima el atajo añadido por el programa de instalación de DB2. Utilice el mandato siguiente para suprimir el atajo de DB2: del "C:\WINDOWS\Menú Inicio\Programas\Arranque\DB2 - DB2.lnk" Si decide utilizar su propio atajo, debe establecer el atributo close on exit para el atajo. Si no lo establece, el indicador de mandatos de DOS se queda en la barra de tareas aún después de que el mandato db2start se haya completado satisfactoriamente. Para evitar que la ventana de DOS se abra durante el proceso de db2start, puede crear este atajo (y la ventana de DOS en la que se ejecuta) de forma que se ejecute minimizado. Nota: Como alternativa a iniciar DB2 durante el arranque del sistema, se puede iniciar DB2 antes de ejecutar cualquier aplicación que utilice DB2. Para conocer más detalles, vea la nota (NOTE5). Si utiliza un archivo de proceso por lotes para emitir el mandato db2logon antes de que se ejecute el mandato db2start, y si los usuarios inician sesiones ocasionalmente, el mandato db2start seguirá funcionando, con la única diferencia de que DB2 utilizará el ID de usuario del usuario que ha iniciado una sesión. Para conocer más detalles, vea la nota (NOTE_1). Notas: 1. El mandato db2logon simula un inicio de sesión de un usuario. El formato del mandato db2logon es: db2logon idusuario /p:contraseña El ID de usuario que se especifique para el mandato se debe ajustar a los requisitos de denominación de DB2 (para obtener más información, vea la nota (NOTE2)). Si se emite el mandato sin ID de usuario y contraseña, se abre una ventana para solicitar al usuario esta información. Si el único parámetro que se proporciona es un ID de usuario, no se solicita la contraseña al usuario; en determinadas condiciones se requiere una contraseña, tal como se describe más adelante. Los valores de ID de usuario y contraseña establecidos por el mandato db2logon sólo se utilizan si el usuario no ha iniciado una sesión utilizando la ventana de inicio de sesión de Windows ni la ventana de inicio de sesión de Microsoft Networking. Si el usuario ha iniciado una sesión y se ha emitido un mandato db2logon, se utiliza el ID de usuario del mandato db2logon para todas las acciones de DB2, pero se ignora la contraseña especificada en el mandato db2logon. Si el usuario no ha iniciado una sesión utilizando la ventana de inicio de sesión de Windows ni la ventana de inicio de sesión de Microsoft Networking, se utilizan el ID de usuario y la contraseña proporcionados mediante el mandato db2logon, de la manera siguiente: o El mandato db2start utiliza el ID de usuario al iniciarse y no necesita contraseña. o En ausencia de un calificador de alto nivel para acciones tales como crear una tabla, se utiliza el ID de usuario como calificador de alto nivel. Por ejemplo: 1. Si emite el mandato siguiente: db2logon db2local 2. Emita también el siguiente: create table tab1 La tabla se crea con un calificador de alto nivel como db2local.tab1. Debe utilizar un ID de usuario que sea igual al nombre de esquema de las tablas y otros objetos. o Cuando el sistema actúa como cliente de un servidor, y el usuario emite una sentencia CONNECT sin ID de usuario ni contraseña (por ejemplo, CONNECT TO TEST) y la autentificación se establece en servidor, se utilizan el ID de usuario y la contraseña del mandato db2logon para validar el usuario en el servidor remoto. Si el usuario se conecta con un ID de usuario y una contraseña explícitos (por ejemplo, CONNECT TO TEST USER IDusuario USING contraseña), se utilizan los valores especificados para la sentencia CONNECT. 2. En la Versión 7, el ID de usuario que se utiliza para iniciar sesiones o que se especifica para el mandato db2logon se debe ajustar a los siguientes requisitos de DB2: o No puede ser ninguno de los siguientes: USERS, ADMINS, GUESTS, PUBLIC, LOCAL o cualquier palabra reservada de SQL que esté listada en la publicación Consulta de SQL. o No puede empezar por: SQL, SYS ni IBM o Los caracteres pueden incluir: + De la A a la Z (Windows 95, Windows 98 y Windows ME dan soporte a los ID de usuario sensibles a mayúsculas y minúsculas). + Del 0 al 9 + @, # o $ 3. Puede evitar la creación del atajo de db2start en la carpeta Arranque durante una instalación interactiva personalizada o, si está realizando una instalación mediante archivo de respuestas, si especifica la opción DB2.AUTOSTART=NO. Si utiliza estas opciones, no existirá ningún atajo de db2start en la carpeta Arranque y deberá añadir su propio atajo para ejecutar el archivo db2start.bat. 4. En Windows 98 y Windows ME, se dispone de una opción que se puede utilizar para especificar un ID de usuario con el que se inicie una sesión siempre que se arranque Windows 98 o Windows ME. En este caso, no aparecerá la ventana de inicio de sesión de Windows. Si utiliza esta opción, se iniciará una sesión de un usuario y el mandato db2start se ejecutará satisfactoriamente si el ID de usuario se ajusta a los requisitos de DB2 (vea más detalles en la nota (NOTE2)). Si no utiliza esta opción, siempre se presentará al usuario una ventana de inicio de sesión. Si el usuario cancela esta ventana sin iniciar una sesión, el mandato db2start fallará a menos que previamente se haya emitido el mandato db2logon o se le haya invocado desde el archivo de proceso por lotes, tal como se ha descrito anteriormente. 5. Si no se inicia DB2 durante un arranque del sistema, lo puede iniciar una aplicación. Puede ejecutar el archivo db2start.bat formando parte de la inicialización de aplicaciones que utilizan DB2. Utilizando este método, sólo se iniciará DB2 cuando se inicie la aplicación que lo va a utilizar. Cuando el usuario sale de la aplicación, se puede emitir un mandato db2stop para detener DB2. Las aplicaciones comerciales pueden iniciar DB2 de esta manera, en caso de que no se inicie DB2 durante el arranque del sistema. Para utilizar la aplicación DB2 Synchronizer o llamar a las API de sincronización desde la aplicación, se debe iniciar DB2 si los scripts que se bajen para ejecutarlos contienen mandatos que funcionan con una instancia local o una base de datos local. Estos mandatos pueden estar en los scripts de la base de datos, en los scripts de la instancia o incorporados en los scripts del sistema operativo (OS). Si un script del OS no contiene mandatos de Procesador de línea de mandatos ni ninguna API de DB2 que utilicen una instancia o una base de datos, se puede ejecutar sin que se inicie DB2. Debido a la posible dificultad de saber por adelantado qué mandatos se ejecutarán desde los scripts durante el proceso de sincronización, normalmente se iniciará DB2 antes de que comience la sincronización. Si llama al mandato db2sync o a las API de sincronización desde la aplicación, deberá iniciar DB2 durante la inicialización de la aplicación. Si los usuarios van a utilizar el atajo de DB2 Synchronizer en la carpeta DB2 para Windows para comenzar la sincronización, el atajo de DB2 Synchronization se debe modificar de forma que ejecute un archivo db2sync.bat. El archivo de proceso por lotes debe contener los mandatos siguientes para asegurarse de que DB2 esté en ejecución antes de que empiece la sincronización: @echo off db2start.bat db2sync.exe db2stop.exe cls exit En este ejemplo, se supone que el archivo db2start.bat invoca a los mandatos db2logon y db2start descritos anteriormente. Si decide iniciar DB2 cuando se inicie la aplicación, cerciórese de que la instalación de DB2 no añade ningún atajo para iniciar DB2 a la carpeta Arranque. Para conocer más detalles, vea la nota (NOTE3). ------------------------------------------------------------------------ 15.2 Capítulo 1. Buenas prácticas para la resolución de problemas 15.2.1 Herramienta para analizar el problema y recopilar el entorno Existe un programa de utilidad que le será de ayuda para identificar parte de la información asociada al problema y que recopilará otras informaciones relevantes para ayudar a que DB2 Customer Support comprenda el entorno y el problema. Gran parte de la información que se recopila mediante este programa de utilidad se explica en el resto de este capítulo. El programa de utilidad es db2support. Puede encontrar detalles acerca de la sintaxis del mandato y de las opciones de línea de mandatos en el manual Consulta de mandatos. El objetivo de este programa de utilidad es recopilar datos del entorno sobre la máquina cliente o servidor que está ejecutando DB2 y, a continuación, recopilar y empaquetar una gran parte de la salida en forma de archivo XML, HTML comprimido, que se puede examinar. Asimismo, el programa de utilidad dispone de una opción que permite la recopilación de algunos datos del usuario acerca de la naturaleza del problema, utilizando para ello un proceso interactivo de preguntas y respuestas. Este proceso le será de ayuda para clarificar el problema y proporcionar información a DB2 Customer Support cuando finalmente entre en contacto con éste en referencia al problema. Nota: Un cliente fino o de ejecución no puede utilizar este programa de utilidad. Este programa requiere que el cliente tenga instaladas las bibliotecas del motor de DB2. 15.2.1.1 Salidas de la recopilación El programa de utilidad produce una recopilación comprimida (un solo archivador de archivos) de la información importante del sistema de bases de datos. En este archivador existe un informe HTML de la información más esencial, que se puede utilizar para ver la información. Por omisión, db2support no recopilará datos de tablas, esquemas (DDL) ni anotaciones cronológicas para proteger la seguridad y confidencialidad de los datos del cliente. Con algunas opciones, el usuario puede elegir que se incluyan aspectos del esquema y de los datos (como, por ejemplo, que se incluyan anotaciones cronológicas archivadas). Las opciones que exponen datos o esquemas de bases de datos se deben utilizar con precaución. Cuando se invoque a db2support, se visualizará un mensaje indicando el grado de confidencialidad de los datos de que se trata. Los archivos que se recopilarán y comprimirán en un solo archivador son los siguientes: Recopilados bajo cualquier circunstancia 1. db2diag.log 2. Todos los archivos de detección (de condiciones de excepción) 3. Archivos de impresión de bloqueos (con -d) 4. Archivos de vuelcos 5. Salidas del usuario (con -d) 6. Archivos de control de la agrupación de almacenamientos intermedios y de espacios de tablas (SPCS) (con -d) 7. Diversos archivos relacionados con el sistema 8. Salida de diversos mandatos del sistema 9. Configuración bd (con -d) 10. Archivos de configuración dbm 11. Archivo de cabeceras de archivos de anotaciones cronológicas (con -d) 12. Archivo de historia de recuperaciones 13. db2cli.ini Recopilados opcionalmente 1. Archivos de anotaciones cronológicas activos 2. Contenido del directorio db2dump (es decir, lo que no se ha recopilado anteriormente) 3. Archivos imagen de memoria (-a para recopilar todos los archivos imagen de memoria, -r para recopilar únicamente el archivo imagen de memoria más reciente) 4. Información del sistema ampliada (-s) Los archivos siguientes forman el contenido del informe HTML: Recopilados bajo cualquier circunstancia 1. Número de PMR, si existe. (si se ha especificado -n) 2. Sistema operativo y nivel. (por ejemplo, AIX 4.2.1) 3. Información del release de DB2. 4. Información de cabecera de la biblioteca del motor. 5. Detección de 32 ó 64 bits 6. Información de la vía de acceso de instalación de DB2. 7. Para el informe EEE, contenido de db2nodes.cfg 8. Cuántas CPU, cuántos discos y cuánta memoria. 9. Lista de las bases de datos de esta instancia. 10. Información de registro, entorno, incluyendo la vía de acceso & libpath. 11. Espacio libre en disco para el sistema de archivos actual e inodos para Unix. 12. Nivel de JDK. 13. Configuración dbm. 14. Listado del archivo de historia de recuperaciones de la base de datos. 15. 'ls -lR' (o equivalente en Windows) del directorio sqllib. 16. LIST NODE DIRECTORY 17. LIST ADMIN NODE DIRECTORY 18. LIST DCS DIRECTORY 19. LIST DCS APPLICATIONS EXTENDED 20. Lista de todo el software instalado. Recopilados si se especifica '-s' 1. Información detallada del disco (diseño de particiones, tipo, información del LVM, etc.) 2. Información detallada de la red 3. Estadísticas del kernel 4. Versiones del firmware 5. Otros mandatos específicos de la plataforma Recopilados si se ha iniciado DB2 1. Estado de la conexión con el cliente 2. Configuración db/dbm (db cfg requiere la opción -d) 3. Configuración de la CLI 4. Información de la agrupación de memoria (tamaño y consumida). Datos completos si se utiliza la opción -d. 5. LIST ACTIVE DATABASES 6. LIST DATALINKS MANAGERS 7. LIST DCS APPLICATIONS Recopilados si se ha especificado -c y se puede establecer conexión con la base de datos 1. Número de tablas de usuario 2. Tamaño aproximado de los datos de DB 3. Instantánea de la base de datos 4. Instantánea de la aplicación 5. Información de la agrupación de almacenamientos intermedios 6. LIST APPLICATIONS 7. LIST COMMAND OPTIONS 8. LIST DATABASE DIRECTORY 9. LIST INDOUBT TRANSACTIONS 10. LIST NODEGROUPS 11. LIST NODES 12. LIST ODBC DATA SOURCES 13. LIST PACKAGES/TABLES 14. LIST TABLESPACE CONTAINERS 15. LIST TABLESPACES 16. LIST DRDA IN DOUBT TRANSACTIONS Si se especifica '-q', se recopila lo siguiente La modalidad de preguntas y respuestas interactivas está iniciada. Con la excepción de una pregunta "describa su problema" opcional y de un pequeño número de peticiones para información del cliente, todas las preguntas tienen varias respuestas posibles de entre las cuales se puede elegir. Se recopilarán todas las preguntas, incluidas las de seguimiento, y las respuestas. En algunos casos, el programa de utilidad le solicitará que lleve a cabo una tarea y coloque el resultado de la misma en un directorio adicional. Durante la modalidad interactiva se utiliza un pequeño árbol de decisiones para determinar las preguntas que se deben formular. Estas preguntas interactivas son de ayuda para determinar la categoría del problema y, en base a la categoría, se pueden formular unas cuantas preguntas relevantes más y se pueden recopilar datos adicionales. Al final de las preguntas, también se recopilarán los datos que se habrían recopilado en modalidad automática. Las respuestas a todas las preguntas se almacenan en preparación de su envío al Centro de servicio, junto con los datos recopilados en modalidad automática. 15.2.1.2 Visualización de detailed_system_info.html Si está ejecutando db2support en una instalación en que no se utiliza el idioma inglés y experimenta dificultades para visualizar correctamente detailed_system_info.html, es posible que tenga que utilizar Internet Explorer versión 5 o posteriores con codificación DOS. Para cambiar la codificación, seleccione Ver --> Codificación --> Europa central (DOS). Si todavía no tiene el soporte de codificación necesario, Internet Explorer le indicará que baje los archivos requeridos del sitio Web de Microsoft Updates. Esta información no es aplicable a los idiomas de byte doble (chino simplificado, chino tradicional, japonés y coreano). 15.2.1.3 Visualización de la sintaxis de DB2 Support Tool de página en página Para ver la sintaxis de DB2 Support Tool de página en página, ejecute el mandato siguiente: db2support | more ------------------------------------------------------------------------ 15.3 Capítulo 2. Resolución de problemas de DB2 Universal Database Server Bajo la sección "Bloqueo y puntos muertos", en la subsección "Aplicaciones lentas o que parece que se han bloqueado", se debe cambiar la descripción que aparece bajo "Las esperas de bloqueo o los puntos muertos no se deben al bloqueo de la siguiente clave" por: Bloqueo siguiente clave garantiza un nivel de aislamiento de Lectura repetible (RR) al bloquear automáticamente la siguiente clave para todas las sentencias INSERT y DELETE y el siguiente valor de clave más alto que esté por encima del grupo de resultados para sentencias SELECT. Para sentencias UPDATE que modifiquen partes de clave de un índice, la clave del índice original se suprime y se inserta el nuevo valor de clave. El bloqueo de siguiente clave se realiza en la inserción de clave y en la supresión de clave. Esto es necesario para garantizar RR estándar de ANSI y SQL92 y es el valor por omisión de DB2. Examine la información de instantánea correspondiente a la aplicación. Si el problema parece encontrarse con el bloqueo de siguiente clave, puede activar la opción DB2_RR_TO_RS si ninguna de las aplicaciones confía en el comportamiento de Lectura repetible (RR) y se acepta que las exploraciones se salten las supresiones no confirmadas. Cuando DB2_RR_TO_RS está activado, el comportamiento RR no se puede garantizar para exploraciones en tablas de usuarios porque el bloqueo de siguiente clave no se realiza durante la inserción y supresión de clave de índice. Las tablas de catálogo no se ven afectadas por esta opción. El otro cambio en el comportamiento es que, cuando DB2_RR_TO_RS está activado, las exploraciones se saltan las filas que se han suprimido pero no se han confirmado, aunque la fila se haya cualificado para la exploración. Por ejemplo, supongamos que tenemos un escenario en el que la transacción A suprime la fila con column1=10 y la transacción B realiza una exploración donde column1>8 y column1<12. Con DB2_RR_TO_RS desactivado, la transacción B esperará a que la transacción A se confirme o retrotraiga. Si se retrotrae, la fila con column1=10 se incluirá en el grupo de resultados de la consulta de la transacción B. Con DB2_RR_TO_RS activado, la transacción B no esperará a que la transacción A se confirme o retrotraiga. Recibirá inmediatamente los resultados de la consulta que no incluyan la fila suprimida. No utilice esta opción si necesita RR estándar ANSI y SQL92 o si no desea que las exploraciones se salten las supresiones no confirmadas. ------------------------------------------------------------------------ 15.4 Capítulo 8. Resolución de problemas de DB2 Data Links Manager En la Versión 7 del FixPak 2, el servidor genera un mensaje de aviso SQL1179W al precompilar un archivo de origen o al vincular un archivo de vinculación lógica sin especificar un valor para la opción FEDERATED. El mismo mensaje se genera cuando el archivo de origen o archivo de vinculación incluye referencias de SQL estático a un apodo. Hay dos excepciones: * Para los clientes que estén en un FixPak anterior a la Versión 7 del FixPak 2 o para clientes de nivel inferior, la API de sqlaprep() no comunica este aviso SQL1179W en el archivo de mensajes. El mandato PRECOMPILE del Procesador de línea de mandatos no emite tampoco la salida en este caso. * Para los clientes que estén en un FixPak anterior a la Versión 7 del FixPak 2 o para clientes de nivel inferior, la API sqlabndx si que comunica este aviso SQL1179W en el archivo de mensajes. Sin embargo, este archivo de mensajes incluye también de modo incorrecto un mensaje SQL0092N que indica que no se ha creado ningún paquete. Este mensaje no es correcto ya que el paquete ya se ha creado. El mandato BIND del Procesador de línea de mandatos devuelve el mismo aviso erróneo. ------------------------------------------------------------------------ Utilización de DB2 Universal Database en plataformas de 64 bits ------------------------------------------------------------------------ 16.1 Capítulo 5. Configuración 16.1.1 LOCKLIST Debe añadirse la información siguiente a la Tabla 2. Parámetro Límite superior anterior Límite superior actual LOCKLIST 60000 524288 16.1.2 shmsys:shminfo_shmmax Los usuarios de DB2 en el sistema operativo Solaris de 64 bits deberían aumentar el valor de "shmsys:shminfo_shmmax" en /etc/system, si es necesario, para poder asignar un conjunto grande de memoria compartida de la base de datos. El manual DB2 para UNIX Guía rápida de iniciación recomienda establecer este parámetro en el "90% de la RAM física de la máquina, en bytes". Esta recomendación también es válida para implementaciones de 64 bits. Sin embargo, existe un problema con la recomendación siguiente en el manual DB2 para UNIX Guía rápida de iniciación: Para los sistemas de 32 bits con más de 4 GB de RAM (es posible un máximo de 64 GB en total en el sistema operativo Solaris), si un usuario establecer el valor shmmax en un número mayor que 4 GB y utiliza un kernel de 32 bits, el kernel sólo mira los 32 bits inferiores del número, lo que a veces comporta un valor para shmmax muy pequeño. ------------------------------------------------------------------------ 16.2 Capítulo 6. Restricciones Actualmente no se proporciona soporte a LDAP en sistemas operativos de 64 bits. No pueden crearse bases de datos de 32 bits y de 64 bits en la misma vía de acceso. Por ejemplo, si existe una base de datos de 32 bits en , entonces: db2 create db on si se emite desde una instancia de 64 bits, se produce un error: "SQL10004C Se ha producido un error de E/S al acceder al directorio de la base de datos". ------------------------------------------------------------------------ Administración y programación del expansor de XML Encontrará las Notas sobre el release correspondientes a IBM DB2 XML Extender en el siguiente sitio Web de DB2 XML: http://www-4.ibm.com/software/data/db2/extenders/xmlext/library.html ------------------------------------------------------------------------ MQSeries Esta sección describe cómo se pueden utilizar DB2 y MQSeries para crear aplicaciones que combinen gestión de mensajes y acceso a bases de datos. Esta sección se centra en una serie de funciones, parecidas a Funciones definidas por el usuario (UDF), que se pueden habilitar opcionalmente en DB2 Universal Database, Versión 7.2. Utilizando estas funciones básicas, se puede dar soporte a una amplia gama de aplicaciones, desde una simple notificación de suceso a almacén de datos. Para obtener más información sobre las aplicaciones de almacenamiento de datos, consulte el recientemente renovado manual Data Warehouse Center Administration Guide, que puede obtener de http://www.ibm.com/software/data/db2/udb/winos2unix/support. ------------------------------------------------------------------------ 18.1 Instalación y configuración de DB2 MQSeries Functions Esta sección describe cómo configurar un entorno de DB2 para que utilice DB2 MQSeries Functions. Una vez realizado satisfactoriamente el siguiente procedimiento, podrá utilizar DB2 MQSeries Functions desde dentro de SQL. Encontrará una descripción de estas funciones en la sección Consulta de SQL de las Notas del release. El procedimiento básico para configurar y habilitar DB2 MQSeries Functions es: 1. Instalar MQSeries. 2. Instalar AMI de MQSeries. 3. Habilitar y configurar DB2 MQSeries Functions. Además, para poder utilizar las funciones de publicación y suscripción que suministra DB2 MQSeries Functions, también debe instalar MQSeries Integrator o las funciones de publicación y suscripción de MQSeries. Encontrará información sobre MQSeries Integrator en http://www.ibm.com/software/ts/mqseries/integrator. Encontrará información sobre la característica de publicación y suscripción de MQSeries en http://www.ibm.com/software/ts/mqseries/txppacs bajo la categoría 3. 18.1.1 Instalación de MQSeries El primer paso consiste en asegurarse de que, cómo mínimo, se ha instalado MQSeries Versión 5.1 con el último FixPak en el servidor de DB2. Si esta versión de MQSeries ya está instalada, vaya al paso siguiente, "Instalación de AMI de MQSeries". DB2 Versión 7.2 incluye una copia del servidor de MQSeries que se va a utilizar con DB2. Encontrará instrucciones específicas para instalar MQSeries o para actualizar una instalación existente de MQSeries en el manual Guía rápida de iniciación de una plataforma específica en http://www.ibm.com/software/ts/mqseries/library/manuals. Asegúrese de configurar un gestor de colas por omisión a medida que avanza por el proceso de instalación. 18.1.2 Instalación de AMI de MQSeries El siguiente paso es instalar la Interfaz de gestión de mensajes de aplicaciones (AMI) de MQSeries. Es una extensión de las interfaces de programación de MQSeries que ofrece una separación clara de las tareas administrativas y de programación. Para poder utilizar DB2 MQSeries Functions hay que instalar esta interfaz. Si la AMI de MQSeries ya está instalada en el servidor de DB2, vaya al paso siguiente, "Habilitación de DB2 MQSeries Functions". Si la AMI de MQSeries no está instalada, puede hacerlo desde el paquete de instalación que se suministra con DB2 7.2 o bajando una copia de la AMI del sitio Web de MQSeries Support Pacs en http://www.ibm.com/software/ts/mqseries/txppacs. La AMI se encuentra bajo "Category 3 - Product Extensions". Para su comodidad, suministramos una copia de la AMI de MQSeries con DB2. Este archivo se encuentra en el directorio sqllib/cfg. El nombre del archivo depende del sistema operativo: AIX Versión 4.3 y superiores ma0f_ax.tar.Z HP-UX ma0f_hp.tar.Z Entorno operativo Solaris ma0f_sol7.tar.Z Windows de 32 bits ma0f_nt.zip Siga el proceso normal de instalación de la AMI que se describe en el archivo readme de la AMI contenido en la imagen de instalación comprimida. 18.1.3 Habilitación de DB2 MQSeries Functions Durante este paso, configurará y habilitará una base de datos para DB2 MQSeries Functions. El programa de utilidad enable_MQFunctions es un mandato flexible que en primer lugar comprueba que se ha configurado el entorno de MQSeries adecuado y luego instala y crea una configuración por omisión para DB2 MQSeries Functions, habilita la base de datos especificada con estas funciones y confirma que la configuración funciona. 1. Para Windows NT o Windows 2000, vaya al paso 5. 2. Definición de grupos en UNIX: si está habilitando estas funciones en UNIX, primero debe añadir el propietario de la instancia de DB2 (que suele ser db2inst1) y el id de usuario asociado a las UDF protegidas (que suele ser db2fenc1) al grupo de MQSeries mqm. Esto es necesario para que las funciones de DB2 puedan acceder a MQSeries. 3. Defina variables de entorno de DB2 en UNIX: añada la variable de entorno AMT_DATA_PATH a la lista que DB2 comprende. Puede editar el archivo $INSTHOME/sqllib/profile.env y añadir AMT_DATA_PATH a DB2ENVLIST. También se puede utilizar el mandato db2set. 4. En UNIX, vuelva a iniciar la instancia de la base de datos; para que los cambios en variables de entorno entren en vigor, se debe volver a iniciar la instancia de la base de datos. 5. Cambie al directorio $INSTHOME/sqllib/cfg para UNIX o %DB2PATH%/cfg en Windows. 6. Ejecute el mandato enable_MQFunctions para configurar y habilitar una base de datos para DB2 MQSeries Functions. Consulte 18.6, enable_MQFunctions para ver una descripción completa de este mandato. A continuación se muestran algunos ejemplos comunes. Tras finalizar satisfactoriamente esta tarea, la base de datos especificada se habrá habilitado y la configuración se habrá probado. 7. Para probar estas funciones utilizando el Procesador de línea de mandatos, emita los siguientes mandatos después de establecer conexión con la base de datos habilitada: values DB2MQ.MQSEND('a test') values DB2MQ.MQRECEIVE() La primera sentencia enviará el mensaje "a test" a la cola DB2MQ_DEFAULT_Q y la segunda lo volverá a recibir. Nota: Como resultado de ejecutar enable_MQFunctions, se establecerá un entorno de MQSeries por omisión. Se crearán el gestor de colas de MQSeries DB2MQ_DEFAULT_MQM y la cola por omisión DB2MQ_DEFAULT_Q. Los archivos amt.xml, amthost.xml y amt.dtd se crearán si aún no existen en el directorio al que apunta AMT_DATA_PATH. Si no existe un archivo amthost.xml y no contiene una definición para connectionDB2MQ, se añadirá una línea al archivo con la información adecuada. Se guardará una copia del archivo original como DB2MQSAVE.amthost.xml. ------------------------------------------------------------------------ 18.2 Estilos de gestión de mensajes de MQSeries DB2 MQSeries Functions da soporte a tres modelos de gestión de mensajes: datagramas, publicación y suscripción (p/s) y petición y respuesta (r/r). Los mensajes que se envían como datagramas se envían a un solo destino y no se espera respuesta. En el modelo p/s, uno o más publicadores envían un mensaje a un servicio de publicación que distribuye el mensaje a uno o más suscriptores. El modelo de petición y respuesta es parecido al de datagrama, pero el que envía el mensaje espera recibir una respuesta. ------------------------------------------------------------------------ 18.3 Estructura de mensajes MQSeries no obliga a utilizar ninguna estructura determinada de los mensajes que transporta. Otros productos, como MQSeries Integrator (MQSI), ofrecen soporte a mensajes formados como C o Cobol o como series XML. Los mensajes estructurados en MQSI se definen mediante un repositorio de mensajes. Los mensajes XML suelen tener una estructura de mensaje autoexplicativa y se pueden gestionar a través de un repositorio. Los mensajes también pueden no estar estructurados y necesitar un código de usuario para analizar o construir el contenido del mensaje. Estos mensajes suelen estar semiestructurados, es decir, utilizan posiciones de bytes o delimitadores fijos para separar los campos dentro de un mensaje. MQSeries Assist Wizard ofrece soporte para estos mensajes semiestructurados. Se ofrece soporte para mensajes XML a través de alguna características nuevas de DB2 XML Extender. ------------------------------------------------------------------------ 18.4 Visión general funcional de MQSeries Con DB2 UDB Versión 7.2 se ofrecen un grupo de funciones de MQSeries que permiten que las sentencias de SQL incluyan operaciones de gestión de mensajes. Esto significa que este soporte está disponible para las aplicaciones escritas en cualquier lenguaje soportado, por ejemplo C, Java, SQL utilizando cualquiera de las interfaces de bases de datos. Todos los ejemplos que se muestran a continuación están en SQL. Este SQL se puede utilizar desde otros lenguajes de programación de todas las formas estándares. Todos los estilos de gestión de mensajes de MQSeries descritos anteriormente reciben soporte. Para obtener más información sobre funciones de MQSeries, consulte la sección Consulta de SQL de las Notas del release. En una configuración básica, hay un servidor de MQSeries situado en la máquina servidor de bases de datos junto con DB2. Las funciones de MQSeries se instalan en DB2 y ofrecen acceso al servidor de MQSeries. Los clientes DB2 pueden estar en cualquier máquina a la que pueda acceder el servidor de DB2. Varios clientes pueden acceder simultáneamente a las funciones de MQSeries a través de la base de datos. Mediante las funciones suministradas, los clientes de DB2 pueden realizar operaciones de gestión de mensajes dentro de sentencias de SQL. Estas operaciones de gestión de mensajes permiten que las aplicaciones de DB2 se comuniquen entre sí o con otras aplicaciones de MQSeries. El mandato enable_MQFunctions sirve para habilitar una base de datos de DB2 para las funciones de MQSeries. Establecerá automáticamente una configuración sencilla por omisión que pueden utilizar las aplicaciones de clientes sin realizar ninguna acción administrativa adicional. Para ver una descripción, consulte los apartados 18.6, enable_MQFunctions y 18.7, disable_MQFunctions. La configuración por omisión ofrece a los programadores de aplicaciones un método rápido de comenzar y una interfaz sencilla para el desarrollo. Se pueden ir configurando de forma incrementan funciones adicionales a medida que se necesitan. Ejemplo 1: para enviar un mensaje sencillo utilizando la configuración por omisión, la sentencia de SQL sería la siguiente: VALUES DB2MQ.MQSEND('mensaje simple') Esta sentencia enviará el mensaje mensaje simple al gestor de colas de MQSeries y a la cola especificada por la configuración por omisión. La Interfaz de gestión de aplicaciones (AMI) de MQSeries ofrece una separación clara entre acciones de gestión de mensajes y las definiciones que indican cómo se deben llevar a cabo estas acciones. Estas definiciones se mantienen en un archivo de repositorio externo y se gestionan mediante la herramienta de administración de AMI. Esto facilita el desarrollo y el mantenimiento de las aplicaciones AMI. Las funciones de MQSeries que se suministran con DB2 se basan en la interfaz AMI de MQSeries. AMI da soporte al uso de un archivo de configuración externo, denominado Repositorio de AMI, para almacenar la información de configuración. La configuración por omisión incluye un Repositorio de AMI de MQSeries configurado para que se utilice con DB2. Hay dos conceptos de la AMI de MQSeries, puntos de servicio y políticas, que se transfieren en DB2 MQSeries Functions. Un punto de servicio es un punto final lógico desde el que se envía o en el que se recibe un mensaje. En el repositorio de AMI, cada punto de servicio se define con un nombre de cola de MQSeries y un gestor de colas. Las políticas definen las opciones de calidad de servicio que se deben utilizar para una determinada operación de gestión de mensajes. Las calidades clave de servicio incluyen prioridad y permanencia del mensaje. Se ofrecen puntos de servicio y definiciones de políticas por omisión que pueden utilizar los programadores para simplificar sus aplicaciones. El ejemplo 1 se puede reescribir del siguiente modo para especificar de forma explícita el nombre de política y punto de servicio por omisión: Ejemplo 2: VALUES DB2MQ.MQSEND('DB2.DEFAULT.SERVICE', 'DB2.DEFAULT.POLICY', 'mensaje simple') Una o más aplicaciones pueden dar servicio a colas en el servidor en el que residen las colas y aplicaciones. En muchas configuraciones se definen varias colas para dar soporte a distintas aplicaciones y diferentes objetivos. Por este motivo, suele ser importante definir diferentes puntos de servicio cuando se realizan peticiones de MQSeries. Esto se demuestra en el siguiente ejemplo: Ejemplo 3: VALUES DB2MQ.MQSEND('ODS_Input', 'mensaje simple') Nota: En este ejemplo, no se especifica ninguna política, por lo que se utilizará la política por omisión. 18.4.1 Limitaciones MQSeries ofrece la posibilidad de combinar operaciones de mensajes y operaciones de bases de datos en una sola unidad de trabajo como una transacción atómica. Esta característica inicialmente no recibe soporte de MQSeries Functions en Unix y Windows. Cuando se utilizan las funciones de envío o recepción, la longitud máxima de un mensaje de tipo VARCHAR es de 4000 caracteres. La longitud máxima para enviar o recibir un mensaje de tipo CLOB es de 1 MB. Éstos son también los tamaños máximos de mensaje para publicar un mensaje mediante MQPublish. Algunas veces, se necesitan funciones distintas para trabajar con mensajes CLOB y mensajes VARCHAR. Generalmente, la versión CLOB de una función MQ utiliza una sintaxis idéntica a la de su contrapartida. La única diferencia es que el nombre contiene, al final, los caracteres CLOB. Por ejemplo, el equivalente CLOB de MQREAD es MQREADCLOB. Para ver una lista detallada de estas funciones, consulte 38.2, Ahora se soportan datos CLOB en funciones de MQSeries. 18.4.2 Códigos de error Los códigos de retorno que devuelve MQSeries Functions se encuentran en el Apéndice B del manual de la Interfaz de gestión de mensajes de aplicaciones de MQSeries. ------------------------------------------------------------------------ 18.5 Escenarios de aplicación MQSeries Functions se puede utilizar en una amplia variedad de escenarios. En esta sección se revisan algunos de los escenarios más comunes, que incluyen Gestión básica de mensajes, Conectividad de aplicaciones y Publicación de datos. 18.5.1 Gestión básica de mensajes La forma más básica de gestión de mensajes con MQSeries DB2 Functions se produce cuando todas las aplicaciones de bases de datos se conectan al mismo servidor de DB2. Los clientes pueden ser locales al servidor de bases de datos o pueden estar distribuidos en un entorno de red. En un escenario sencillo, el Cliente A invoca la función MQSEND para enviar una serie definida por el usuario a la ubicación de servicio por omisión. Luego las funciones de MQSeries se ejecutan dentro de DB2 en el servidor de bases de datos. Luego, el Cliente B invoca la función MQRECEIVE para eliminar el mensaje que hay al principio de la cola definida por el servicio por omisión y devolverlo al cliente. De nuevo, DB2 ejecuta las funciones de MQSeries que realizan esta tarea. Los clientes de bases de datos pueden utilizar la gestión sencilla de mensajes de varias formas. Algunas aplicaciones comunes de la gestión de mensajes son: * Recopilación de datos -- La información se recibe en forma de mensajes procedentes de una o más fuentes de información. Las fuentes de información pueden ser aplicaciones comerciales, como SAP, o aplicaciones desarrolladas por la empresa. Estos datos se pueden recibir de colas y almacenar en tablas de bases de datos para su futuro proceso y análisis. * Distribución de cargas de trabajo -- Las peticiones de trabajo se colocan en una cola compartida por varias instancias de la misma aplicación. Cuando una instancia está lista para realizar trabajo, recibe un mensaje del principio de la cola que contiene una petición de trabajo a realizar. Utilizando esta técnica, varias instancias pueden compartir la carga de trabajo representada por una sola cola de peticiones agrupadas. * Señalización de aplicaciones -- En una situación en la que colaboran varios procesos, se suelen utilizar mensajes para coordinar los esfuerzos. Estos mensajes pueden contener mandatos o peticiones de trabajo a realizar. Normalmente, este tipo de señalización es de una dirección; es decir, la parte que inicia el mensaje no espera una respuesta. Consulte el tema 18.5.4.1, Comunicaciones tipo petición y respuesta para obtener más información. * Notificación de aplicación -- La notificación es parecida a la señalización en que se envían datos de un iniciador sin que espere una respuesta. Sin embargo, normalmente las notificaciones contienen datos sobre los sucesos comerciales que han tenido lugar. 18.5.4.2, Publicación y suscripción constituye una forma más avanzada de notificación. El siguiente escenario amplía el escenario sencillo descrito anteriormente para incorporar la gestión remota de mensajes. Es decir, se envía un mensaje entre la Máquina A y la Máquina B. La secuencia de pasos es la siguiente: 1. El Cliente DB2 ejecuta una llamada a MQSEND, especificando un servicio de destino que se ha definido para representar una cola remota en la Máquina B. 2. MQSeries DB2 Functions realizan el trabajo real de MQSeries para enviar el mensaje. El servidor de MQSeries de la Máquina A acepta el mensaje y garantiza que lo distribuirá en su destino, definido por la definición del punto de servicio y por la configuración actual de MQSeries en la Máquina A. El servidor determina que se trata de una cola de la Máquina B. Luego intenta distribuir el mensaje al servidor de MQSeries de la Máquina B, reintentándolo de forma transparente tantas veces como son necesarias. 3. El servidor de MQSeries de la Máquina B acepta el mensaje procedente del servidor de la Máquina A y lo coloca en la cola de destino de la Máquina B. 4. Un cliente de MQSeries de la Máquina B solicita el mensaje que hay al principio de la cola. 18.5.2 Envío de mensajes Mediante MQSEND, un programador o usuario de DB2 elige los datos que desea enviar y dónde los desea enviar y se enviarán. En la industria esto se suele denominar "Enviar y olvidarse", que significa que el remitente se limita a enviar un mensaje, confiando en los protocolos de distribución garantizados de MQSeries para asegurar que el mensaje alcanza su destino. Los siguientes ejemplos lo ilustran. Ejemplo 4: Para enviar una serie definida por el usuario al punto de servicio myPlace con la política highPriority: VALUES DB2MQ.MQSEND('myplace','highPriority','test') Aquí, la política highPriority hace referencia a una política definida en el Repositorio de AMI que establece la prioridad de MQSeries como la de más alto nivel y quizás ajuste otras calidades de servicio, como permanencia. El contenido del mensaje puede estar compuesto por cualquier combinación válida de datos específicos de usuario y SQL. Esto incluye funciones anidadas, operadores y conversiones. Por ejemplo, dada una tabla EMPLOYEE, con las columnas VARCHAR LASTNAME, FIRSTNAME y DEPARTMENT, para enviar un mensaje que contenga esta información a cada empleado de DEPARTMENT 5LGA debería hacer lo siguiente: Ejemplo 5: SELECT DB2MQ.MQSEND(LASTNAME || ' ' || FIRSTNAME || ' ' || DEPARTMENT) FROM EMPLOYEE WHERE DEPARTMENT = '5LGA' Si esta tabla también tuviera una columna AGE de enteros, se incluiría del siguiente modo: Ejemplo 6: SELECT DB2MQ.MQSEND(LASTNAME || ' ' || FIRSTNAME || ' ' || DEPARTMENT|| ' ' || char(AGE)) FROM EMPLOYEE WHERE DEPARTMENT = '5LGA' Si la tabla EMPLOYEE tuviera una columna RESUME de tipo CLOB en lugar de una columna AGE, se podría enviar un mensaje que contuviera la información correspondiente a cada empleado del DEPARTMENT 5LGA, del modo siguiente: Ejemplo 7: SELECT DB2MQ.MQSEND (clob(LASTNAME) || ' ' || clob(FIRSTNAME) || ' ' || clob(DEPARTMENT) || ' ' || RESUME)) FROM EMPLOYEE WHERE DEPARTMENT = '5LGA' Ejemplo 8: Finalmente, el siguiente ejemplo muestra cómo el contenido del mensaje se puede obtener mediante cualquier expresión de SQL válida. Dada una segunda tabla, DEPT, que contiene las columnas VARCHAR DEPT_NO y DEPT_NAME, se pueden enviar mensajes que contengan LASTNAME y DEPT_NAME de los empleados: Ejemplo 8: SELECT DB2MQ.MQSEND(e.LASTNAME || ' ' || d.DEPTNAME) FROM EMPLOYEE e, DEPT d WHERE e.DEPARTMENT = d.DEPTNAME 18.5.3 Recuperación de mensajes MQSeries DB2 Functions permite recibir o leer mensajes. La diferencia entre leer y recibir es que al leer se devuelve el mensaje al principio de una cola sin eliminarlo de la misma, mientras que la operación de recibirlo hace que el mensaje se elimine de la cola. Un mensaje recuperado mediante una operación de recepción sólo se puede recuperar una vez, mientras que un mensaje recuperado mediante una operación de lectura permite recuperar el mismo mensaje varias veces. Los siguientes ejemplos lo demuestran: Ejemplo 8: VALUES DB2MQ.MQREAD() Este ejemplo devuelve una serie VARCHAR que contiene el mensaje que hay al principio de la cola definida por el servicio por omisión utilizando la política de calidad de servicio por omisión. Es importante observar que si no hay ningún mensaje disponible para su lectura, se devuelve un valor nulo. Esta operación no modifica la cola. Ejemplo 9: VALUES DB2MQ.MQRECEIVE('Employee_Changes') El ejemplo anterior muestra cómo se puede eliminar un mensaje del principio de la cola definida por el servicio Employee_Changes utilizando la política por omisión. Una característica muy potente de DB2 es la posibilidad de generar una tabla a partir de una función definida por el usuario (o suministrada por DB2). Puede aprovechar esta característica de función de tablas para permitir que el contenido de una cola se materialice como una tabla de DB2. El ejemplo siguiente muestra la forma más sencilla de esta función: Ejemplo 10: SELECT t.* FROM table ( DB2MQ.MQREADALL()) t Esa consulta devuelve una tabla que consta de todos los mensajes de la cola definida por el servicio por omisión y los metadatos sobre estos mensajes. Aunque la definición completa de la estructura de la tabla devuelta se define en el Apéndice, la primera columna refleja el contenido del mensaje y las demás columnas contienen los metadatos. Para devolver únicamente los mensajes, se podría reescribir el ejemplo: Ejemplo 11: SELECT t.MSG FROM table (DB2MQ.MQREADALL()) t La tabla que devuelve una función de tabla no difiere de una tabla recuperada directamente de la base de datos. Esto significa que puede utilizar esta tabla de varias formas. Por ejemplo, puede unir el contenido de la tabla con otra tabla o contar el número de mensajes de una cola: Ejemplo 12: SELECT t.MSG, e.LASTNAME FROM table (DB2MQ.MQREADALL() ) t, EMPLOYEE e WHERE t.MSG = e.LASTNAME Ejemplo 13: SELECT COUNT(*) FROM table (DB2MQ.MQREADALL()) t También puede ocultar el hecho de que la fuente de la tabla es una consulta, creando una vista sobre una función de tabla. Por ejemplo, el siguiente ejemplo crea una vista denominada NEW_EMP sobre la cola a la que hace referencia el servicio denominado NEW_EMPLOYEES: Ejemplo 14: CREATE VIEW NEW_EMP (msg) AS SELECT t.msg FROM table (DB2MQ.MQREADALL()) t En este caso, la vista se define con una sola columna que contiene un mensaje entero. Si los mensajes tienen una estructura simple, por ejemplo contienen dos campos de longitud fija, es más sencillo utilizar las funciones incorporadas de DB2 para analizar el mensaje en las dos columnas. Por ejemplo, si sabe que los mensajes que se envían a una determinada cola siempre contienen un apellido de 18 caracteres seguido de un nombre de 18 caracteres, puede definir una vista que contenga cada campo como una columna separada, del siguiente modo: Ejemplo 15: CREATE VIEW NEW_EMP2 AS SELECT left(t.msg,18) AS LNAME, right(t.msg,18) AS FNAME FROM table(DB2MQ.MQREADALL()) t Una nueva característica de DB2 Stored Procedure Builder, MQSeries Assist Wizard, permite crear nuevas funciones y vistas de tablas de DB2 que correlacionarán estructuras delimitadas de mensajes con columnas. Finalmente, suele resultar útil almacenar el contenido de uno o más mensajes en la base de datos. Esto se puede conseguir utilizando toda la potencia de SQL para manipular y almacenar contenido de mensajes. Quizás el ejemplo más sencillo es el siguiente: Ejemplo 16: INSERT INTO MESSAGES SELECT t.msg FROM table (DB2MQ.MQRECEIVEALL()) t Dada una tabla MESSAGES, con una sola columna de VARCHAR(2000), la sentencia anterior insertará los mensajes de la cola del servicio por omisión en la tabla. Esta técnica se puede mejorar para cubrir una amplia variedad de circunstancias. 18.5.4 Conectividad de aplicación a aplicación La integración de aplicaciones es un elemento común de muchas soluciones. Tanto si se integra una aplicación adquirida en una infraestructura existente como si se integra una aplicación recientemente desarrollada en un entorno existente, generalmente nos enfrentamos a la tarea de combinar un grupo heterogéneo de subsistemas para que funcionen conjuntamente. MQSeries se suele considerar la herramienta esencial para integrar aplicaciones. MQSeries, al que se puede acceder desde la mayoría de entornos de hardware, software y lenguajes, ofrece los métodos para interconectar un grupo muy heterogéneo de aplicaciones. Esta sección trata algunos escenarios de integración de aplicaciones y cómo se pueden utilizar con DB2. Puesto que el tema es muy amplio, el tratamiento de la integración de aplicaciones queda fuera del ámbito de este manual. Por lo tanto, nos centraremos en dos temas sencillos: las comunicaciones tipo petición y respuesta y MQSeries Integrator y publicación y suscripción. 18.5.4.1 Comunicaciones tipo petición y respuesta El método de comunicaciones de petición y respuesta (R/R) es una técnica muy común para que una aplicación solicite los servicios de otra. Un modo de hacerlo es que el peticionario envíe un mensaje al proveedor de servicio solicitando que realice un trabajo. Una vez realizado el trabajo, el proveedor puede decidir enviar los resultados (o simplemente una confirmación de que se ha realizado el trabajo) al peticionario. Pero utilizando las técnicas básicas de gestión de mensajes descritas anteriormente, no hay nada que conecte la petición del remitente con la respuesta del proveedor de servicio. A no ser que el peticionario espere una respuesta antes de continuar, se deben utilizar algunos mecanismos para asociar cada respuesta con su petición. En lugar de imponer que el programador cree dicho mecanismo, MQSeries ofrece un identificador de correlación que permite la correlación de mensajes en un intercambio. Aunque este mecanismo se puede utilizar de varias formas, el modo más sencillo consiste en que el peticionario marque un mensaje con un identificador de correlación conocido utilizando, por ejemplo, la siguiente sentencia: Ejemplo 17: DB2MQ.MQSEND ('myRequester','myPolicy','SendStatus:cust1','Req1') Esta sentencia añade un parámetro final, Req1, a la anterior sentencia MQSEND para indicar el identificador de correlación correspondiente a la petición. Para recibir una respuesta a esta petición específica, utilice la sentencia MQRECREIVE correspondiente para recuperar de forma selectiva el primer mensaje definido por el servicio indicado que coincida con este identificador de correlación, del modo siguiente: Ejemplo 18: DB2MQ.MQRECEIVE('myReceiver','myPolicy','Req1') Si la aplicación que da servicio a la petición está ocupada y el peticionario emite el mandato MQRECEIVE anterior antes de que se envíe la respuesta, no se encontrará ningún mensaje que coincida con este identificador de correlación. Para recibir la petición de servicio y el identificador de correlación, se utiliza una sentencia como la siguiente: Ejemplo 19: SELECT msg, correlid FROM table (DB2MQ.MQRECEIVEALL('aServiceProvider','myPolicy',1)) t Esto devuelve el mensaje y el identificador de correlación de la primera petición del servicio aServiceProvider. Una vez realizado el servicio, envía el mensaje de respuesta a la cola descrita por aRequester. Mientras tanto, el peticionario del servicio puede estar realizando otro trabajo. De hecho, no hay garantía de que la petición inicial de servicio se responda dentro de un periodo de tiempo definido. El programador debe gestionar los tiempos de espera a nivel de aplicación como este; el peticionario debe sondear para detectar la presencia de la respuesta. La ventaja de este proceso asíncrono que no depende del tiempo es que el peticionario y el proveedor de servicio se ejecutan de forma completamente independiente. Esto se puede utilizar para adaptar entornos en los que las aplicaciones sólo se conectan de forma intermitente y entornos con procesos por lotes en los que se agregan varias peticiones o respuestas antes del proceso. Este tipo de agregación se suele utilizar en entornos de almacén de datos para actualizar periódicamente un almacén de datos o almacén de datos operativos. 18.5.4.2 Publicación y suscripción Publicación de datos sencillos Otro escenario común en la integración de aplicaciones es que una aplicación notifique a otras aplicaciones sobre sucesos de interés. Esto se puede realizar fácilmente enviando un mensaje a una cola supervisada por otra aplicación. El contenido del mensaje puede ser una serie definida por el usuario o puede estar compuesto a partir de columnas de bases de datos. Normalmente, con la función MQSEND se envían mensajes sencillos. Cuando estos mensajes se tienen que enviar simultáneamente a varios receptores, se puede utilizar el recurso de Lista de distribución de la AMI de MQSeries. Una lista de distribución se define mediante la herramienta de administración de AMI. Una lista de distribución comprende una lista de servicios individuales. Se envía un mensaje enviado a una lista de distribución a cada uno de los servicios definidos dentro de la lista. Esto resulta especialmente útil cuando se sabe que unos cuantos servicios están siempre interesados en cada mensaje. El ejemplo siguiente muestra el envío de un mensaje a la lista de distribución interestedParties: Ejemplo 20: DB2MQ.MQSEND('interestedParties','información de interés general'); Cuando se necesita más control sobre los mensajes que deben recibir determinados servicios, se necesita la función de publicación y suscripción. Los sistemas de publicación y suscripción normalmente ofrecen un entorno seguro y escalable en el que varios suscriptores se pueden registrar para recibir mensajes procedentes de varios publicadores. Para dar soporte a esta función se puede utilizar la interfaz MQPublish junto con MQSeries Integrator o el recurso de publicación y suscripción de MQSeries. MQPublish permite a los usuarios especificar opcionalmente un tema que se asociará con un mensaje. Los temas permiten a un suscriptor especificar de forma más clara los mensajes que desea aceptar. La secuencia de pasos es la siguiente: 1. Un administrador de MQSeries configura las funciones de publicación y suscripción de MQSeries Integrator. 2. Las aplicaciones interesadas se suscriben a los puntos de suscripción definidos por la configuración de MQSI y pueden especificar si lo desean temas en los que están interesadas. Cada suscriptor selecciona temas relevantes y también puede utilizar las técnicas de suscripción basadas en contenido de MQSeries Integrator V2. Es importante observar que estas colas, tal como están representadas por nombres de servicios, definen al suscriptor. 3. Una aplicación de DB2 publica un mensaje en el punto de servicio Meteorología. El mensaje indica que el tiempo es Aguanieve con el tema Austin, con lo que notifica a los suscriptores interesados que el tiempo en Austin es Aguanieve. 4. Los mecanismos para publicar realmente el mensaje se manejan mediante las funciones de MQSeries que ofrece DB2. El mensaje se envía a MQSeries Integrator utilizando el servicio denominado Meteorología. 5. MQSI acepta el mensaje procedente del servicio Meteorología, realiza los procesos definidos por la configuración de MQSI y determina a qué suscripciones notifica. Luego MQSI envía el mensaje a las colas de suscriptores con cuyos criterios coincide. 6. Las aplicaciones suscritas al servicio Meteorología que han registrado un interés en Austin recibirán el mensaje Aguanieve en su servicio de recepción. Para publicar estos datos utilizando todos los valores por omisión y tema nulo, utilizaría la siguiente sentencia: Ejemplo 21: SELECT DB2MQ.MQPUBLISH(LASTNAME || ' ' || FIRSTNAME || ' ' || DEPARTMENT|| ' ' ||char(AGE)) FROM EMPLOYEE WHERE DEPARTMENT = '5LGA' Si se especifican por completo todos los parámetros y se simplifica el mensaje para que sólo contenga LASTNAME, la sentencia sería la siguiente: Ejemplo 22: SELECT DB2MQ.MQPUBLISH('HR_INFO_PUB', 'SPECIAL_POLICY', LASTNAME, 'ALL_EMP:5LGA', 'MANAGER') FROM EMPLOYEE WHERE DEPARTMENT = '5LGA' Esta sentencia publica mensajes en el servicio de publicación HR_INFO_PUB utilizando el servicio SPECIAL_POLICY. Los mensajes indican que el remitente es el tema MANAGER. La serie del tema muestra que se pueden especificar varios temas, concatenados mediante el signo ':'. En este ejemplo, el hecho de utilizar dos temas permite a los suscriptores registrarse para ALL_EMP o sólo 5LGA para recibir estos mensajes. Para recibir mensajes publicados, primero debe registrar su interés en los mensajes que contienen un determinado tema e indicar el nombre del servicio de suscriptor al que se deben enviar los mensajes. Es importante observar que un servicio de suscriptor AMI define un servicio intermediario y un servicio de recepción. El servicio intermediario es el modo en que el suscriptor se comunica con el intermediario de publicación y suscripción y el servicio de recepción es el lugar en el que se envían los mensajes que coinciden con la petición de suscripción. La siguiente sentencia registra un interés en el tema ALL_EMP. Ejemplo 23: DB2MQ.MQSUBSCRIBE('aSubscriber', 'ALL_EMP') Una vez suscrita una aplicación, los mensajes publicados con el tema ALL_EMP se enviarán al servicio de recepción definido por el servicio de suscripción. Una aplicación puede tener varias suscripciones simultáneas. Para obtener los mensajes que coinciden con su suscripción, puede utilizar cualquiera de las funciones estándares de recuperación de mensajes. Por ejemplo, si el servicio de suscripción aSubscriber define que el servicio de recepción sea aSubscriberReceiver, la siguiente sentencia leerá de forma no destructiva el primer mensaje: Ejemplo 24: DB2MQ.MQREAD('aSubscriberReceiver') Para determinar los mensajes y los temas bajo los que se han publicado, debe utilizar una de las funciones de tabla. La sentencia siguiente recibe los cinco primeros mensajes de aSubscriberReceiver y muestran el mensaje y el tema: Ejemplo 25: SELECT t.msg, t.topic FROM table (DB2MQ.MQRECEIVEALL('aSubscriberReceiver',5)) t Para leer todos los mensajes con el tema ALL_EMP, puede aprovechar la potencia de SQL para emitir: Ejemplo 26: SELECT t.msg FROM table (DB2MQ.MQREADALL('aSubscriberReceiver')) t WHERE t.topic = 'ALL_EMP' Nota: Es importante observar que, si se utiliza MQRECEIVEALL con una restricción, se consume toda la cola, no solo los mensajes publicados con el tema ALL_EMP. Esto se debe a que la función de tabla se realiza antes de que se aplique la restricción. Cuando deja de estar interesado en suscribirse a un determinado tema, debe anular de forma explícita la suscripción mediante una sentencia como la siguiente: Ejemplo 27: DB2MQ.MQUNSUBSCRIBE('aSubscriber', 'ALL_EMP') Una vez emitida esta sentencia, el intermediario de publicación y suscripción dejará de distribuir mensajes que coincidan con esta suscripción. Publicación automática Otra técnica importante en la gestión de mensajes de bases de datos es la publicación automática. Utilizando un recurso de desencadenante de DB2, puede publicar mensajes automáticamente como parte de una invocación del desencadenante. Aunque existen otras técnicas para la publicación automática de datos, el enfoque basado en desencadenantes ofrece a los administradores o programadores una gran libertad para construir contenido de mensajes y flexibilidad para definir las acciones desencadenadoras. Al igual que en cualquier uso que se haga de los desencadenantes, se debe prestar atención a la frecuencia y coste de la ejecución. Los siguientes ejemplos muestran cómo se pueden utilizar desencadenantes con MQSeries DB2 Functions. El ejemplo siguiente muestra lo fácil que resulta publicar un mensaje cada vez que se contrata un nuevo empleado. Cualquier usuario o aplicación suscritos al servicio HR_INFO_PUB con interés registrado en NEW_EMP recibirán un mensaje con la fecha, nombre y departamento de cada nuevo empleado. Ejemplo 28: CREATE TRIGGER new_employee AFTER INSERT ON employee REFERENCING NEW AS n FOR EACH ROW MODE DB2SQL VALUES DB2MQ.MQPUBLISH('HR_INFO_PUB&', 'NEW_EMP', current date || ' ' || LASTNAME || ' ' || DEPARTMENT) ------------------------------------------------------------------------ 18.6 enable_MQFunctions enable_MQFunctions Habilita DB2 MQSeries Functions para la base de datos especificada y valida que DB2 MQSeries Functions se puede ejecutar correctamente. El mandato fallará si no se han instalado y configurado MQSeries y AMI de MQSeries. Autorización Una de las siguientes: * sysadm * dbadm * IMPLICIT_SCHEMA sobre la base de datos, si no existe el nombre de esquema implícito o explícito de la función * Privilegio CREATEIN sobre el esquema, si existe el nombre de esquema, DB2MQ Sintaxis del mandato >>-enable_MQFunctions---n--basedatos---u--idusuario-------------> >---p--contraseña--+-------+--+------------+------------------->< '-force-' '-noValidate-' Parámetros del mandato -n basedatos Especifica el nombre de la base de datos que se va a habilitar. -u idusuario Especifica el ID de usuario que se va a conectar a la base de datos. -p contraseña Especifica la contraseña del ID de usuario. -force Especifica que los avisos encontrados durante una reinstalación se deben pasar por alto. -noValidate Especifica que no se llevará a cabo la validación de DB2 MQSeries Functions. Ejemplos En el siguiente ejemplo, se crean funciones DB2MQ. El usuario se conecta a la base de datos SAMPLE. Se utiliza el esquema por omisión DB2MQ. enable_MQFunctions -n sample -u user1 -p password1 Notas sobre uso DB2 MQ Functions se ejecuta bajo el esquema DB2MQ, que se crea automáticamente mediante este mandato. Antes de ejecutar este mandato: * Asegúrese de que MQ y AMI están instalados y de que la versión de MQSeries es la 5.1 o posterior. * Asegúrese de que la variable de entorno $AMT_DATA_PATH está definida. * Cambie el directorio al subdirectorio cfg de DB2PATH En UNIX: * Utilice db2set para añadir AMT_DATA_PATH a DB2ENVLIST. * Asegúrese de que la cuenta de usuario asociada con la ejecución de UDF es miembro del grupo mqm. * Asegúrese de que el usuario que va a llamar a este mandato es miembro del grupo mqm. Nota: AIX 4.2 no recibe soporte de MQSeries 5.2. ------------------------------------------------------------------------ 18.7 disable_MQFunctions disable_MQFunctions Inhabilita el uso de DB2 MQSeries Functions para la base de datos especificada. Autorización Una de las siguientes: * sysadm * dbadm * IMPLICIT_SCHEMA sobre la base de datos, si no existe el nombre de esquema implícito o explícito de la función * Privilegio CREATEIN sobre el esquema, si existe el nombre de esquema, DB2MQ Sintaxis del mandato >>-disable_MQFunctions---n--basedatos---u--idusuario------------> >---p--contraseña---------------------------------------------->< Parámetros del mandato -n basedatos Especifica el nombre de la base de datos. -u idusuario Especifica el ID de usuario utilizado para conectar con la base de datos. -p contraseña Especifica la contraseña del ID de usuario. Ejemplos En el siguiente ejemplo se inhabilitan las funciones DB2MQ para la base de datos SAMPLE. disable_MQFunctions -n sample -u user1 -p password1 ------------------------------------------------------------------------ Herramientas administrativas Tabla de contenido parcial * Centro de control o 19.1 Posibilidad de administrar DB2 Server para servidores VSE y VM o 19.2 Soporte de Java 1.2 para el Centro de control o 19.3 Error "Atajo no válido" al utilizar la ayuda en línea en el sistema operativo Windows o 19.4 Los atajos del teclado no funcionan o 19.5 Centro de control Java en OS/2 o 19.6 Error "Acceso a archivo denegado" al intentar visualizar un trabajo completado en el Diario del sistema operativo Windows o 19.7 Multisite Update Test Connect o 19.8 Centro de control de DB2 para OS/390 o 19.9 Arreglo necesario del Centro de control para OS/390 o 19.10 Cambio en el diálogo Create Spatial Layer o 19.11 Información sobre resolución de problemas para el Centro de control de DB2 o 19.12 Resolución de problemas del Centro de control en sistemas basados en UNIX o 19.13 Posible problema de Infopops en OS/2 o 19.14 Ayuda para el parámetro de configuración jdk11_path o 19.15 Error del sistema Solaris (SQL10012N) al utilizar el Centro de Scripts o el Diario o 19.16 Ayuda para el archivo DPREPL.DFT o 19.17 Lanzamiento de más de un applet del Centro de control o 19.18 Ayuda en línea para el Centro de control al ejecutarlo como applet o 19.19 Ejecución del Centro de control en modalidad de applet (Windows 95) o 19.20 Cómo trabajar con resultados de consultas muy largos * Centro de información o 20.1 Error "Atajo no válido" en el sistema operativo Windows o 20.2 Apertura de enlaces externos de Web en Netscape Navigator cuando Netscape ya está abierto (sistemas basados en UNIX) o 20.3 Problemas al iniciar el Centro de información * Asistentes o 21.1 Establecimiento del tamaño de extensión en el Asistente para crear bases de datos o 21.2 Asistente MQSeries Assist o 21.3 Asistente OLE DB Assist ------------------------------------------------------------------------ Centro de control ------------------------------------------------------------------------ 19.1 Posibilidad de administrar DB2 Server para servidores VSE y VM Se ha mejorado el soporte de DB2 Server para bases de datos VSE y VM por parte del Centro de control de DB2 Universal Database Versión 7. El Centro de control puede visualizar todos los objetos de DB2 Server para bases de datos VSE y VM. También existe soporte para las sentencias CREATE INDEX, REORGANIZE INDEX y UPDATE STATISTICS, así como para el mandato REBIND. REORGANIZE INDEX y REBIND requieren que se ejecute un procedimiento almacenado en DB2 Server para sistemas principales VSE y VM. Este procedimiento almacenado lo suministra la característica Centro de control para VSE y VM de DB2 Server para VSE y VM. El Centro de control completamente integrado permite al usuario gestionar DB2, independientemente de la plataforma en la que se ejecute el servidor DB2. Los objetos de DB2 Server para VSE y VM se visualizan en la ventana principal del Centro de control, junto con los objetos de DB2 Universal Database. Las acciones y los programas de utilidad correspondientes para gestionar estos objetos se invocan seleccionando el objeto. Por ejemplo, un usuario puede listar los índices de una base de datos determinada, seleccionar uno de los índices y reorganizarla. También puede listar las tablas de una base de datos y ejecutar estadísticas de actualización, o bien definir una tabla como fuente de duplicación. Para obtener información sobre cómo configurar el Centro de control para que realice tareas administrativas sobre objetos de DB2 Server para VSE y VM, consulte las publicaciones DB2 Connect User's Guide o Suplemento de instalación y configuración. ------------------------------------------------------------------------ 19.2 Soporte de Java 1.2 para el Centro de control El Centro de control soporta idiomas bidireccionales, tales como el árabe y el hebreo, utilizando el soporte bi-di en Java 1.2. Sólo se proporciona este soporte para la plataforma Windows NT. Java 1.2 debe estar instalado para que el Centro de control lo reconozca y utilice: 1. JDK 1.2.2 está disponible en el CD de DB2 UDB bajo el directorio DB2\bidi\NT. ibm-inst-n122p-win32-x86.exe es el programa instalador e ibm-jdk-n122p-win32-x86.exe es la distribución de JDK. Copie ambos archivos a un directorio temporal de la unidad de disco duro y, a continuación, ejecute el programa instalador desde éste. 2. Instálelo bajo \java\Java12, donde es la vía de acceso de instalación de DB2. 3. No seleccione JDK/JRE como System VM cuando lo solicite la instalación de JDK/JRE. Una vez que se haya instalado Java 1.2 satisfactoriamente, al iniciar el Centro de control de forma normal se utilizará Java 1.2. Para detener la utilización de Java 1.2, puede desinstalar JDK/JRE de \java\Java12 o, simplemente, cambiar el nombre del subdirectorio \java\Java12 por algún otro. Nota: No confunda \java\Java12 con \Java12.\Java12 forma parte de la instalación de DB2 e incluye soporte de JDBC para Java 1.2. ------------------------------------------------------------------------ 19.3 Error "Atajo no válido" al utilizar la ayuda en línea en el sistema operativo Windows Cuando utilice la ayuda en línea del Centro de control, es posible que se encuentre con un error tal como: "Atajo no válido". Si recientemente ha instalado un nuevo navegador Web o una nueva versión de un navegador Web, asegúrese de que los documentos HTML y HTM estén asociados al navegador correcto. Vea el tema de Ayuda de Windows "Cambiar el programa que se inicia al abrir un archivo". ------------------------------------------------------------------------ 19.4 Los atajos del teclado no funcionan En algunos idiomas, para el Centro de control en sistemas basados en UNIX y en OS/2, algunos atajos (teclas de cambio de modalidad) del teclado no funcionan. Utilice el ratón para seleccionar opciones. ------------------------------------------------------------------------ 19.5 Centro de control Java en OS/2 El Centro de control debe instalarse en una unidad formateada HPFS. ------------------------------------------------------------------------ 19.6 Error "Acceso a archivo denegado" al intentar visualizar un trabajo completado en el Diario del sistema operativo Windows En DB2 Universal Database para Windows NT, se produce un error de "Acceso a archivo denegado" cuando se intenta abrir el Diario para ver los detalles de un trabajo creado en el Centro de scripts. El estado del trabajo indica que se ha completado. Se da este comportamiento cuando un trabajo creado en el Centro de scripts contiene el mandato START. Para evitar que así sea, utilice START/WAIT en lugar de START, tanto en el archivo de proceso por lotes como en el propio trabajo. ------------------------------------------------------------------------ 19.7 Multisite Update Test Connect El funcionamiento de Multisite Update Test Connect en el Centro de control Versión 7 está limitado por la versión de la instancia de destino. La instancia de destino debe ser, como mínimo, de Versión 7 para que el funcionamiento de la conexión de prueba "remota" sea correcto. Para ejecutar Multisite Update Test Connect en la Versión 6, debe activar el Centro de control localmente en la instancia de destino y ejecutarlo desde ésta. ------------------------------------------------------------------------ 19.8 Centro de control de DB2 para OS/390 El Centro de control de DB2 UDB para OS/390 le permite gestionar el uso de los programas bajo licencia de IBM DB2. Las funciones de los programas de utilidad que constituyen elementos de características de DB2 UDB para OS/390 que se solicitan por separado deben disponer de licencia y se tienen que instalar en el entorno antes de que el Centro de control de DB2 las gestione. La base de datos "CC390", definida con el Centro de control al configurar un subsistema DB2 para OS/390, se utiliza para soporte interno del Centro de control. No modifique esta base de datos. Aunque DB2 para OS/390 Versión 7.1 no se menciona específicamente en la tabla de contenido del Centro de control, o en la información de Tareas del Centro de información, la documentación soporta las funciones de DB2 para OS/390 Versión 7.1. Muchas de las funciones específicas de DB2 para OS/390 Versión 6 también están relacionadas con DB2 para OS/390 Versión 7.1, y algunas funciones que son específicas de DB2 para OS/390 Versión 7.1 de la tabla de contenido no tienen designación de versión. Si ha configurado un subsistema DB2 para OS/390 Versión 7.1 en el Centro de control, tiene acceso a toda la documentación correspondiente a dicha versión. Para acceder a la función Generate DDL y utilizarla desde el Centro de control de DB2 para OS/390, debe tener instalado la función Generate DDL: * Para la Versión 5, instale DB2Admin 2.0 con DB2 para OS/390 Versión 5. * Para la Versión 6, instale la pequeña mejora de programación que estará disponible como PTF para la característica DB2 Admin de DB2 para OS/390 Versión 6. * Para la Versión 7.1, la función Generate DDL forma parte de la característica DB2 Admin de DB2 para OS/390 Versión 7.1, que se vende por separado. Puede acceder al Stored Procedure Builder desde el Centro de control, pero en el momento en que inicie el Centro de control de DB2 UDB ya lo tiene que haber instalado. Forma parte de DB2 Application Development Client. Para catalogar un subsistema DB2 para OS/390 directamente en la estación de trabajo, seleccione la utilización de la herramienta Client Configuration Assistant. 1. En la página Fuente, especifique el botón de selección Configurar manualmente una conexión con una base de datos. 2. En la página Protocolo, cumplimente la información apropiada sobre comunicaciones. 3. En la página Base de datos, especifique el nombre del subsistema en el campo Nombre de base de datos. 4. En la página Opciones del nodo, seleccione el recuadro de selección Configurar opciones de nodo (Opcional). 5. Seleccione MVS/ESA, OS/390 en la lista del campo Sistema operativo. 6. Pulse el botón Finalizar para completar la configuración. Para catalogar un subsistema DB2 para OS/390 a través de una máquina pasarela, lleve a cabo los pasos 1-6 anteriores sobre la máquina pasarela y, a continuación: 1. En la máquina cliente, inicie el Centro de control. 2. Pulse el botón derecho del ratón en la carpeta Sistemas y seleccione Añadir. 3. En el diálogo Añadir sistema, escriba el nombre de la máquina pasarela en el campo Nombre de sistema. 4. Escriba DB2DAS00 en el campo Instancia remota. 5. Para el protocolo TCP/IP, en Parámetros de protocolo, especifique el nombre de sistema principal de la máquina pasarela en el campo Nombre de sistema principal. 6. Escriba 523 en el campo Nombre de servicio. 7. Pulse Bien para añadir el sistema. Ahora verá la máquina pasarela añadida a la carpeta Sistemas. 8. Expanda el nombre de la máquina pasarela. 9. Pulse el botón derecho del ratón en la carpeta Instancias y seleccione Añadir. 10. En el diálogo Añadir instancia, pulse Renovar para listar las instancias disponibles en la máquina pasarela. Si la máquina pasarela es un sistema Windows NT, probablemente el subsistema DB2 para OS/390 se habrá catalogado bajo la instancia de DB2. 11. Seleccione la instancia. Automáticamente se cumplimentarán los parámetros de protocolo para esta instancia. 12. Pulse Bien para añadir la instancia. 13. Abra la carpeta Instancias para ver la instancia que acaba de añadir. 14. Expanda la instancia. 15. Pulse el botón derecho del ratón en la carpeta Bases de datos y seleccione Añadir. 16. Pulse en Renovar para visualizar las bases de datos locales de la máquina pasarela. Si está añadiendo un subsistema DB2 en el diálogo Añadir base de datos, escriba el nombre del subsistema en el campo Nombre de base de datos. Opción: Escriba un nombre de alias local para el subsistema (o la base de datos). 17. Pulse en Bien. Ya ha añadido satisfactoriamente el subsistema al Centro de control. Cuando abra la base de datos, debe visualizar el subsistema DB2 para OS/390. En el primer párrafo del apartado "Centro de control 390" puede leerse: El Centro de control de DB2 UDB para OS/390 le permite gestionar el uso de los programas bajo licencia de IBM DB2. Las funciones de programas de utilidad que son elementos de características de DB2 UDB para OS/390, que pueden pedirse por separado, deben disponer de licencia y se tienen que instalar en el entorno antes de que el Centro de control de DB2 las gestione. Ahora, este apartado debería decir: El Centro de control de DB2 para OS/390 le permite gestionar el uso de los programas de utilidad bajo licencia de IBM DB2. Las funciones de programas de utilidad que sean elementos de productos que puedan pedirse por separado deben instalarse y disponer de licencia en su entorno para que el Centro de control de DB2 las gestione. ------------------------------------------------------------------------ 19.9 Arreglo necesario del Centro de control para OS/390 Debe aplicar el APAR PQ36382 a la característica 390 Enablement de DB2 para OS/390 Versión 5 y de DB2 para OS/390 Versión 6 a fin de poder gestionar estos subsistemas utilizando el Centro de control de DB2 UDB para la Versión 7. Sin este arreglo, no podrá utilizar el Centro de control de DB2 UDB para la Versión 7 para ejecutar programas de utilidad destinados a estos subsistemas. Se debe aplicar el APAR a los FMID siguientes: DB2 para OS/390 Versión 5 390 Enablement: FMID JDB551D DB2 para OS/390 Versión 6 390 Enablement: FMID JDB661D ------------------------------------------------------------------------ 19.10 Cambio en el diálogo Create Spatial Layer Se han eliminado los botones "<<" y ">>" del diálogo Create Spatial Layer. ------------------------------------------------------------------------ 19.11 Información sobre resolución de problemas para el Centro de control de DB2 En el capítulo "Instalación y configuración del Centro de control" del manual Guía rápida de iniciación, el apartado titulado "Información sobre resolución de problemas" indica que debe desestablecer CLASSPATH del navegador de cliente desde una ventana de mandatos si experimenta problemas al ejecutar el Centro de control como applet. Este apartado también le indica que inicie el navegador desde la misma ventana de mandatos. Sin embargo, no se proporciona el mandato para iniciar el navegador. Para ejecutar Internet Explorer, escriba start iexplore y pulse Intro. Para ejecutar Netscape, escriba start netscape y pulse Intro. Estos mandatos asumen que el navegador está en el PATH (vía de acceso). Si no está, añádalo a su PATH (vía de acceso) o cambie al directorio de instalación del navegador y vuelva a emitir el mandato start. ------------------------------------------------------------------------ 19.12 Resolución de problemas del Centro de control en sistemas basados en UNIX Si no puede iniciar el Centro de control en un sistema basado en UNIX, establezca la variable de entorno JAVA_HOME de forma que apunte a la distribución Java: * Si se ha instalado java bajo /usr/jdk118, establezca JAVA_HOME en /usr/jdk118. * Para los shells sh, ksh o bash: export JAVA_HOME=/usr/jdk118. * Para los shells csh o tcsh: setenv JAVA_HOME /usr/jdk118 ------------------------------------------------------------------------ 19.13 Posible problema de Infopops en OS/2 Si está ejecutando del Centro de control en OS/2, utilizando un tamaño de pantalla de 1024x768 con 256 colores, y tiene habilitado Shell Palette Awareness, es posible que los infopops que sobrepasan el borde de la ventana actual se visualicen con texto en negro sobre un fondo negro. Para corregir este problema, cambie el valor de pantalla de forma que disponga de más de 256 colores o inhabilite Workplace Shell Palette Awareness. ------------------------------------------------------------------------ 19.14 Ayuda para el parámetro de configuración jdk11_path En la ayuda del Centro de control, a la descripción del parámetro de configuración de Java Development Kit 1.1 Installation Path (jdk11_path) le falta una línea bajo la subcabecera Se aplica a. La lista completa bajo Se aplica a es: * Servidor de bases de datos con clientes locales y remotos * Cliente * Servidor de bases de datos con clientes locales * Servidor de bases de datos particionadas con clientes locales y remotos * Servidor de bases de datos satélite con clientes locales ------------------------------------------------------------------------ 19.15 Error del sistema Solaris (SQL10012N) al utilizar el Centro de Scripts o el Diario Al seleccionar un sistema Solaris en el Centro de scripts o el Diario, puede producirse el error siguiente: SQL10012N - Se ha recibido un error inesperado del sistema operativo al cargar la biblioteca especificada "/udbprod/db2as/sqllib/function/unfenced/ db2scdar!ScheduleInfoOpenScan". SQLSTATE=42724. Esto es debido a un problema con el enlazador de ejecución de Solaris. Para corregir este problema, aplique el parche siguiente: 105490-06 (107733 deja 105490 obsoleto) para Solaris 2.6 ------------------------------------------------------------------------ 19.16 Ayuda para el archivo DPREPL.DFT En el Centro de control, en la ayuda para la página Duplicación del cuaderno Valores de herramienta, el paso 5d dice: Guarde el archivo en el directorio de trabajo del Centro de control (por ejemplo, SQLLIB\BIN) para que el sistema pueda utilizarlo como archivo por omisión. El Paso 5d debería decir: Guarde el archivo en el directorio de trabajo del Centro de control (SQLLIB\CC) para que el sistema pueda utilizarlo como archivo por omisión. ------------------------------------------------------------------------ 19.17 Lanzamiento de más de un applet del Centro de control No se puede lanzar más de un applet del Centro de control simultáneamente en la misma máquina. Esta restricción se aplica a los applets del Centro de control que se ejecutan en todos los navegadores soportados. ------------------------------------------------------------------------ 19.18 Ayuda en línea para el Centro de control al ejecutarlo como applet Cuando el Centro de control está ejecutándose como applet, la tecla F1 sólo funciona en ventanas y cuadernos que tienen infopops. Puede pulsar la tecla F1 para ver los infopops en los componentes siguientes: * DB2 Universal Database para OS/390 * Los asistentes En el resto de componentes del Centro de control, F1 no muestra ningún tipo de ayuda. Para visualizar la ayuda para los demás componentes, utilice el pulsador Ayuda o el menú desplegable Ayuda. ------------------------------------------------------------------------ 19.19 Ejecución del Centro de control en modalidad de applet (Windows 95) Puede que se produzca una anomalía al intentar abrir el Centro de scripts si se especifican un ID de usuario y una contraseña no válidos. Asegúrese de entrar un ID de usuario y una contraseña válidos al iniciar una sesión del Centro de control. ------------------------------------------------------------------------ 19.20 Cómo trabajar con resultados de consultas muy largos Para un usuario resulta sencillo generar una consulta que devuelva un gran número de filas. Para el usuario no es tan fácil predecir cuántas filas se devolverán en realidad. Con una consulta que podría devolver miles (o millones) de filas, hay dos problemas: 1. Puede llevar mucho tiempo recuperar el resultado. 2. Es posible que se necesite gran cantidad de memoria del cliente para albergar el resultado. Para facilitar este proceso, DB2 divide los grupos de resultados largos en partes. Recuperará y mostrará los resultados de una consulta por partes. Como resultado: 1. El tiempo de visualización se reducirá puesto que se puede visualizar la primera parte de una consulta mientras se están recuperando el resto. 2. Los requisitos de memoria del cliente se reducen puesto que en cada momento sólo se almacena una parte del resultado de la consulta en el cliente. Para controlar el número de filas del resultado de la consulta en memoria: 1. Abra la página General del cuaderno Valores de herramientas. 2. En la sección Tamaño máximo, seleccione: o Contenido de ejemplo para limitar el número de filas del resultado que se muestran en la ventana Contenido de ejemplo. Especifique el tamaño de las partes del grupo de resultados (número de filas) en el campo de entrada. o Centro de mandatos para limitar el número de filas del resultado que se muestran en la página Resultados de la consulta del Centro de mandatos. Especifique el tamaño de las partes del grupo de resultados (número de filas) en el campo de entrada. Cuando trabaja con los resultados de una consulta en la ventana Contenido de ejemplo o en la página Resultados de la consulta del Centro de mandatos, el campo Filas en memoria indica el número de filas que se mantienen en memoria correspondientes a la consulta. Este número nunca será mayor que el tamaño máximo definido. Pulse Siguiente para recuperar la siguiente parte del grupo de resultados. Cuando Siguiente está inactivo, significa que ha llegado al final del grupo de resultados. ------------------------------------------------------------------------ Centro de información ------------------------------------------------------------------------ 20.1 Error "Atajo no válido" en el sistema operativo Windows Cuando utilice el Centro de información, es posible que se encuentre con un error tal como: "Atajo no válido". Si recientemente ha instalado un nuevo navegador Web o una nueva versión de un navegador Web, asegúrese de que los documentos HTML y HTM estén asociados al navegador correcto. Vea el tema de Ayuda de Windows "Cambiar el programa que se inicia al abrir un archivo". ------------------------------------------------------------------------ 20.2 Apertura de enlaces externos de Web en Netscape Navigator cuando Netscape ya está abierto (sistemas basados en UNIX) Si Netscape Navigator ya está abierto y muestra un documento HTML de DB2 local o un sitio Web externo, un intento de abrir un sitio Web externo desde el Centro de información dará como resultado un error de Netscape. El error indicará que "Netscape no puede encontrar el archivo o directorio llamado ." Para eludir este problema, cierre el navegador de Netscape antes de abrir el sitio externo de la Web. Netscape se reiniciará y aportará el sitio externo de la Web. Observe que no se produce este error cuando se intenta abrir un documento HTML de DB2 local teniendo Netscape ya abierto. ------------------------------------------------------------------------ 20.3 Problemas al iniciar el Centro de información En algunos sistemas, el inicio del Centro de información puede ser lento si se le invoca utilizando el menú Inicio, Primeros pasos o el mandato db2ic. Si experimenta este problema, inicie el Centro de control y, a continuación, seleccione Ayuda --> Centro de información. ------------------------------------------------------------------------ Asistentes ------------------------------------------------------------------------ 21.1 Establecimiento del tamaño de extensión en el Asistente para crear bases de datos Utilizando el Asistente para crear bases de datos, se puede establecer los parámetros Tamaño de extensión y el Tamaño de captación previa para el Espacio de tablas del usuario (pero no así los correspondientes a las Tablas de catálogos o Temporales) de la nueva base de datos. Esta característica sólo se habilitará si se especifica, por lo menos, un contenedor para el Espacio de tablas del usuario en la página "Tablas del usuario" del Asistente. ------------------------------------------------------------------------ 21.2 Asistente MQSeries Assist DB2 Versión 7.2 proporciona un nuevo asistente MQSeries Assist. Este asistente crea una función de tabla que lee una cola de MQSeries utilizando DB2 MQSeries Functions, que también constituye una novedad de la Versión 7.2. El asistente puede tratar cada mensaje de MQSeries como una serie delimitada o una serie de columna de longitud fija, en función de lo que especifique el usuario. La función de tabla creada analiza la serie según las especificaciones del usuario y devuelve cada mensaje de MQSeries como una fila de la función de tabla. El asistente también le permite crear una vista sobre la función de tabla y realizar una vista previa de un mensaje de MQSeries y del resultado de la función de tabla. Este asistente se puede ejecutar desde Stored Procedure Builder o desde Data Warehouse Center. Los requisitos para este asistente son: * MQSeries versión 5.2 * Interfaz de gestión de mensajes de aplicaciones (AMI) de MQSeries * DB2 MQSeries Functions Para obtener más información sobre estos requisitos, consulte MQSeries. Para ver ejemplos y guías de aprendizaje sobre el asistente MQSeries Assist, consulte la sección de guías de aprendizaje del sitio http://www.ibm.com/software/data/db2/udb/ide ------------------------------------------------------------------------ 21.3 Asistente OLE DB Assist Este asistente le ayuda a crear una función de tabla que lee datos de otro proveedor de datos que dé soporte al estándar Microsoft OLE DB. Puede crear si lo desea una tabla de DB2 con los datos que lee la función de tabla OLE DB y puede crear una vista para la función de tabla OLE DB. Este asistente se puede ejecutar desde Stored Procedure Builder o desde Data Warehouse Center. Los requisitos para este asistente son: * Un proveedor OLE DB (como Oracle, Microsoft SQL Server) * Funciones de soporte de OLE DB Para ver ejemplos y guías de aprendizaje sobre el asistente OLE DB Assist, consulte la sección de guías de aprendizaje del sitio http://www.ibm.com/software/data/db2/udb/ide ------------------------------------------------------------------------ Business Intelligence Tabla de contenido parcial * Guía de aprendizaje de Business Intelligence o 22.1 Guía de aprendizaje de Business Intelligence revisada * DB2 Universal Database Quick Tour * Data Warehouse Center Administration Guide o 24.1 Actualización disponible o 24.2 Mejoras en el servidor de depósito o 24.3 Managing ETI.Extract(R) Conversion Programs con DB2 Warehouse Manager actualizados o 24.4 Importación y exportación de metadatos utilizando el intercambio de metadatos de depósito común (CWMI) + 24.4.1 Introducción + 24.4.2 Importación de metadatos + 24.4.3 Actualización de los metadatos después de ejecutar el programa de utilidad de importación + 24.4.4 Exportación de metadatos o 24.5 Programa de utilidad de importación/exportación de metadatos de lenguaje de códigos + 24.5.1 Definiciones de claves + 24.5.2 Planificaciones de pasos y procesos o 24.6 Información sobre pasos de SAP + 24.6.1 Retardo cuando se especifican parámetros de salida para un paso de SAP + 24.6.2 Los pasos de SAL comparten los valores de los parámetros de entrada + 24.6.3 Error de violación de acceso cuando se ejecuta un Paso de SAP o 24.7 Información sobre SAP Connector + 24.7.1 Restricciones en la instalación de SAP Connector + 24.7.2 Rendimiento de GetDetail BAPI * Kit de iniciación de DB2 OLAP o 25.1 Sitio Web de OLAP Server o 25.2 Niveles de servicio de sistemas operativos soportados o 25.3 Realización de la configuración del Kit de iniciación de DB2 OLAP en UNIX o 25.4 Configuración adicional para el Entorno operativo Solaris o 25.5 Configuración adicional para todos los sistemas operativos o 25.6 Configuración de ODBC para el Kit de iniciación de OLAP + 25.6.1 Configuración de fuentes de datos en sistemas UNIX + 25.6.1.1 Configuración de variables de entorno de ODBC + 25.6.1.2 Edición del archivo odbc.ini + 25.6.1.3 Adición de una fuente de datos a un archivo odbc.ini + 25.6.1.4 Ejemplo de valores de ODBC para DB2 + 25.6.1.5 Ejemplo de valores de ODBC para Oracle + 25.6.2 Configuración del Catálogo de metadatos de OLAP en sistemas UNIX + 25.6.3 Configuración de fuentes de datos en sistemas Windows + 25.6.4 Configuración del Catálogo de metadatos de OLAP en sistemas Windows + 25.6.5 Después de configurar una fuente de datos o 25.7 Inicio de una sesión desde el escritorio del Kit de iniciación de OLAP + 25.7.1 Ejemplo de inicio de sesión del Kit de iniciación o 25.8 Creación y configuración manual de las bases de datos de ejemplo para el Kit de iniciación de OLAP o 25.9 Migración de aplicaciones al Kit de iniciación de OLAP Versión 7.2 o 25.10 Problemas y limitaciones conocidos o 25.11 Falta de archivos EQD del Complemento de hoja de cálculo de OLAP * Information Catalog Manager Administration Guide o 26.1 Programa de utilidad Inicialización del Gestor de catálogos de información + 26.1.1 + 26.1.2 Temas sobre licencia + 26.1.3 Temas sobre la instalación o 26.2 Mejoras en el Gestor de catálogos de información o 26.3 Incompatibilidad entre Information Catalog Manager y Sybase en el entorno Windows o 26.4 Acceso a catálogos de información de DB2 Versión 5 con el Gestor de catálogos de información de DB2 Versión 7 o 26.5 Configuración de un Catálogo de información o 26.6 Intercambio de metadatos con otros productos o 26.7 Intercambio de metadatos utilizando el mandato flgnxoln o 26.8 Intercambio de metadatos utilizando el mandato MDISDGC o 26.9 Invocación de programas * Information Catalog Manager Programming Guide and Reference o 27.1 Códigos de razón del Gestor de catálogos de información * Information Catalog Manager User's Guide * Gestor de catálogos de información: Mensajes en línea o 29.1 Correcciones en los mensajes FLG + 29.1.1 Mensaje FLG0260E + 29.1.2 Mensaje FLG0051E + 29.1.3 Mensaje FLG0003E + 29.1.4 Mensaje FLG0372E + 29.1.5 Mensaje FLG0615E * Gestor de catálogos de información: Ayuda en línea o 30.1 Gestor de catálogos de información para la Web * DB2 Warehouse Manager Installation Guide o 31.1 Actualización disponible del manual DB2 Warehouse Manager Installation Guide o 31.2 Requisitos de software para transformadores de almacén de datos o 31.3 Conector para SAP R/3 + 31.3.1 Requisitos previos a la instalación o 31.4 Conector para la Web + 31.4.1 Requisitos previos a la instalación * Query Patroller Administration Guide o 32.1 El cliente de DB2 Query Patroller es un componente separado o 32.2 Migración desde la Versión 6 de DB2 Query Patroller utilizando dqpmigrate o 32.3 Habilitación de la Gestión de consultas o 32.4 Ubicación del espacio de tabla para tablas de control o 32.5 Nuevos parámetros para el mandato dqpstart o 32.6 Nuevo parámetro para el mandato iwm_cmd o 32.7 Nueva variable de registro: DQP_RECOVERY_INTERVAL o 32.8 Inicio del Administrador de consultas o 32.9 Administración de usuarios o 32.10 Creación de una cola de trabajos o 32.11 Utilización de la interfaz de línea de mandatos o 32.12 Notas sobre Query Enabler o 32.13 DB2 Query Patroller Tracker puede devolver una página de columnas en blanco o 32.14 Query Patroller y Herramientas de duplicación o 32.15 Mejora del rendimiento de Query Patroller o 32.16 Privilegio EXECUTE perdido para los usuarios de Query Patroller creados con la versión 6 o 32.17 Restricciones de Query Patroller o 32.18 Apéndice B. Resolución de problemas de clientes de DB2 Query Patroller ------------------------------------------------------------------------ Guía de aprendizaje de Business Intelligence ------------------------------------------------------------------------ 22.1 Guía de aprendizaje de Business Intelligence revisada El FixPak 2 incluye una base de datos de Ejemplo (Sample) del Centro de depósito de datos y una Guía de aprendizaje de Business Intelligence revisada que corrige diversos problemas que existían en la Versión 7.1. Para aplicar la base de datos de Ejemplo (Sample) del Centro de depósito de datos revisada, debe hacer lo siguiente: Si todavía no ha instalado las bases de datos de ejemplo, cree bases de datos de ejemplo nuevas utilizando la plataforma de lanzamiento de Primeros pasos. Pulse Inicio y seleccione Programas --> IBM DB2 --> Primeros pasos. Si, con anterioridad, ha instalado las bases de datos de ejemplo, elimine las bases de datos de ejemplo DWCTBC, TBC_MD y TBC. Si ha añadido datos que desee conservar en las bases de datos de ejemplo, haga copia de seguridad de los mismos antes de eliminarlas. Para eliminar las tres bases de datos de ejemplo: 1. Para abrir la ventana de mandatos de DB2, pulse en Inicio y seleccione Programas --> IBM DB2 --> Ventana de mandatos. 2. En la Ventana de mandatos de DB2, escriba cada uno de los tres mandatos siguientes, pulsando Intro después de escribir cada uno de ellos: db2 drop database dwctbc db2 drop database tbc_md db2 drop database tbc 3. Cierre la Ventana de mandatos de DB2. 4. Cree bases de datos de ejemplo nuevas utilizando la plataforma de lanzamiento de Primeros pasos. Pulse en Inicio y seleccione Programas --> IBM DB2 --> Primeros pasos. ------------------------------------------------------------------------ DB2 Universal Database Quick Tour Quick Tour no está disponible en DB2 para Linux o Linux/390. Quick Tour está optimizado para ejecutarse con fonts de sistema pequeños. Es posible que tenga que ajustar el tamaño de font del navegador de Web para poder visualizar correctamente Quick Tour en OS/2. Consulte la información para ello en la ayuda del navegador de Web. Para visualizar Quick Tour correctamente (sólo SBCS), es aconsejable utilizar un font en Helvética de 8 puntos. Para clientes japoneses y coreanos, es aconsejable utilizar un font Mincho de 8 puntos. Cuando establezca sus preferencias de fonts, asegúrese de seleccionar la opción "Utilizar mis fonts por omisión, alterando temporalmente los fonts especificados por el documento" en la página Fonts de la ventana Preferencias. En algunos casos, se puede visualizar Quick Tour detrás de una ventana secundaria del navegador. Para corregir este problema, cierre Quick Tour y realice los pasos indicados en el apartado 2.4, Mensajes de error cuando se intenta ejecutar Netscape. Cuando lance Quick Tour, es posible que reciba un error de JavaScript parecido al siguiente: archivo:/C/Archivos de programa/SQLLIB/doc/html/db2qt/index4e.htm, línea 65: La ventana no está definida. Este error de JavaScript impide que la página de lanzamiento de Quick Tour, index4e.htm, se cierre automáticamente después de lanzar Quick Tour. Puede cerrar dicha página cerrando la ventana del navegador en la que se visualiza index4e.htm. En el apartado "Novedades", bajo el tema Gestión de datos, se indica que la versión 7.1 da soporte al "soporte de archivador de anotaciones cronológicas bajo petición". Este no es el caso. También se afirma que: El tamaño de los archivos de anotaciones cronológicas se ha aumentado de 4GB a 32GB. Esta frase debería decir: El espacio total de anotaciones cronológicas activo se ha aumentado de 4GB a 32GB. La sección que describe DB2 Data Links Manager contiene una frase que dice: Además, ahora se da soporte a la utilización de la interfaz Veritas XBSA para realizar copias de seguridad y restauraciones utilizando NetBackup. Esta frase debería decir: Además, ahora se da soporte a la interfaz XBSA para el archivado y la restauración de archivos. Entre los gestores de almacenamiento que dan soporte a la interfaz XBSA se incluyen Legato NetWorker y Veritas NetBackup. ------------------------------------------------------------------------ Data Warehouse Center Administration Guide ------------------------------------------------------------------------ 24.1 Actualización disponible Se ha actualizado el manual Data Warehouse Center Administration Guide y el último PDF está disponible para bajarlo en línea desde http://www.ibm.com/software/data/db2/udb/winos2unix/support. La información contenida en estas notas es adicional a la consulta actualizada. Toda la documentación actualizada también está disponible en CD. Se puede solicitar dicho CD a través del servicio de DB2 y utilizando el número de PTF U478862. Puede encontrar información sobre cómo entrar en contacto con el Servicio de DB2 en http://www.ibm.com/cgi-bin/db2www/data/db2/udb/winos2unix/support/help.d2w/report . ------------------------------------------------------------------------ 24.2 Mejoras en el servidor de depósito Se han efectuado las mejoras siguientes en el FixPak 4 para el servidor de depósito: Error al cerrar el agente (cr = 7170), cr secundario = 6106. Se ha producido este error cuando se cerraba el agente antes de que el servidor enviara una petición de cierre. Se ha informado innecesariamente de este error y se dejará de informar del mismo. Mensaje del sistema y Comentario grabados en el archivo de anotaciones cronológicas Una vez terminada la ejecución de un programa definido por el usuario, se grabará el Mensaje del sistema y el Comentario en el archivo de anotaciones cronológicas del depósito. Estos mensajes son ahora visibles desde la ventana Trabajo en proceso. La confirmación de incremento no funciona correctamente Si se produce un error cuando un paso está llenando una base de datos de destino y el valor de Confirmación de incremento es superior a 0, todos los resultados confirmados antes del error aparecerán en la base de datos de destino. Anteriormente al FixPak 4, se suprimían los resultados parciales. No se puede ejecutar el servidor de depósito después de cambiar el error a nivel de rastreo corregido El servidor de depósito recupera el nombre del directorio de inicios de sesión de la variable de entorno del sistema VWS_LOGGING. Si falta VWS_LOGGING, o si ésta apunta a un nombre de directorio que no es válido, en su lugar se utiliza la variable de entorno del sistema TEMP. Si falta TEMP, o si ésta apunta a un nombre de directorio que no es válido, los archivos de rastreo del iniciador de sesiones se graban en c:\. Así se corrige un error que se producía en versiones anteriores al FixPak 4, y que era debido a la recuperación desde el registro de un nombre de directorio de inicios de sesión que no era válido. Soporte adicional para mandatos de confirmación en los procedimientos almacenados El servidor de depósito envía un mandato de confirmación al agente una vez que se han ejecutado los procedimientos almacenados definidos por el usuario. Contenido de ejemplo mejorado El servidor de depósito ya no tiene que esperar el mensaje de cierre de un agente, por lo que el Contenido de ejemplo se ejecuta de forma más eficaz. Ahora se puede controlar el tamaño de los archivos de anotaciones cronológicas de rastreo Ahora se puede controlar el tamaño de un archivo de anotaciones cronológicas de rastreo mediante la nueva variable de entorno del sistema VWS_SERVER_LOG_MAX. Si se establece el valor de VWS_SERVER_LOG_MAX mayor que 0, el servidor de depósito dejará de aumentar el archivo de anotaciones cronológicas cuando éste alcance un tamaño aproximadamente igual al número de bytes indicado por el valor de VWS_SERVER_LOG_MAX. Cuando el archivo de anotaciones cronológicas alcance el tamaño máximo, se conservarán las entradas de anotaciones cronológicas de rastreo más nuevas y se sobregrabarán las más antiguas. Si se realiza un rastreo general, VWS_SERVER_LOG_MAX=150000000 (150M) es un tamaño razonable. ------------------------------------------------------------------------ 24.3 Managing ETI.Extract(R) Conversion Programs con DB2 Warehouse Manager actualizados Managing ETI.Extract(R) Conversion Programs con DB2 Warehouse Manager se ha actualizado y se puede bajar en línea desde http://www.ibm.com/software/data/db2/udb/winos2unix/support. ------------------------------------------------------------------------ 24.4 Importación y exportación de metadatos utilizando el intercambio de metadatos de depósito común (CWMI) 24.4.1 Introducción Además del soporte existente para los archivos de lenguaje de código, el Centro de depósito de datos puede ahora importar y exportar metadatos a y desde archivos XML que se adapten al Metamodelo de depósito común (CWM) estándar. Se hace referencia a la importación y exportación de estos archivos XML que se adaptan al CWM como Intercambio de metadatos de depósito común (CWMI). Puede importar y exportar metadatos desde los siguientes objetos del Centro de depósito de datos: * Orígenes de depósito * Destinos de depósito * Áreas del tema, incluyendo procesos, orígenes, destinos, pasos y relaciones en cascada. * Programas definidos por el usuario El programa de utilidad de importación y exportación de CWMI no da soporte en la actualidad a determinados tipos de metadatos, que incluyen: planificaciones, esquemas de depósito, usuarios y grupos. El Centro de depósito de datos crea un archivo de anotaciones cronológicas que contiene el resultado de los procesos de importación y exportación. Normalmente, el archivo de anotaciones cronológicas se crea en el directorio x:\Archivos de programa\sqllib\logging (donde x: es la unidad en que ha instalado DB2), o el directorio que hubiera especificado como variable de entorno VWS_LOGGING. El archivo de anotaciones cronológicas es un texto plano; puede verlo con cualquier editor de texto. 24.4.2 Importación de metadatos Puede importar metadatos desde el Centro de depósito de datos o desde la línea de mandatos. Los objetos nuevos que se crean por medio del proceso de importación se asignan al grupo de seguridad del Centro de depósito de datos por omisión. Para obtener más información, consulte "Actualización de la seguridad después de la importación" en estas Notas del release. Si está importando metadatos sobre un paso, pueden asociarse varios archivos con el paso. Los metadatos acerca del paso se almacenan en un archivo XML, pero a veces un paso tiene datos asociados almacenados como BLOB. Los metadatos BLOB tienen el mismo nombre de archivo que el archivo XML, pero están en archivos independientes que tienen extensiones numeradas. Todos los archivos de paso relacionado deben estar en el mismo directorio al efectuar la importación. Actualización de pasos cuando están en modalidad de prueba o de producción Un paso debe estar en modalidad de desarrollo antes de que el Centro de depósito de datos pueda actualizar los metadatos del paso. Si el paso está en modalidad de prueba o de producción, baje de categoría el paso a la modalidad de desarrollo antes de importar los metadatos: 1. Inicie una sesión en el Centro de depósito de datos. 2. Pulse el botón derecho del ratón sobre el paso que desee bajar de categoría y pulse en Modalidad. 3. Pulse Desarrollo. El paso está ahora en modalidad de desarrollo. Vuelva a cambiar el paso a la modalidad de prueba o de producción después de importar los metadatos. Importación de datos desde el Centro de depósito de datos Puede importar metadatos del Centro de depósito de datos: 1. Inicie una sesión en el Centro de depósito de datos. 2. En el panel izquierdo, pulse en Depósito. 3. Pulse Seleccionado --> Importar metadatos --> Archivo de intercambio... 4. En la ventana Importar metadatos, especifique el nombre de archivo que contiene los metadatos que desea importar. Puede escribir el nombre de archivo o buscarlo. o Si conoce la ubicación, escriba la vía de acceso completamente calificada y el nombre de archivo que desea importar. Asegúrese de incluir la extensión de archivo .xml para especificar que desea importar metadatos en el formato XML, o no se procesará correctamente el archivo. o Para buscar los archivos: a. Pulse sobre el pulsador de puntos suspensivos (...). b. En la ventana Archivo, cambie Archivos de tipo por XML. c. Vaya al directorio correcto y seleccione el archivo que desea importar. Nota: El archivo debe tener una extensión .xml. d. Pulse en Bien. 5. En la ventana Importar metadatos, pulse Bien para finalizar. Se visualiza la ventana Progreso al tiempo que el Centro de depósito de datos importa el archivo. Utilización de la línea de mandatos para importar metadatos También puede utilizar la línea de mandatos para importar metadatos. Aquí mostramos la sintaxis del mandato de importación: CWMImport XML_file dwcControlDB dwcUserId dwcPW [PREFIX = DWCtbschema] XML_file La vía de acceso completamente calificada y el nombre de archivo (incluyendo la unidad y directorio) del archivo XML que desea importar. Este parámetro es obligatorio. dwcControlDB El nombre de la base de datos de control de depósito en la que desea importar los metadatos. Este parámetro es obligatorio. dwcUserId El ID de usuario que se utiliza para conectar con la base de datos de control de depósito. Este parámetro es obligatorio. dwcPW La contraseña que se utiliza para conectar con la base de datos de control de depósito. Este parámetro es obligatorio. [PREFIX=DWCtbschema] El nombre de esquema de base de datos para las tablas de sistema del Centro de depósito de datos. Si no se especifica ningún valor para PREFIX=, el nombre de esquema por omisión es IWH. Este parámetro es opcional. 24.4.3 Actualización de los metadatos después de ejecutar el programa de utilidad de importación Actualización de la seguridad después de la importación Como medida de seguridad, el Centro de depósito de datos no importa ni exporta contraseñas. Ha de actualizar las contraseñas sobre los objetos nuevos a medida que las necesite. Para obtener más detalles sobre las consideraciones de importación, consulte el manual Data Warehouse Center Administration Guide, Capítulo 12, "Exporting and importing Data Warehouse Center metadata." Al importar metadatos, todos los objetos se asignan al grupo de seguridad por omisión. Puede cambiar los grupos que tienen acceso al objeto: 1. Inicie una sesión en el Centro de depósito de datos. 2. Pulse el botón derecho del ratón sobre la carpeta que contiene el objeto que desee cambiar. 3. Pulse en Propiedades y, después pulse la pestaña Seguridad. 4. Elimine grupos de la lista Grupos de depósito seleccionados o añada grupos en la lista Grupos de depósito disponibles. 5. Pulse en Bien. 24.4.4 Exportación de metadatos Puede exportar metadatos desde el Centro de depósito de datos o desde la línea de mandatos. Algunos pasos tienen metadatos almacenados como BLOB. Los metadatos BLOB se exportan como archivo independiente que tiene el mismo nombre de archivo que el archivo XML del paso, pero con una extensión con número (.1, .2 etc.). Exportación de datos desde el Centro de depósito de datos Puede exportar metadatos del Centro de depósito de datos: 1. Inicie una sesión en el Centro de depósito de datos. 2. En el panel izquierdo, pulse en Depósito. 3. Pulse Seleccionado --> Exportar metadatos--> Archivo de intercambio. 4. En la ventana Exportar metadatos, especifique el nombre de archivo que contendrá los metadatos exportados. Puede escribir el nombre de archivo o buscarlo: o Si conoce la vía de acceso completamente calificada y el nombre de archivo que desea utilizar, escríbalo en el campo de entrada Nombre de archivo. Asegúrese de incluir la extensión de archivo .xml para especificar que desea exportar metadatos en el formato XML. o Para buscar los archivos: a. Pulse sobre el pulsador de puntos suspensivos (...). b. En la ventana Archivo, cambie Archivos de tipo por XML. c. Vaya al directorio correcto y seleccione el archivo que desea que contenga los metadatos exportados. Nota: Los metadatos exportados sobregrabarán cualquier archivo existente que seleccione. d. Pulse en Bien. 5. Cuando la ventana Exportar metadatos visualiza el nombre de archivo correcto, pulse sobre el objeto de la lista Objetos disponibles cuyos metadatos desee exportar. 6. Pulse sobre el signo > para desplazar el objeto seleccionado de la lista de Objetos disponibles a la lista de Objetos seleccionados. Repita la acción hasta que todos los objetos que desee exportar se listen en la lista Objetos seleccionados. 7. Pulse en Bien. El Centro de depósito de datos crea un archivo de entrada, que contiene información sobre los objetos del Centro de depósito de datos que se han seleccionado para la exportación y, después exporta los metadatos sobre esos objetos. Mientras el Centro de depósito de datos está exportando los metadatos se visualiza la ventana de progreso. Utilización de la línea de mandatos para exportar metadatos Antes de que pueda exportar metadatos de la línea de mandatos, debe crear en primer lugar un archivo de entrada. El archivo de entrada es un archivo de texto con una extensión .INP y lista todos los objetos por tipo de objeto que desea exportar. Cuando se efectúa la exportación desde el Centro de depósito de datos, el archivo de entrada se crea automáticamente, pero para efectuar la exportación desde la línea de mandatos en primer lugar debe crear el archivo de entrada. Puede crear el archivo de entrada con cualquier editor de texto. Escriba todos los nombres de objeto tal y como aparecen en el Centro de depósito de datos. Asegúrese de crear el archivo en un directorio de lectura/grabación. Cuando se ejecuta el programa de utilidad de exportación, el Centro de depósito de datos graba los archivos de XML en el mismo directorio en el que está el archivo de entrada. Aquí mostramos un archivo de entrada de ejemplo: Proceso de la tabla de hechos de la guía de aprendizaje Fuente de archivo de la guía de aprendizaje Destino de la guía de aprendizaje Grupo de programas nuevos En la sección (procesos), liste todos los procesos que desea exportar. En la sección (recursos de información), liste todos los orígenes y destinos de depósito que desea exportar. El Centro de depósito de datos incluye automáticamente las tablas y columnas que están asociadas con estos orígenes y destinos. En la sección (programas definidos por el usuario), liste todos los grupos de programas que desee exportar. Para exportar metadatos, entre el mandato siguiente en un indicador de mandatos de DOS: CWMExport INPcontrol_file dwcControlDB dwcUserID dwcPW [PREFIX=DWCtbschema] INPcontrol_file La vía de acceso completamente calificada y el nombre de archivo (incluyendo la unidad y directorio) del archivo .INP que contiene los objetos que desee exportar. Este parámetro es obligatorio. dwcControlDB El nombre de la base de datos de control de depósito desde la que desea efectuar la exportación. Este parámetro es obligatorio. dwcUserID El ID de usuario que se utiliza para conectar con la base de datos de control de depósito. Este parámetro es obligatorio. dwcPW La contraseña que se utiliza para conectar con la base de datos de control de depósito. Este parámetro es obligatorio. [PREFIX=DWCtbschema] El nombre de esquema de base de datos para las tablas de sistema del Centro de depósito de datos. Si no se especifica ningún valor para PREFIX=, el valor por omisión es IWH. Este parámetro es opcional. ------------------------------------------------------------------------ 24.5 Programa de utilidad de importación/exportación de metadatos de lenguaje de códigos 24.5.1 Definiciones de claves Las claves primaria y foránea definidas en archivos de lenguaje de códigos se ignoran si son iguales a las que ya están definidas en la base de datos de control. Se produce un error si las claves son distintas de las ya definidas. 24.5.2 Planificaciones de pasos y procesos El programa de utilidad de importación ya no suprime las planificaciones de pasos y procesos. Actualmente, las planificaciones definidas en un archivo de códigos se añaden a la lista actual de planificaciones. Esto puede ocasionar que aparezcan planificaciones duplicadas. El usuario debe suprimir las planificaciones duplicadas antes de que los pasos pasen a modalidad de producción. ------------------------------------------------------------------------ 24.6 Información sobre pasos de SAP 24.6.1 Retardo cuando se especifican parámetros de salida para un paso de SAP Se puede tardar varios segundos en transferir parámetros de la página Parámetros de salida del cuaderno Propiedades de un paso de SAP desde la lista Parámetros disponibles a la lista Parámetros seleccionados. 24.6.2 Los pasos de SAL comparten los valores de los parámetros de entrada Si se especifican nuevos valores para los parámetros de entrada de un paso de SAP, otros pasos de SAP enlazados a la misma fuente de SAP que el paso actualizado tendrán los nuevos valores de los parámetros de entrada. Por ejemplo, se especifican nuevos valores de los parámetros de entrada para el Paso 1 de SAP. El Paso 1 de SAP está enlazado a la Fuente de SAP A. El Paso 2 de SAP también está enlazado a la Fuente de SAP A. El Paso 2 de SAP tiene los mismos valores de los parámetros de entrada que el Paso 1 de SAP. 24.6.3 Error de violación de acceso cuando se ejecuta un Paso de SAP Si se cumplen todas las condiciones siguientes, un paso de SAP se colgará o se producirá un error de violación de acceso. 1. Todos los campos de clave se han correlacionado con parámetros de exportación de la página Correlación de parámetros del cuaderno Propiedades de una fuente de SAP. 2. En la página Parámetros de salida del cuaderno Propiedades de la fuente de SAP, el parámetro de exportación GetList que tiene el mismo nombre de parámetro de SAP que los utilizados para la correlación de parámetros no está seleccionado. 3. En la página Parámetros de salida del cuaderno Propiedades de un paso de SAP, el parámetro de exportación GetList que no tiene el mismo nombre de parámetro de SAP que los utilizados para la correlación de parámetros está seleccionado. 4. El parámetro seleccionado en la condición 3 es un parámetro simple o estructurado, o bien, si se trata de un parámetro de tabla, su nombre es alfabéticamente anterior al nombre de los parámetros que se utilizan para la correlación de parámetros. Donde "nombre de parámetro de SAP" hace referencia a la parte del parámetro que aparece, en el parámetro, delante del punto. Por ejemplo, en el parámetro DocumentList.DOCNUMBER, DocumentList es el parámetro de SAP. Ejemplo: DocumentNumber es un campo de clave y DocumentList.DOCUMENTNUMBER, DocumentList.USERNAME y DocNumberSelection.OPTION son parámetros de exportación. Si el campo de clave DocumentNumber está correlacionado con el parámetro de exportación DocumentList.DOCUMENTNUMBER (condición 1) y el parámetro de exportación GetList DocumentList.USERNAME no está seleccionado (condición 2), si se selecciona el parámetro de exportación GetList DocNumberSelection.OPTION (condición 3) y DocNumberSelection.OPTION" está, alfabéticamente, por delante de DocumentList.DOCUMENTNUMBER (condición 4), se cumplen las cuatro condiciones y se producirá el error. ------------------------------------------------------------------------ 24.7 Información sobre SAP Connector 24.7.1 Restricciones en la instalación de SAP Connector SAP Connector sólo soporta instalaciones en idioma inglés del sistema SAP R/3. 24.7.2 Rendimiento de GetDetail BAPI Si GetDetail tiene un gran número de parámetros de entrada, el rendimiento de GetDetail BAPI es lento. ------------------------------------------------------------------------ Kit de iniciación de DB2 OLAP El Kit de iniciación de DB2 OLAP de IBM 7.2 añade soporte para los sistemas de gestión de bases de datos relacionales (RDBMS) Oracle, MS-SQL, Sybase e Informix en determinadas plataformas de sistemas operativos. La Versión 7.2 contiene scripts y herramientas para todos los RDBMS soportados, incluido DB2. Hay algunas restricciones; consulte 25.10, Problemas y limitaciones conocidos para obtener más información. El nivel de servicio del Kit de iniciación de DB2 OLAP para DB2 Universal Database Versión 7.2 es el equivalente del parche 2 para Hyperion Essbase 6.1 más el parche 2 para Hyperion Integration Server 2.0. ------------------------------------------------------------------------ 25.1 Sitio Web de OLAP Server Para las últimas indicaciones de instalación y utilización para el Kit de iniciación de DB2 OLAP, compruebe la página de Biblioteca del sitio Web de DB2 OLAP Server: http://www.ibm.com/software/data/db2/db2olap/library.html ------------------------------------------------------------------------ 25.2 Niveles de servicio de sistemas operativos soportados Los componentes del servidor del Kit de iniciación de OLAP para Versión 7.2 dan soporte a los siguientes sistemas operativos y niveles de servicio: * Servidores Windows NT 4.0 con SP 5 y Windows 2000 * AIX versión 4.3.3 o superior * Sistema operativo Solaris versión 2.6, 7 y 8 (Sun OS 5.6, 5.7 ó 5.8) Los componentes del cliente se ejecutan en Windows 95, Windows 98, Windows NT 4.0 SP5 y Windows 2000. ------------------------------------------------------------------------ 25.3 Realización de la configuración del Kit de iniciación de DB2 OLAP en UNIX La instalación del Kit de iniciación de DB2 OLAP sigue los procedimientos básicos de la instalación de DB2 Universal Database para UNIX. El programa de instalación sitúa los archivos del producto en un directorio del sistema: (para AIX: /usr/lpp/db2_07_01; para Solaris: /opt/IBMdb2/V7.1). Luego, durante la fase de creación de la instancia, se crean dos directorios de DB2 OLAP (essbase e is) dentro del directorio inicial del usuario de la instancia bajo sqllib. Sólo puede ejecutarse una instancia del servidor OLAP en una máquina al mismo tiempo. Para completar la configuración, el usuario debe definir manualmente el directorio is/bin de modo que no sea un enlace con el directorio is/bin del sistema. Debe enlazar con un directorio en el que se pueda escribir, dentro del directorio inicial de la instancia. Para completar la configuración para Solaris, inicie una sesión utilizando el ID de instancia, cambie al directorio sqllib/is y luego entre lo siguiente: rm bin mkdir bin cd bin ln -s /opt/IBMdb2/V7.1/is/bin/ismesg.mdb ismesg.mdb ln -s /opt/IBMdb2/V7.1/is/bin/olapicmd olapicmd ln -s /opt/IBMdb2/V7.1/is/bin/olapisvr olapisvr ln -s /opt/IBMdb2/V7.1/is/bin/essbase.mdb essbase.mdb ln -s /opt/IBMdb2/V7.1/is/bin/libolapams.so libolapams.so ------------------------------------------------------------------------ 25.4 Configuración adicional para el Entorno operativo Solaris En el Entorno operativo Solaris, es posible que se encuentre errores si el Kit de iniciación de OLAP no está enlazado al controlador ODBC adecuado. Para evitar estos errores, ejecute el mandato siguiente, el cual creará en $ARBORPATH/bin un enlace que apunte al controlador de OLAP sqllib/lib/libdb2.so: ln -s $HOME/sqllib/lib/libdb2.so libodbcinst.so ------------------------------------------------------------------------ 25.5 Configuración adicional para todos los sistemas operativos A partir del FixPak 3 de DB2 Universal Database Versión 7, el Kit de iniciación de OLAP de DB2 incluye funciones que requieren Java. Después de instalar el FixPak 3 o posteriores, es posible que vea el mensaje de error siguiente en la consola de OLAP Server: No se puede encontrar [el directorio] [/export/home/arbor7sk/sqllib/essbase/java/], necesario para cargar JVM. Para corregir este error, lleve a cabo los pasos siguientes: 1. Inicie una sesión como propietario de la instancia de DB2. 2. Busque el directorio en que ha instalado el Kit de iniciación de OLAP de DB2. El nombre por omisión para este directorio es essbase. 3. En el directorio essbase, cree un subdirectorio llamado java. 4. En el subdirectorio java, cree los archivos vacíos siguientes: o essbase.jar o essdefs.dtd o jaxp.jar o parser.jar o udf.policy ------------------------------------------------------------------------ 25.6 Configuración de ODBC para el Kit de iniciación de OLAP El Kit de iniciación de DB2 OLAP de IBM 7.2 necesita un archivo ODBC.ini para el funcionamiento de conexiones ODBC (Open Database Connectivity) procedentes del Servidor de integración de OLAP con la fuente de datos relacionales y con el Catálogo de metadatos de OLAP. * En sistemas Windows, este archivo se encuentra en el Registro bajo HKEY_LOCAL_MACHINE/SOFTWARE/ODBC. Utilice el Administrador de fuentes de datos de ODBC para almacenar información sobre cómo establecer conexión con una fuente de datos relacionales. * En sistemas UNIX, el programa de instalación crea un archivo odbc.ini modelo. Para almacenar información sobre cómo establecer conexión con una fuente de datos relacionales, edite el archivo utilizando el editor que prefiera. El archivo ODBC.ini está disponible en paquetes de software de ODBC y se incluye con el software de Microsoft Office. Dispone de información adicional sobre las aplicaciones que instalan controladores ODBC o el Administrador de ODBC en el sitio Web siguiente: http://support.microsoft.com/. Para usuarios de Oracle en máquinas AIX: para configurar ODBC para Oracle, debe actualizar el archivo ODBC.ini para que apunte a los controladores MERANT 3.6. En la Versión 7.2, el Kit de iniciación de OLAP gestiona conexiones ODBC con la fuente de datos relacionales y con el Catálogo de metadatos de OLAP. Para acomodar estas conexiones ODBC, el Kit de iniciación de OLAP utiliza controladores ODBC en Windows NT 4.0, Windows 2000, AIX y Solaris. * Cliente de bases de datos DB2 Universal Database Versión 6: controladores ODBC de DB2 Versión 6 en Windows NT 4.0 SP5 o Windows 2000, AIX 4.3.3 y sistema operativo Solaris 2.6, 7 u 8 (Sun OS 5.6, 5.7 ó 5.8). * Cliente de bases de datos DB2 Universal Database Versión 7.1: controladores ODBC de DB2 Versión 7 en Windows NT 4.0 SP5 o Windows 2000, AIX 4.3.3 y sistema operativo Solaris 2.6, 7 u 8 (Sun OS 5.6, 5.7 ó 5.8). * Cliente de bases de datos Oracle 8.04 y 8i SQL*Net 8.0: controladores ODBC de MERANT 3.6 en Windows NT 4.0 SP5 o Windows 2000, AIX 4.3.3, sistema operativo Solaris 2.6, 7 u 8 (Sun OS 5.6, 5.7 ó 5.8). * MS SQL Server 6.5.201 (no se necesita cliente de bases de datos): controladores ODBC de MS SQL Server 6.5 en Windows NT 4.0 SP5 o Windows 2000. * MS SQL Server 7.0 (no se necesita cliente de bases de datos): controladores ODBC de MS SQL Server 7.0 en Windows NT 4.0 SP5 o Windows 2000. 25.6.1 Configuración de fuentes de datos en sistemas UNIX En AIX y Solaris, debe definir de forma manual variables de entorno para ODBC y editar el archivo odbc.ini para configurar la fuente de datos relacionales y el Catálogo de metadatos de OLAP. Asegúrese de editar el archivo odbc.ini y de añadir un nuevo controlador o fuente de datos si cambia el controlador o fuente de datos. Si va a utilizar el Kit de iniciación de OLAP de DB2 en AIX o Solaris para acceder a fuentes Merant ODBC y bases de datos DB2, cambie el valor del atributo "Driver=" en la sección fuente de DB2 del archivo .odbc.ini del modo siguiente: AIX: El nombre de controlador es /usr/lpp/db2_07_01/lib/db2_36.o Entrada fuente ODBC para AIX: [SAMPLE] Driver=/usr/lpp/db2_07_01/lib/db2_36.o Description=DB2 ODBC Database Database=SAMPLE Entorno operativo Solaris: El nombre de controlador es /opt/IBMdb2/V7.1/lib/libdb2_36.so Ejemplo de entrada fuente ODBC para Solaris: [SAMPLE] Driver=/opt/IBMdb2/V7.1/lib/libdb2_36.so Description=DB2 ODBC Database Database=SAMPLE 25.6.1.1 Configuración de variables de entorno de ODBC En sistemas UNIX, debe definir variables de entorno para permitir el acceso a los componentes básicos de ODBC. Los scripts de shell is.sh e is.csh que definen las variables necesarias se suministran en el directorio inicial del Kit de iniciación. Debe ejecutar uno de estos scripts antes de utilizar ODBC para conectar con fuentes de datos. Debe incluir estos scripts en el script de inicio de sesión correspondiente al nombre de usuario que utilice para ejecutar el Kit de iniciación de OLAP. 25.6.1.2 Edición del archivo odbc.ini Para configurar una fuente de datos en un archivo odbc.ini, debe añadir un nombre y descripción correspondientes a la fuente de datos ODBC y suministrar una vía de acceso y nombre de archivo del controlador ODBC y otros valores de controlador en una sección separada que cree para el nombre de la fuente de datos. El programa de instalación instala un archivo odbc.ini de ejemplo en el directorio ISHOME. El archivo contiene información genérica de configuración y conexión de ODBC para los controladores ODBC soportados. Utilice el archivo como punto de inicio para correlacionar los controladores ODBC que utilice con la fuente de datos relacionales y el Catálogo de metadatos de OLAP. Si utiliza un archivo que no sea odbc.ini, asegúrese de definir la variable de entorno ODBCINI con el nombre del archivo que utilice. 25.6.1.3 Adición de una fuente de datos a un archivo odbc.ini 1. En el sistema que ejecuta los servidores del Kit de iniciación de OLAP, abra el archivo odbc.ini utilizando un editor de texto como vi. 2. Busque la sección que comienza con [ODBC Data Sources] y añada una nueva línea con el nombre y la descripción de la fuente de datos, como por ejemplo mydata=fuente de datos para análisis. Para evitar confusiones, el nombre de la fuente de datos debe coincidir con el nombre de la base de datos en el RDBMS. 3. Añada una nueva sección al archivo creando una nueva línea con el nombre de la nueva fuente de datos entre corchetes, como por ejemplo: [mydata]. 4. En las líneas que siguen al nombre de la fuente de datos, añada la vía de acceso completa y el nombre de archivo del controlador ODBC necesario para esta fuente de datos y otra información necesaria sobre el controlador ODBC. Utilice los ejemplos que se muestran en las siguientes secciones como guía para correlacionar con la fuente de datos de su RDBMS. Asegúrese de que el archivo de controlador ODBC existe en la ubicación especificada para el valor Driver=. 5. Cuando termine de editar odbc.ini, guarde el archivo y salga del editor de texto. 25.6.1.4 Ejemplo de valores de ODBC para DB2 El siguiente ejemplo muestra cómo puede editar odbc.ini para conectar con una fuente de datos relacionales, db2data, en DB2 Universal Database Versión 6.1 en AIX, utilizando un controlador ODBC nativo de IBM DB2. En el editor vi editor, utilice el mandato $ODBCINI para editar el archivo odbc.ini e insertar las siguientes sentencias: [ODBC Data Sources] db2data=DB2 Source Data on AIX ... [db2data] Driver=/home/db2inst1/sqllib/lib/db2.o Description=Fuente de datos DB2 - AIX, nativo 25.6.1.5 Ejemplo de valores de ODBC para Oracle A continuación se muestra un ejemplo de cómo puede editar odbc.ini para conectar con una fuente de datos relacionales, oradata, en Oracle Versión 8 (en Solaris), utilizando un controlador ODBC de MERANT Versión 3.6. En este ejemplo, LogonID y Password se alteran temporalmente con los valores reales utilizados en el nombre de usuario y contraseña del Kit de iniciación de OLAP. [ODBC Data Sources] oradata=Oracle8 Source Data on Solaris ... [myoracle] Driver= /export/home/users/dkendric/is200/odbclib/ARor815.so Description=mi fuente oracle 25.6.2 Configuración del Catálogo de metadatos de OLAP en sistemas UNIX La configuración de un Catálogo de metadatos de OLAP en AIX y Solaris es parecido a configurar una fuente de datos. Para la base de datos del Catálogo de metadatos de OLAP, añada un nombre de fuente de datos y sección al archivo odbc.ini, tal como se describe en 25.6.1.2, Edición del archivo odbc.ini. No hace falta realizar ningún otro cambio. Debe crear una base de datos de Catálogo de metadatos de OLAP en un RDBMS soportado antes de configurarlo como una fuente de datos ODBC. A continuación se muestra un ejemplo de cómo puede editar odbc.ini para conectar con el Catálogo de metadatos de OLAP , TBC_MD, en DB2 Versión 6.1 (en Solaris), utilizando un controlador ODBC nativo: [ODBC Data Sources] ocd6a5a=db2 v6 ... [ocd6a5a] Driver=/home/db2instl/sqllib/lib/db2.0 Description=db2 25.6.3 Configuración de fuentes de datos en sistemas Windows Para configurar una fuente de datos relacionales en sistemas Windows NT o Windows 2000, debe iniciar el Administrador de ODBC y luego crear una conexión con la fuente de datos que vaya a utilizar para crear modelos y metaperfiles de OLAP. Ejecute el programa de utilidad Administrador de ODBC desde el Panel de control de Windows. El siguiente ejemplo crea una fuente de datos DB2; los recuadros de diálogo correspondientes a otros RDBMS diferirán. Para configurar una fuente de datos relacionales con el Administrador de ODBC, lleve a cabo los pasos siguientes: 1. En el escritorio de Windows, abra la ventana Panel de control. 2. En la ventana Panel de control, lleve a cabo uno de los pasos siguientes: a. En Windows NT, efectúe una doble pulsación en el icono ODBC para abrir el recuadro de diálogo Administrador de fuentes de datos ODBC. b. En Windows 2000, efectúe una doble pulsación en el icono Herramientas administrativas y luego efectúe una doble pulsación en el icono Fuentes de datos (ODBC) para abrir el recuadro de diálogo Administrador de fuentes de datos ODBC. 3. En el recuadro de diálogo Administrador de fuentes de datos ODBC, pulse la pestaña DSN del sistema. 4. Pulse Añadir para abrir el recuadro de diálogo Crear nueva fuente de datos. 5. En el recuadro de lista de controladores del recuadro de diálogo Crear nueva fuente de datos del Administrador de ODBC, seleccione un controlador adecuado, como Controlador ODBC de IBM DB2 y pulse Finalizar para abrir el recuadro de diálogo Controlador ODBC de IBM DB2 - Añadir. 6. En el recuadro de diálogo Controlador ODBC de IBM DB2 - Añadir, en la lista desplegable Alias de base de datos, seleccione el nombre de la base de datos correspondiente a su fuente de datos relacionales (por ejemplo, TBC en la aplicación de ejemplo). 7. En el recuadro de texto Descripción, escriba una descripción opcional que indique cómo utilizar este controlador y pulse Añadir. Por ejemplo, escriba lo siguiente para describir la base de datos My Business: Clientes, productos, mercados Puede escribir lo siguiente para describir la base de datos de aplicación de ejemplo: Fuente de datos relacionales de ejemplo La descripción ayuda a identificar las fuentes de datos disponibles para s selección cuando se conecta desde el escritorio del Kit de iniciación de OLAP. 8. Pulse Bien para volver al recuadro de diálogo Administrador de fuentes de datos ODBC. El nombre que ha especificado y el controlador que ha correlacionado se muestran en el recuadro de lista Fuentes de datos del sistema de la pestaña DSN del sistema. Para editar información de configuración correspondiente a una fuente de datos: 1. Seleccione el nombre de la fuente de datos y pulse Configurar para abrir el recuadro de diálogo ODBC IBM DB2 - Añadir. 2. Corrija la información que desee modificar. 3. Pulse Bien dos veces para salir. 25.6.4 Configuración del Catálogo de metadatos de OLAP en sistemas Windows Para configurar un Catálogo de metadatos de OLAP en Windows NT o Windows 2000, inicie el Administrador de ODBC y luego cree una conexión con la fuente de datos que contiene la base de datos del Catálogo de metadatos de OLAP. El siguiente ejemplo crea una fuente de datos de DB2; los recuadros de diálogo correspondientes a otros RDBMS diferirán. Para crear una fuente de datos para el Catálogo de metadatos de OLAP, siga estos pasos: 1. En el escritorio, abra la ventana Panel de control. 2. En la ventana Panel de control, lleve a cabo uno de los pasos siguientes: a. En Windows NT, efectúe una doble pulsación en el icono ODBC para abrir el recuadro de diálogo Administrador de fuentes de datos ODBC. b. En Windows 2000, efectúe una doble pulsación en el icono Herramientas administrativas y luego efectúe una doble pulsación en el icono Fuentes de datos (ODBC) para abrir el recuadro de diálogo Administrador de fuentes de datos ODBC. 3. En el recuadro de diálogo Administrador de fuentes de datos ODBC, pulse la pestaña DSN del sistema. 4. Pulse Añadir para abrir el recuadro de diálogo Crear nueva fuente de datos. 5. En el recuadro de lista de controladores del recuadro de diálogo Crear nueva fuente de datos del Administrador de ODBC, seleccione un controlador adecuado, como Controlador ODBC de IBM DB2 y pulse Finalizar para abrir el recuadro de diálogo Controlador ODBC de IBM DB2 - Añadir. 6. En el recuadro de diálogo Controlador ODBC de IBM DB2 - Añadir, en la lista desplegable Alias de base de datos, seleccione el nombre de la base de datos correspondiente a su Catálogo de metadatos de OLAP (por ejemplo, TBC_MD en la aplicación de ejemplo). El nombre de la base de datos seleccionada se muestra automáticamente en el recuadro de texto Nombre de fuente de datos. 7. Si desea cambiar el nombre de la fuente de datos, seleccione el nombre que aparece en el recuadro de texto Nombre de fuente de datos, escriba un nuevo nombre para indicar cómo utilizar este controlador y pulse Añadir. Por ejemplo, puede escribir el siguiente nombre para indicar que está utilizando el controlador para conectar con el primer Catálogo de metadatos de OLAP: Primer catálogo de OLAP Escribiría el siguiente nombre para indicar que está conectando con la base de datos del Catálogo de metadatos de OLAP de la aplicación de ejemplo: TBC_MD 8. En el recuadro de texto Descripción, entre una descripción que indique cómo utiliza este controlador. Por ejemplo, puede escribir lo siguiente para describir el Catálogo de metadatos de OLAP: Mis primeros modelos y metaperfiles Puede escribir lo siguiente para describir la base de datos del Catálogo de metadatos de OLAP de la aplicación de ejemplo: Modelos y metaperfiles de ejemplo Las descripciones le ayudan a identificar el catálogo que desea seleccionar cuando se conecta al Catálogo de metadatos de OLAP desde el escritorio del Kit de iniciación de OLAP. 9. Pulse Bien para volver al recuadro de diálogo Administrador de fuentes de datos ODBC. El nombre que ha especificado y el controlador que ha correlacionado se muestran en el recuadro de lista Fuentes de datos del sistema de la pestaña DSN del sistema. Para editar información de configuración correspondiente a una fuente de datos: 1. Seleccione el nombre de la fuente de datos y pulse Configurar para abrir el recuadro de diálogo ODBC IBM DB2 - Añadir. 2. Corrija la información que desee modificar. 3. Pulse Bien dos veces para salir. 25.6.5 Después de configurar una fuente de datos Después de configurar la fuente de datos relacionales y el Catálogo de metadatos de OLAP, puede conectarse a los mismos desde el Kit de iniciación de OLAP. Luego puede crear, modificar y guardar modelos y metaperfiles de OLAP. Es posible que se exceda el tiempo de espera del controlador ODBC de SQL Server durante una llamada a una base de datos de SQL Server. Vuelva a intentarlo cuando la base de datos no esté ocupada. Puede evitar este problema aumentando el periodo de tiempo de espera excedido del controlador. Para obtener más información, consulte la documentación de ODBC correspondiente al controlador que esté utilizando. Para obtener más información sobre problemas de conexión a ODBC y soluciones, consulte el manual OLAP Integration Server System Administrator's Guide. ------------------------------------------------------------------------ 25.7 Inicio de una sesión desde el escritorio del Kit de iniciación de OLAP Para utilizar el escritorio del Kit de iniciación de OLAP para crear modelos y metaperfiles de OLAP, debe conectar el software del cliente a dos componentes del servidor: DB2 OLAP Integration Server y DB2 OLAP Server. El diálogo de inicio de sesión le solicitará la información necesaria para que el Escritorio conecte con estos dos servidores. En la parte izquierda del diálogo, entre información sobre el Servidor de integración DB2 OLAP. En la parte derecha, entre información sobre DB2 OLAP Server. Para conectar con el Servidor de integración DB2 OLAP: * Servidor: Entre el nombre de sistema principal o la dirección IP del Servidor de integración Si ha instalado el Servidor de integración en la misma estación de trabajo que el escritorio, los valores típicos son "localhost" o "127.0.0.1". * Catálogo de metadatos de OLAP: Cuando conecte con el Servidor de integración OLAP, también debe especificar un Catálogo de metadatos. El Servidor de integración OLAP almacena información sobre los modelos y metaperfiles de OLAP que se crean en una base de datos relacional conocida como Catálogo de metadatos. Esta base de datos relacional se debe registrar para ODBC. La base de datos de catálogos contiene un conjunto especial de tablas relacionales que el Servidor de integración OLAP reconoce. En el diálogo de inicio de sesión, se puede especificar un Servidor de integración y luego expandir el menú desplegable para el campo Catálogo de metadatos OLAP para ver una lista de los nombres de fuentes de datos ODBC conocidas para el Servidor de integración OLAP. Elija una base de datos ODBC que contenga las tablas de catálogos de metadatos. * Nombre de usuario y Contraseña: OLAP Integration Server conectará con el Catálogo de metadatos utilizando el Nombre de usuario y la contraseña que especifique en este panel. Ésta es una cuenta de inicio de sesión que existe en el servidor (y no en el cliente, a no ser que el servidor y el cliente se ejecuten en la misma máquina). El nombre de usuario debe ser el correspondiente al usuario que ha creado el Catálogo de metadatos de OLAP. De lo contrario, OLAP Integration Server no encontrará las tablas relacionales en la base de datos de catálogos porque los nombres de esquema de las tablas son distintos. La información de DB2 OLAP Server es opcional, por lo que los campos de entrada que se encuentran en la parte derecha del diálogo Inicio de sesión se pueden dejar en blanco. Sin embargo, algunas operaciones del Escritorio y del Gestor de administración requieren que se realice una conexión con un DB2 OLAP Server. Si deja estos campos en blanco, el Escritorio visualizará el diálogo Inicio de sesión de nuevo si el Integration Server necesita conectar con DB2 OLAP Server para poder completar una operación que se le ha solicitado. Es recomendable cumplimentar siempre los campos de DB2 OLAP Server en el diálogo Inicio de sesión. Para conectar con DB2 OLAP Server: * Servidor: Entre el nombre de sistema principal o la dirección IP de DB2 OLAP Server. Si está ejecutando el Kit de iniciación de OLAP, el OLAP Server y el Integration Server son el mismo. Si el Servidor de integración y el OLAP Server están instalados en sistemas principales distintos, entre el nombre de sistema principal o la dirección IP definidos en el Servidor de integración OLAP. * Nombre de usuario y Contraseña: el Servidor de integración OLAP conectará con DB2 OLAP Server utilizando el Nombre de usuario y la contraseña que especifique en este panel. Este nombre de usuario y esta contraseña tienen que estar definidos para DB2 OLAP Server. OLAP Server gestiona sus propios nombres de usuario y contraseñas de forma independiente del sistema operativo principal. 25.7.1 Ejemplo de inicio de sesión del Kit de iniciación En el ejemplo siguiente se supone que se ha creado el Ejemplo de OLAP y se ha seleccionado db2admin como ID de usuario de administrador, y contraseña como contraseña de administrador durante la instalación del Kit de iniciación de OLAP. * Para OLAP Integration Server: El servidor es localhost, el Catálogo de metadatos de OLAP es TBC_MD, el Nombre de usuario es db2admin, la Contraseña es contraseña * Para DB2 OLAP Server: El servidor es localhost, el Nombre de usuario es db2admin ------------------------------------------------------------------------ 25.8 Creación y configuración manual de las bases de datos de ejemplo para el Kit de iniciación de OLAP Las bases de datos de ejemplo se crean automáticamente al instalar el Kit de iniciación de OLAP. En las instrucciones siguientes se explica cómo configurar manualmente las bases de datos de Catálogos y Ejemplos, en caso de que sea necesario. 1. En Windows, abra la ventana Centro de mandatos pulsando Inicio -->Programas-->DB2 para Windows NT--> Ventana Mandato. 2. Cree la base de datos de catálogos de producción: a. Escriba db2 create db OLAP_CAT b. Escriba db2 connect to OLAP_CAT 3. Cree tablas en la base de datos: a. Navegue a \SQLLIB\IS\ocscript\ocdb2.sql b. Escriba db2 -tf ocdb2.sql 4. Cree la base de datos fuente de ejemplo: a. Escriba db2 connect reset b. Escriba db2 create db TBC c. Escriba db2 connect to TBC 5. Cree tablas en la base de datos: a. Navegue a \SQLLIB\IS\samples\ b. Copie tbcdb2.sql a \SQLLIB\samples\db2sampl\tbc c. Copie lddb2.sql a \SQLLIB\samples\db2sampl\tbc d. Navegue a \SQLLIB\samples\db2sampl\tbc e. Escriba db2 -tf tbcdb2.sql f. Escriba db2 - vf lddb2.sql para cargar datos fuente de ejemplo en las tablas. 6. Cree la base de datos de catálogos de ejemplo: a. Escriba db2 connect reset b. Escriba db2 create db TBC_MD c. Escriba db2 connect to TBC_MD 7. Cree tablas en la base de datos: a. Navegue a \SQLLIB\IS\samples\tbc_md b. Copie ocdb2.sql a \SQLLIB\samples\db2sampl\tbcmd c. Copie lcdb2.sql a \SQLLIB\samples\db2sampl\tbcmd d. Navegue a \SQLLIB\samples\db2sampl\tbcmd e. Escriba db2 -tf ocdb2.sql f. Escriba db2 -vf lcdb2.sql para cargar metadatos de ejemplo en las tablas. 8. Configure ODBC para TBC_MD, TBC, AND OLAP_CAT: a. Abra el panel de control de NT pulsando Inicio-->Configuración-->Panel de control b. Seleccione ODBC (o fuentes de datos ODBC) en la lista. c. Seleccione la pestaña System DSM. d. Pulse Añadir. Se abrirá la ventana Crear nueva fuente de datos. e. Seleccione IBM DB2 ODBC DRIVER en la lista. f. Pulse Finalizar. Se abrirá la ventana ODBC IBM D2 Driver - Añadir. g. Escriba el nombre de la fuente de datos (OLAP_CAT) en el campo Nombre de fuente de datos. h. Escriba el alias en el campo Alias de base de datos, o pulse la flecha abajo y seleccione OLAP_CAT en la lista. i. Pulse Bien. j. Repita estos pasos para las bases de datos TBC_MD y TBC. ------------------------------------------------------------------------ 25.9 Migración de aplicaciones al Kit de iniciación de OLAP Versión 7.2 El programa de instalación no instala las aplicaciones, bases de datos y archivos de datos de ejemplo del Kit de iniciación de OLAP. Las aplicaciones y bases de datos existentes no se ven afectadas. Sin embargo, siempre resulta recomendable realizar una copia de seguridad de las aplicaciones y las bases de datos antes de realizar una instalación. Las aplicaciones se migran automáticamente a la Versión 7.2 cuando las abre. ------------------------------------------------------------------------ 25.10 Problemas y limitaciones conocidos Esta sección contiene las limitaciones conocidas del Kit de iniciación de DB2 OLAP. Compatibilidad de RDBMS de Informix con controladores Merant para plataformas Windows Para que los controladores Merant para plataformas Windows funcionen con el RDBMS Informix, se deben añadir las dos entradas siguientes a la sentencia PATH: o C:\Informix o C:\Informix\bin Ambas entradas deben estar al principio de la sentencia PATH. Posible incoherencia entre dimensiones en modelos OLAP y metaperfiles asociados Bajo determinadas circunstancias, puede crear una dimensión en un metaperfil que no tenga una dimensión correspondiente en el modelo OLAP. Esto puede suceder si: 1. Crea un nuevo modelo OLAP y lo guarda. 2. Crea un metaperfil basado en el modelo, pero no lo guarda. 3. Vuelve al modelo OLAP y suprime una dimensión en la que se basa una de las dimensiones del metaperfil. 4. Vuelve al metaperfil, lo guarda, lo cierra y lo vuelve a abrir. El metaperfil contendrá una dimensión que no tiene una dimensión correspondiente en el modelo OLAP. El Kit de iniciación de OLAP no puede distinguir entre una dimensión incoherente creada de esta forma y una dimensión definida por el usuario en un metaperfil. Por lo tanto, la dimensión incoherente se mostrará en el metaperfil, pero el metaperfil la tratará como una dimensión definida por el usuario, puesto que no existe ninguna dimensión correspondiente en el modelo OLAP. En plataformas Windows 2000, el valor de variable de entorno correspondiente a TMP hace que fallen cargas de datos y de miembros Debido a una diferencia en los valores de variables de entorno del usuario y del sistema por omisión para TMP entre Windows 2000 y Windows NT, las cargas de miembros y de datos fallan cuando el Kit de iniciación de OLAP se está ejecutando en plataformas Windows 2000. El mensaje de error resultante indica a los usuarios que no se ha podido crear el archivo temporal. Puede solucionar esta limitación en Windows 2000 siguiendo estos pasos: 1. Cree un directorio denominado C:\TEMP 2. Establezca la variable de entorno TMP para el sistema y para el usuario en TMP=C:\TEMP La instalación de ODBC no sustituye el controlador Merant existente Los controladores ODBC 3.6 Merant existentes no se actualizan con esta instalación. Si está actualizando desde el Kit de iniciación de OLAP Versión 7.1, fixpack 2 o anterior, debe continuar utilizando los controladores ODBC instalados anteriormente Utilización de controladores ODBC Informix Merant en plataformas UNIX Para utilizar controladores ODBC Informix Merant en plataformas UNIX, debe hacer una de las siguientes cosas: o Antes de iniciar el Kit de iniciación, establezca la variable de entorno LANG en "en_US". Por ejemplo, para el shell korn, escriba: export LANG='en_US' Establezca esta variable cada vez que inicie el Kit de iniciación de OLAP. o Si la variable de entorno LANG ya está establecida con un valor diferente, realice el siguiente enlace simbólico después de la instalación: ln -s $ISHOME/locale/en_US $ISHOME/locale/$LANG Combinación de niveles de servicio de clientes y servidores OLAP IBM recomienda mantener los componentes cliente y servidor del Kit de iniciación de DB2 OLAP con la misma versión y nivel de fixpack. Pero, en algunas situaciones, es posible que pueda combinar diferentes niveles de servicio de los componentes cliente y servidor: Utilizando clientes y servidores con distintos niveles de servicio dentro de una versión IBM no da soporte, y recomienda que no se haga, a la utilización de clientes más actualizados que los servidores. Sin embargo, es posible que pueda utilizar clientes antiguos con servidores más modernos, aunque IBM no le dé soporte. Es posible que se produzcan problemas. Por ejemplo: + Los mensajes procedentes del servidor pueden no ser correctos. Puede solucionar este problema actualizando el archivo message.MDB en el cliente para que coincida con el nivel del servidor. + Las características nuevas del servidor no funcionan. El cliente, servidor o ambos pueden fallar cuando intente utilizar una característica nueva. + Es posible que el cliente no se conecte correctamente con el servidor. Utilizando varios servidores con un solo cliente dentro de una versión Si tiene que conectar un cliente a varios servidores OLAP en distintas máquinas o sistemas operativos, IBM recomienda que los coloque a la misma versión y nivel de servicio. El cliente debe estar al menos al mismo nivel que el servidor con el nivel inferior. Si tiene problemas, es posible que tenga que utilizar distintas máquinas cliente para que coincidan con el sistema principal adecuado o actualizar todos los clientes y servidores al mismo nivel de servicio. Combinando clientes y servidores de distintas versiones IBM no da soporte a la utilización de clientes y servidores del Kit de iniciación de OLAP de la Versión 7.1 con clientes y servidores de la Versión 7.2. Cuando se actualizan productos IBM OLAP a un nuevo nivel de versión, suele haber actualizaciones de red y cambios de formato de datos que necesitan que el cliente y el servidor estén al mismo nivel de versión. Combinando productos de IBM (Kit de iniciación de DB2 OLAP) con productos de Hyperion (Hyperion Essbase e Hyperion Integration Server) IBM no da soporte a la combinación de clientes y servidores de OLAP de IBM con clientes y servidores de OLAP de Hyperion Solutions. Hay algunas diferencias en características que pueden causar problemas, aunque la combinación de estos componentes puede funcionar en algunas situaciones. ------------------------------------------------------------------------ 25.11 Falta de archivos EQD del Complemento de hoja de cálculo de OLAP En el Kit de iniciación de DB2 OLAP, el Complemento de hoja de cálculo tiene un componente llamado Query Designer (EQD). El menú de la ayuda en línea para EQD incluye un botón llamado Guía de aprendizaje que no muestra nada. El material que debería visualizarse en las guías de aprendizaje de EQD es un subconjunto del capítulo dos de los manuales OLAP Spreadsheet Add-in Guía del usuario para Excel y OLAP Spreadsheet Add-in Guía del usuario para 1-2-3. Toda la información de la guía de aprendizaje de EQD está disponible en las versiones HTML de estos manuales en el Centro de información y en las versiones PDF. ------------------------------------------------------------------------ Information Catalog Manager Administration Guide ------------------------------------------------------------------------ 26.1 Programa de utilidad Inicialización del Gestor de catálogos de información 26.1.1 Con el programa de utilidad ICM (Inicializar el Gestor de catálogos de información), ahora se puede añadir una sentencia de SQL al final de la sentencia CREATE TABLE utilizando el mandato siguiente: CREATEIC \DBTYPE tipobd \DGNAME dgname \USERID idusuario \PASSWORD contraseña \KA1 idusuario \TABOPT "directorio:\archivo.tabopt" Se puede especificar la palabra clave TABOPT en el programa de utilidad CREATEIC desde el directorio donde está instalado DB2. El valor que sigue a la palabra clave TABOPT es el nombre de archivo del archivo.tabopt con la vía de acceso completa. Si el nombre del directorio contiene espacios en blanco, encierre el nombre entre comillas. El contenido del archivo.tabopt debe contener información para añadir a la sentencia CREATE TABLE. Puede utilizar cualquiera de las siguientes sentencias de SQL para grabar en este archivo archivo.tabopt. El programa de utilidad ICM leerá este archivo y luego lo añadirá a la sentencia CREATE TABLE. Tabla 5. Sentencias de SQL IN MYTABLESPACE Crea una tabla con sus datos en MYTABLESPACE DATA CAPTURE CHANGES Crea una tabla y anota cronológicamente los cambios de SQL en un formato ampliado IN ACCOUNTING INDEX IN Crea una tabla con sus datos en ACCOUNTING y ACCOUNT_IDX su índice en ACCOUNT_IDX El tamaño máximo del archivo de contenido es 1000 caracteres de un único byte. Esta nueva capacidad está disponible sólo en sistemas Windows y UNIX. 26.1.2 Temas sobre licencia Si obtiene el mensaje siguiente: FLG0083E: No tiene una licencia válida para el programa de utilidad Inicialización del Gestor de catálogos de información de IBM. Póngase en contacto con el comerciante de software local o con un representante de marketing de IBM. Debe adquirir DB2 Warehouse Manager o IBM DB2 OLAP Server e instalar el componente Gestor de catálogos de información, que incluye el programa de utilidad Inicialización de catálogos de información. 26.1.3 Temas sobre la instalación Si ha instalado DB2 Warehouse Manager o IBM DB2 OLAP Server y luego ha instalado otro componente Administrador del Gestor de catálogos de información (utilizando el CD-ROM de DB2 Universal Database) en la misma estación de trabajo, puede que haya sobreescrito el programa de utilidad de Inicialización de catálogos de información. En este caso, desde el directorio \sqllib\bin, busque los archivos createic.bak y flgnmwcr.bak y renómbrelos como createic.exe y flgnmwcr.exe respectivamente. Si instala componentes del Gestor de catálogos de información desde DB2 Universal Database, los componentes deben estar en otra estación de trabajo que no sea donde ha instalado el Data Warehouse Manager. Para más información, consulte el Capítulo 3, Instalación de componentes del Gestor de catálogos de información, en el manual DB2 Warehouse Manager Installation Guide. ------------------------------------------------------------------------ 26.2 Mejoras en el Gestor de catálogos de información El Gestor de catálogos de información incluye las mejoras siguientes: Actualmente, el ICM soporta la importación de información de filtro ETI para la base de datos, tabla o columna de origen o destino. En Registrar en el almacén, se utiliza un nuevo objeto ICM de Datos de conversión tipo ETI para almacenar la información de filtro. Luego, estos objetos se enlazan a la base de datos, tabla o columna de origen o destino para las que han sido definidos. El ICM tiene la capacidad de enlazar una base de datos, tabla o columna de origen o destino determinada con varios objetos de Datos de conversión ETI, como consecuencia de registrar distintas Conversiones ETI con el mismo catálogo de ICM. Se aplica la misma posibilidad a las Transformaciones, en el aspecto en que una columna de destino determinada puede, ahora, contener varias Transformaciones como consecuencia de registrar distintas Conversiones ETI con el mismo catálogo de ICM. Para ello, el ICM ha efectuado cambios en la clave de Transformación al importar una correlación ETI*Extract. Para habilitar estas características, utilice ETI*Extract 4.2.1 con MetaScheduler 4.1.0 para realizar registros con el Data Warehouse Manager. Se dispone de más información sobre estas características en el apartado Consejos y pistas de DB2 Warehouse Manager, en la dirección http://www.ibm.com/software/data/db2/datawarehouse/support.html. Busque las palabras clave "ETI" o "Application Data". ------------------------------------------------------------------------ 26.3 Incompatibilidad entre Information Catalog Manager y Sybase en el entorno Windows La instalación de Information Catalog Manager (ICM) Versión 7 en la misma máquina Windows NT o Windows 2000 con Sybase Open Client da como resultado un error y Sybase Utilities deja de funcionar. Se produce un mensaje de error parecido al siguiente: No se ha podido inicializar LIBTCL.DLL. Por favor, asegúrese de que la variable de entorno SYBASE se haya establecido correctamente. Evite esta situación eliminando el parámetro de entorno LC_ALL a partir de los parámetros del entorno de Windows. LC_ALL es un parámetro de categoría de entorno nacional. Las categorías de entorno nacional son constantes evidentes que utilizan las rutinas de localización para especificar la parte de la información de entorno nacional que ha de utilizar un programa. El entorno nacional hace referencia a la localidad (país/región) para la que pueden personalizarse determinados aspectos del programa. Las áreas que dependen del entorno nacional incluyen, por ejemplo, el formato de las fechas o el formato de presentación de los valores monetarios. LC_ALL afecta a todo comportamiento específico de entorno nacional (todas las categorías). Si elimina el parámetro de entorno LC_ALL para que ICM pueda coexistir con Sybase en la plataforma de Windows NT, dejarán de funcionar los recursos de siguientes: * Usuario de catálogos de información * Administrador de catálogos de información * Gestor de catálogos de información ------------------------------------------------------------------------ 26.4 Acceso a catálogos de información de DB2 Versión 5 con el Gestor de catálogos de información de DB2 Versión 7 Los subcomponentes del Gestor de catálogos de información de DB2 Versión 7, configurados por el proceso de instalación de DB2 Versión 7, soportan el acceso a catálogos de información almacenados en bases de datos de DB2 Versión 6 y DB2 Versión 7. Puede modificar la configuración de los subcomponentes para acceder a catálogos de información almacenados en bases de datos de DB2 Versión 5. Los subcomponentes del Gestor de catálogos de información de DB2 Versión 7 no soportan el acceso a datos de DB2 Versión 2 ni de otras versiones anteriores. Para configurar el Administrador de catálogos de información, el Usuario de catálogos de información y el Programa de utilidad de inicialización de catálogos de información para acceder a catálogos de información almacenados en bases de datos de DB2 Versión 5, haga lo siguiente: 1. Instale DB2 Connect Enterprise Edition Versión 6 en una estación de trabajo distinta de aquélla en la que se ha instalado el Gestor de catálogos de información de DB2 Versión 7. DB2 Connect Enterprise Edition se incluye formando parte de DB2 Universal Database Enterprise Edition y de DB2 Universal Database Enterprise - Extended Edition. Si se ha instalado la Versión 6 de cualquiera de estos productos de DB2, no es necesario instalar DB2 Connect por separado. Restricción: no se pueden instalar varias versiones de DB2 en la misma estación de trabajo Windows NT u OS/2. Puede instalar DB2 Connect en otra estación de trabajo Windows NT o en una estación de trabajo OS/2 o UNIX. 2. Configure al Gestor de catálogos de información y DB2 Connect Versión 6 para acceder a los datos de DB2 Versión 5. Para obtener más información, consulte la publicación DB2 Connect User's Guide. Los pasos siguientes constituyen una visión general de los pasos necesarios: a. En el sistema DB2 Versión 5, utilice el Procesador de línea de mandatos de DB2 para catalogar la base de datos de Versión 5 a la que va a acceder el Gestor de catálogos de información. b. En el sistema DB2 Connect, utilice el Procesador de línea de mandatos de DB2 para catalogar: + El nodo TCP/IP para el sistema DB2 Versión 5 + La base de datos para el sistema DB2 Versión 5 + La entrada DCS para el sistema DB2 Versión 5 c. En la estación de trabajo que contiene el Gestor de catálogos de información, utilice el Procesador de línea de mandatos de DB2 para catalogar: + El nodo TCP/IP para el sistema DB2 Connect + La base de datos para el sistema DB2 Connect Para obtener información sobre cómo catalogar bases de datos, consulte la publicación DB2 Universal Database Suplemento de instalación y configuración. 3. En el depósito que contiene el Gestor de catálogos de información, vincule el paquete de la CLI de DB2 con cada una de las bases de datos a las que se vaya a acceder a través de DB2 Connect. Los mandatos siguientes de DB2 proporcionan un ejemplo de vinculación con v5database, base de datos hipotética de DB2 versión 5. Utilice el Procesador de línea de mandatos de DB2 para emitir los mandatos siguientes. db2cli.lst y db2ajgrt están ubicados en el directorio \sqllib\bnd. db2 connect to v5database user idusuario using contraseña db2 bind db2ajgrt.bnd db2 bind @db2cli.lst blocking all grant public donde idusuario es el ID de usuario para v5database y contraseña es la contraseña para el ID de usuario. Se produce un error cuando se vincula db2cli.list a la base de datos de DB2 Versión 5. Sucede este error porque en esta configuración no se soportan objetos grandes (LOB). Este error no afectará al acceso por parte del agente de depósito a la base de datos de DB2 Versión 5. Para acceder a datos de DB2 Versión 5 a través de DB2 Connect, se requiere el FixPak 14 para DB2 Universal Database Versión 5, que estará disponible en junio de 2000. Consulte el número de APAR JR14507 en dicho FixPak. ------------------------------------------------------------------------ 26.5 Configuración de un Catálogo de información El paso 2 del primer apartado del capítulo 1, "configuración de un catálogo de información", dice: Al instalar DB2 Warehouse Manager o DB2 OLAP Server, se crea un catálogo de información por omisión en DB2 Universal Database para Windows NT. Esta declaración es incorrecta. Se debe definir un nuevo catálogo de información. Para obtener más información, consulte el apartado "Creación del catálogo de información". ------------------------------------------------------------------------ 26.6 Intercambio de metadatos con otros productos En el capítulo 6, "Intercambio de metadatos con otros productos", del apartado "Identificación de objetos OLAP que se publicarán", hay una frase en el segundo párrafo que dice: Al publicar metadatos de DB2 OLAP Integration Server, se crea una relación enlazada entre un tipo de objeto "dimensiones dentro de una base de datos multidimensional" de un catálogo de información y un objeto de tabla en el OLAP Integration Server. La frase debe decir: Al publicar metadatos de DB2 OLAP Integration Server, se crea una relación enlazada entre un tipo de objeto "dimensiones dentro de una base de multidimensional y un objeto de tabla" de un catálogo de información. Esta frase aparece también en el apéndice C, "Correlaciones de metadatos", en el apartado "Correlaciones de metadatos entre el Gestor de catálogos de información y el OLAP Server. ------------------------------------------------------------------------ 26.7 Intercambio de metadatos utilizando el mandato flgnxoln En el capítulo 6, "Intercambio de metadatos", hay el apartado "Identificación de objetos OLAP que se publicarán". Al final de este apartado, se muestra un ejemplo de utilización del mandato flgnxoln para publicar metadatos del servidor OLAP en un catálogo de información. El ejemplo muestra, incorrectamente, como directorio para los archivos db2olap.ctl y db2olap.ff x:\Archivos de programa\sqllib\logging. El nombre de directorio debe ser x:\Archivos de programa\sqllib\exchange, tal como se describe en la página 87. ------------------------------------------------------------------------ 26.8 Intercambio de metadatos utilizando el mandato MDISDGC En el Capítulo 6. Intercambio de metadatos con otros productos: "Conversión de metadatos conformes con MDIS a un archivo de lenguaje de códigos", página 97: No se puede emitir el mandato MDISDGC desde el indicador de mandatos de MS-DOS. Debe emitir el mandato MDISDGC desde una ventana de mandatos de DB2. La primera frase de la sección, "Conversión de un archivo de lenguaje de códigos a metadatos conformes con MDIS," también dice que debe emitir el mandato DGMDISC desde el indicador de mandatos de MS-DOS. Debe emitir el mandato DGMDISC desde una ventana de mandatos de DB2. ------------------------------------------------------------------------ 26.9 Invocación de programas Algunos ejemplos de la publicación Information Catalog Administration Guide muestran mandatos que contiene el nombre de directorio Archivos de programa. Cuando invoque a un programa que contenga Archivos de programa como parte del nombre de vía de acceso, debe incluir la invocación del programa entre comillas. Por ejemplo, el apéndice B, "Tipos de objetos del gestor de catálogos de información predefinidos", contiene un ejemplo en el apartado "Inicialización del catálogo de información con los tipos de objetos predefinidos". Si utiliza el ejemplo de este apartado, obtendrá un error al ejecutarlo desde la solicitud de DOS. El ejemplo siguiente es correcto: "X:Archivos de programa\SQLLIB\SAMPLES\SAMPDATA\DGWDEMO" /T IDusuario contraseña dgname ------------------------------------------------------------------------ Information Catalog Manager Programming Guide and Reference ------------------------------------------------------------------------ 27.1 Códigos de razón del Gestor de catálogos de información En el Apéndice D: Códigos de razón del Gestor de catálogos de información, puede estar truncado por la columna de la derecha parte del texto para los códigos de razón siguientes: 31014, 32727, 32728, 32729, 32730, 32735, 32736, 32737, 33000, 37507, 37511 y 39206. Si el texto aparece truncado, vea la columna completa en la versión de HTML de esta publicación. ------------------------------------------------------------------------ Information Catalog Manager User's Guide En el capítulo 2, hay un apartado que se llama "Registro de un nodo de servidor y del catálogo de información remota." Este apartado enumera los pasos que puede realizar desde el Centro de control de DB2 antes de registrar un catálogo de información remota utilizando el gestor de catálogos de información. El último párrafo de este apartado dice que después de realizar una serie de pasos desde el Centro de control de DB2 (añadir un sistema, añadir una instancia y añadir una base de datos), debe concluir el Centro de control antes de abrir el Gestor de catálogos de información. Esta información es incorrecta. No es necesario cerrar el Centro de control antes de abrir el gestor de catálogos de información. La misma corrección también es aplicable a función de la ayuda en línea "Registro de un nodo del servidor y de un catálogo de información remota" y a la ayuda en línea para Registrar nodo del servidor y Ventana del catálogo de información. ------------------------------------------------------------------------ Gestor de catálogos de información: Mensajes en línea ------------------------------------------------------------------------ 29.1 Correcciones en los mensajes FLG 29.1.1 Mensaje FLG0260E En la segunda frase de la explicación de este mensaje debe decir: El error ha ocasionado una retrotracción del catálogo de información, que ha fallado. El catálogo de información no está en una condición estable, pero no se han efectuado cambios. 29.1.2 Mensaje FLG0051E En el segundo apartado de la explicación de este mensaje debe decir: El catálogo de información contiene demasiados objetos o tipos de objeto. En la respuesta del administrador debe decir: Suprima algunos objetos o tipos de objeto del catálogo de información actual utilizando la función de importación. 29.1.3 Mensaje FLG0003E En la explicación de este mensaje debe decir: Para poder utilizar el catálogo de información, antes se debe registrar. Es posible que no se haya registrado correctamente el catálogo de información. 29.1.4 Mensaje FLG0372E En la primera frase de la explicación de este mensaje debe decir: Se ha ignorado el valor ATTACHMENT-IND para un objeto porque dicho objeto es un objeto de Conexión. 29.1.5 Mensaje FLG0615E La segunda frase del mensaje debe decir: El gestor de catálogos de información ha hallado un error de base de datos inesperado o no puede encontrar el archivo de vinculación en el directorio o vía de acceso actuales. ------------------------------------------------------------------------ Gestor de catálogos de información: Ayuda en línea Ventana Catálogo de información: La ayuda en línea para el elemento Abrir del menú Seleccionado dice, incorrectamente, "Abre el objeto seleccionado". Debe decir "Abre la ventana Definir búsqueda". ------------------------------------------------------------------------ 30.1 Gestor de catálogos de información para la Web Cuando se utiliza un catálogo de información que está ubicado en un sistema DB2 UDB para OS/390, no se dispone de búsqueda sensible a las mayúsculas/minúsculas. Esto es así tanto para una búsqueda simple como para una búsqueda avanzada. La ayuda en línea no explica que todas las búsquedas realizadas sobre un catálogo de información de DB2 UDB para OS/390 son sensible a las mayúsculas y minúsculas para una búsqueda simple. Por otra parte, todos los objetos de la categoría de agrupamiento son ampliables, aunque no sean objetos fundamentales. ------------------------------------------------------------------------ DB2 Warehouse Manager Installation Guide ------------------------------------------------------------------------ 31.1 Actualización disponible del manual DB2 Warehouse Manager Installation Guide Se ha actualizado el manual DB2 Warehouse Manager Installation Guide y el último .pdf está disponible para bajarlo en línea desde http://www.ibm.com/software/data/db2/udb/winos2unix/support. Toda la documentación actualizada también está disponible en CD. Se puede solicitar dicho CD a través del servicio, utilizando el número de PTF U478862. La información contenida en estas notas es adicional al material de consulta actualizado. ------------------------------------------------------------------------ 31.2 Requisitos de software para transformadores de almacén de datos Debe estar instalado Java Developer's Kit (JDK) Versión 1.1.8 o posterior en la base de datos en la que tiene intención de utilizar los transformadores de almacén de datos. ------------------------------------------------------------------------ 31.3 Conector para SAP R/3 Cuando correlaciona columnas procedentes de campos de un objeto comercial SAP R/3 con tablas DB2, es posible que algunos nombres de columnas generados tengan más de 30 caracteres. En este caso, el nombre de columna generado sólo reflejará los 30 primeros caracteres del nombre del campo SAP. Si el nombre generado no es el que desea, puede cambiarlo utilizando el cuaderno Propiedades correspondiente a la tabla. 31.3.1 Requisitos previos a la instalación Si se especifica un valor en un campo de destino de una página de origen de SAP, establezca la variable de entorno RFC_INI. Por ejemplo, Set RFC_INI=c:\rfcapl.ini. Una vez establecida esta variable, debe volver a arrancar la máquina. ------------------------------------------------------------------------ 31.4 Conector para la Web Si tiene problemas para ejecutar el conector para la Web, puede que IBM Service le solicite que envíe un rastreo correspondiente al conector. Para habilitar el rastreo correspondiente al conector para la Web, establezca el agente de Warehouse Center en un nivel mayor que 0. El archivo de rastreo se denomina WSApid.log, donde pid es el ID de proceso de Windows correspondiente al agente. El archivo de rastreo se crea en el directorio \sqllib\logging. 31.4.1 Requisitos previos a la instalación Instale el entorno de ejecución de Java (JRE) o Java Virtual Machine (JVM), versión 1.2.2 o posterior y conviértalo en su valor por omisión. Para convertir una versión del JRE en su valor por omisión, añada la vía de acceso de 1.2.2 JRE a la variable PATH del sistema (por ejemplo, C:\JDKs\IBM\java12\bin;). Después de cambiar el JRE por omisión, debe volver a arrancar la máquina. Si no tiene Java instalado, puede instalarlo desde el CD de instalación de conectores de Data Warehouse. ------------------------------------------------------------------------ Query Patroller Administration Guide ------------------------------------------------------------------------ 32.1 El cliente de DB2 Query Patroller es un componente separado El cliente de DB2 Query Patroller es un componente separado que no forma parte de DB2 Administration Client. Esto significa que no se instala durante la instalación de DB2 Administration Client, tal como se indica en la publicación Query Patroller Installation Guide. En lugar de esto, el cliente de Query Patroller se debe instalar por separado. La versión y nivel del cliente Query Patroller y del servidor Query Patroller deben coincidir. ------------------------------------------------------------------------ 32.2 Migración desde la Versión 6 de DB2 Query Patroller utilizando dqpmigrate El mandato dqpmigrate debe utilizarse en el caso de que se hubiera instalado la Versión 7 de Query Patroller Server sobre la Versión 6 de Query Patroller Server. Para el FixPak 2 o posterior, no ha de ejecutar dqpmigrate manualmente ya que la instalación del FixPak ejecuta este mandato en su lugar. Si no se utiliza este mandato, los usuarios existentes definidos en la v6 no tendrían privilegios de EXECUTE sobre diversos procedimientos almacenados nuevos que se han añadido en la Versión 7. Nota: dqpmigrate.bnd se halla en el directorio sqllib/bnd y dqpmigrate.exe se halla en el directorio sqllib/bin. Para utilizar dqpmigrate manualmente para otorgar privilegios de EXECUTE, haga lo siguiente después de instalar el FixPak: 1. Vincule el archivo de paquete /sqllib/bnd/dqpmigrate.bnd con la base de datos en la que se ha instalado el servidor de Query Patroller entrando el mandato siguiente: db2 bind dqpmigrate.bnd 2. Ejecute dqpmigrate entrando lo siguiente: dqpmigrate dbalias userid passwd ------------------------------------------------------------------------ 32.3 Habilitación de la Gestión de consultas En el capítulo "Iniciación", bajo "Habilitación de la Gestión de consultas", el texto debe decir: Para establecer parámetros de configuración de base de datos, debe ser el propietario de la base de datos o tener autorización SYSADM, SYSCTRL o SYSMAINT. ------------------------------------------------------------------------ 32.4 Ubicación del espacio de tabla para tablas de control En el Capítulo 1, Visión general del sistema, bajo tablas de control de DB2 Query Patroller se debe añadir el siguiente texto al final del primer párrafo de la sección: El espacio de tabla correspondiente a las tablas de control de DB2 Query Patroller debe residir en un grupo de nodos de un solo nodo o DB2 Query Patroller no funcionará correctamente. ------------------------------------------------------------------------ 32.5 Nuevos parámetros para el mandato dqpstart En el Capítulo 2, Iniciación, bajo Inicio y detención de DB2 Query Patroller, se debe añadir el siguiente texto al final del último párrafo: Nuevos parámetros para el mandato dqpstart: Parámetro RESTART: Permite al usuario sustituir el nombre del sistema principal y/o el tipo de nodo del nodo especificado en el archivo dqpnodes.cfg. DB2 Query Patroller se iniciará en este nodo. Nota: Antes de ejecutar el mandato DQPSTART con el parámetro RESTART asegúrese de que: 1. DB2 Query Patroller ya está detenido en el sistema principal que se va a sustituir. 2. DB2 Query Patroller aún no se está ejecutando en el nuevo sistema principal. La sintaxis es la siguiente: dqpstart nodenum núm_nodo restart nombre_sistema_principal server | agent | none Parámetro ADDNODE: Permite al usuario añadir un nodo nuevo al archivo dqpnodes.cfg. DB2 Query Patroller se iniciará en este nodo después de que la entrada del nuevo nodo se añada al archivo dqpnodes.cfg. La sintaxis es la siguiente: dqpstart nodenum núm_nodo addnode nombre_sistema_principal server | agent | none Parámetro DROPNODE: Permite al usuario eliminar un nodo del archivo dqnodes.cfg. DB2 Query Patroller se detendrá en este nodo antes de que la entrada del nodo se elimine del archivo dqpnodes.cfg. La sintaxis es la siguiente: dqpstop nodenum núm_nodo dropnode ------------------------------------------------------------------------ 32.6 Nuevo parámetro para el mandato iwm_cmd Se añadido el nuevo parámetro -v al mandato iwm_cmd para permitir al usuario recuperar el estado de los trabajos que se estaban ejecutando en el nodo especificado. Sólo se pueden recuperar los trabajos de un nodo inactivo. Este mandato se debe emitir cuando hay un error en un nodo y hay algunos trabajos ejecutándose en dicho nodo o en proceso de cancelación en ese momento. Los trabajos que estaban en estado "En ejecución" se volverán a someter y volverán al estado "En cola ". Los trabajos que estaban en estado "En cancelación" se colocarán en estado "Cancelado". La sintaxis parcial es la siguiente: >>-iwm_cmd--+------------------------------------+--------------> '--u--id_usuario--+----------------+-' '--p--contraseña-' >---v--id_nodo_a_recuperar------------------------------------->< id_nodo_a_recuperar Especifica el nodo en el que se tienen que recuperar los trabajos. ------------------------------------------------------------------------ 32.7 Nueva variable de registro: DQP_RECOVERY_INTERVAL Hay una nueva variable de registro denominada DQP_RECOVERY_INTERVAL que sirve para definir el intervalo de tiempo en minutos en que iwm_scheduler busca archivos de recuperación. El valor por omisión es 60 minutos. ------------------------------------------------------------------------ 32.8 Inicio del Administrador de consultas En el capítulo "Utilización de QueryAdministrator para administrar DB2 Query Patroller", se proporcionan instrucciones para iniciar QueryAdministrator desde el menú Inicio de Windows. El primer paso contiene el texto siguiente: Si está utilizando Windows, puede seleccionar DB2 Query Patroller --> QueryAdministrator en el grupo de programas IBM DB2. Dicho texto debe decir: DB2 Query Patroller --> QueryAdmin. ------------------------------------------------------------------------ 32.9 Administración de usuarios En el apartado "Administración de usuarios" del capítulo "Utilización de QueryAdministrator para administrar DB2 Query Patroller", la definición del parámetro Tiempo máximo transcurrido indica que, si el valor se establece en 0 o -1, la consulta siempre se ejecutará hasta que termine. Este parámetro no se puede establecer con un valor negativo. El texto debe indicar que, si el valor se establece en 0, la consulta siempre se ejecutará hasta su finalización. El parámetro Número máximo de consultas especifica el número máximo de trabajos que DB2 Query Patroller ejecutará simultáneamente. El Número máximo consultas debe ser un número entero dentro del rango de 0 a 32767. ------------------------------------------------------------------------ 32.10 Creación de una cola de trabajos En el apartado "Administración de colas de trabajos" del capítulo "Utilización de QueryAdministrator para administrar DB2 Query Patroller", la captura de pantalla incluida en los pasos para "Crear una cola de trabajos" se debe visualizar después del segundo paso. La ventana Información sobre nuevas Colas de trabajos aparece una vez que se pulsa Nuevo en la página Administración de colas de trabajos de la herramienta QueryAdministrator. Las referencias a la página Colas de trabajos o a la pestaña Colas de trabajos deben decir, respectivamente, página Administración de colas de trabajos y pestaña Administración de colas de trabajos. ------------------------------------------------------------------------ 32.11 Utilización de la interfaz de línea de mandatos Para un usuario que tiene autorización User sobre el sistema DB2 Query Patroller para someter una consulta y que se cree una tabla de resultados, es posible que el usuario necesite autorización CREATETAB sobre la base de datos. El usuario no necesitará dicha autorización sobre la base de datos si la variable de perfil DQP_RES_TBLSPC se deja sin establecer o si la variable de perfil DQP_RES_TBLSPC se establece con el nombre del espacio de tablas por omisión. En este caso, la creación de las tablas de resultados será satisfactoria puesto que los usuarios tienen autorización para crear tablas en el espacio de tablas por omisión. ------------------------------------------------------------------------ 32.12 Notas sobre Query Enabler * Al utilizar herramientas de consulta de terceros que utilicen un cursor de conjunto de claves, no se interceptarán las consultas. Para que Query Enabler intercepte estas consultas, debe modificar el archivo db2cli.ini para que incluya: [common] DisableKeySetCursor=1 * Para clientes AIX, asegúrese de que la variable de entorno LIBPATH no esté establecida. La biblioteca libXext.a, que se suministra con el JDK, no es compatible con la biblioteca del subdirectorio /usr/lib/X11. Esto ocasionará problemas con la GUI de Query Enabler. ------------------------------------------------------------------------ 32.13 DB2 Query Patroller Tracker puede devolver una página de columnas en blanco El FixPak 3 incluye un arreglo para DB2 Query Patroller Tracker. El Tracker ahora informará correctamente acerca de las consultas que no coinciden con ninguna columna. Un ejemplo de este tipo de consulta es "SELECT COUNT(*) FROM ...". Puesto que esta clase de consulta no coincide con ninguna columna de la tabla, el Tracker presentará una página en blanco para la página de columnas. Esta página de columnas en blanco no es ningún defecto. ------------------------------------------------------------------------ 32.14 Query Patroller y Herramientas de duplicación Query Patroller Versión 7 interceptará las consultas de las herramientas de duplicación (asnapply, asnccp, djra y analyze) y hará que estas herramientas no funcionen correctamente. Para solucionarlo hay que inhabilitar la gestión de consultas dinámicas cuando se ejecutan estas herramientas. ------------------------------------------------------------------------ 32.15 Mejora del rendimiento de Query Patroller Al final del Capítulo 6, Ajuste del rendimiento, debe aparecer el texto siguiente: Utilización de la opción BIND, INSERT BUF para mejorar el rendimiento de DB2 Query Patroller Por omisión, DB2 Query Patroller crea tablas de resultados para almacenar los resultados de las consultas que gestiona. Para aumentar el rendimiento de las inserciones que se realicen en dichas tablas de resultados, incluya la opción INSERT BUF cuando vincule uno de los archivos de enlace lógico de DB2 Query Patroller. Vincule los archivos de enlace lógico de DB2 Query Patroller a la base de datos del modo siguiente: Desde el directorio DB2_RUNTIME\bnd en Windows, o desde la vía de acceso DB2_RUNTIME/bnd en UNIX, entre los mandatos siguientes: db2 connect to basedatos usuario iwm using password db2 bind @db2qp.lst blocking all grant public db2 bind iwmsx001.bnd insert buf db2 bind @db2qp_sp.lst db2 commit donde basedatos es la base de datos de sustitución que DB2 Query Patroller gestionará y contraseña es la contraseña de la cuenta de usuario administrativo, iwm. ------------------------------------------------------------------------ 32.16 Privilegio EXECUTE perdido para los usuarios de Query Patroller creados con la versión 6 Debido a algunos nuevos procedimientos almacenados (IWM.DQPGROUP, IWM.DQPVALUR, IWM.DQPCALCT e IWM.DQPINJOB) que se han añadido a Query Patroller versión 7, los usuarios existentes creados con Query Patroller versión 6 no conservan el privilegio EXECUTE en estos paquetes. Se ha añadido una aplicación para corregir automáticamente este problema al FixPak 1. Cuando intente utilizar DQP Query Admin para modificar la información de usuario de DQP, no intente eliminar usuarios existentes de la lista de usuarios. ------------------------------------------------------------------------ 32.17 Restricciones de Query Patroller Debido a las restricciones de la plataforma de JVM (Java Virtual Machine), Query Enabler no está soportado en HP-UX y NUMA-Q. Además, Query Patroller Tracker no está soportado en NUMA-Q. Si se necesitan todas las herramientas de cliente de Query Patroller, le recomendamos que utilice una plataforma diferente (por ejemplo Windows NT) para ejecutar estas herramientas frente al servidor de HP-UX o NUMA-Q. ------------------------------------------------------------------------ 32.18 Apéndice B. Resolución de problemas de clientes de DB2 Query Patroller En el Apéndice B, Resolución de problemas de clientes de DB2 Query Patroller, la sección: Problemas comunes de Query Enabler, problema nº 2, el texto del primer punto se sustituye por: Asegúrese de que el valor de la vía de acceso incluya jre. ------------------------------------------------------------------------ Desarrollo de aplicaciones Tabla de contenido parcial * Administrative API Reference o 33.1 db2ArchiveLog (nueva API) + db2ArchiveLog o 33.2 db2ConvMonStream o 33.3 db2DatabasePing (nueva API) + db2DatabasePing - Base de datos Ping o 33.4 db2HistData o 33.5 db2HistoryOpenScan o 33.6 db2XaGetInfo (nueva API) + db2XaGetInfo - Obtener información para el gestor de recursos o 33.7 db2XaListIndTrans (nueva API que reemplaza a sqlxphqr) + db2XaListIndTrans - Listar transacciones dudosas o 33.8 db2GetSnapshot - Obtener instantánea o 33.9 Forget Log Record o 33.10 sqlaintp - Obtener mensaje de error o 33.11 sqlbctcq - Cerrar consulta de contenedor de espacio de tabla o 33.12 sqleseti - Establecer información de cliente o 33.13 sqlubkp - Copia de seguridad de la base de datos o 33.14 sqlureot - Reorganizar tabla o 33.15 sqlurestore - Restaurar base de datos o 33.16 Error de documentación sobre el soporte de memoria compartida ampliada AIX (EXTSHM) o 33.17 SQLFUPD + 33.17.1 locklist o 33.18 SQLEDBDESC * Application Building Guide o 34.1 Actualización disponible * Application Development Guide o 35.1 Actualización disponible o 35.2 IBM OLE DB Provider para DB2 UDB * CLI Guide and Reference o 36.1 Vinculación de programas de utilidad de bases de datos utilizando el Cliente de tiempo de ejecución o 36.2 Utilización de SQL estático en aplicaciones de la CLI o 36.3 Limitaciones de perfil estático JDBC/ODBC/CLI o 36.4 Transformaciones de ADT o 36.5 Capítulo 1. Introducción a la CLI + 36.5.1 Diferencias entre la CLI de DB2 y el SQL incorporado o 36.6 Capítulo 3. Utilización de características avanzadas + 36.6.1 Cómo escribir aplicaciones de varias hebras + 36.6.2 Escritura de una aplicación Unicode de DB2 CLI + 36.6.2.1 Funciones de Unicode + 36.6.2.2 Tipos de datos nuevos y conversiones válidas + 36.6.2.3 Valor de palabra clave/parche obsoleto + 36.6.2.4 Literales en bases de datos Unicode + 36.6.2.5 Nuevas palabras clave de configuración de CLI + 36.6.3 Microsoft Transaction Server (MTS) como Supervisor de transacciones + 36.6.4 Cursores desplazables + 36.6.4.1 Soporte de cursor desplazable para OS/390 en el extremo del servidor + 36.6.5 Utilización de SQL compuesto + 36.6.6 Utilización de procedimientos almacenados + 36.6.6.1 Escritura de un procedimiento almacenado en CLI + 36.6.6.2 Procedimientos almacenados de CLI y vinculación automática o 36.7 Capítulo 4. Configuración de CLI/ODBC y ejecución de aplicaciones de ejemplo + 36.7.1 Palabras clave de configuración o 36.8 Capítulo 5. Funciones de CLI de DB2 + 36.8.1 SQLBindFileToParam - Vincular referencia de archivo LOB a parámetro de LOB + 36.8.2 SQLColAttribute -- Devolver un atributo de columna + 36.8.3 SQLGetInfo - Obtener información general + 36.8.4 SQLGetLength - Recuperar longitud del valor de una serie + 36.8.5 SQLNextResult - Asociar el conjunto de resultados siguiente con otro descriptor de contexto de sentencias + 36.8.5.1 Objetivo + 36.8.5.2 Sintaxis + 36.8.5.3 Argumentos de función + 36.8.5.4 Utilización + 36.8.5.5 Códigos de retorno + 36.8.5.6 Diagnósticos + 36.8.5.7 Restricciones + 36.8.5.8 Referencias + 36.8.6 SQLSetStmtAttr -- Establecer opciones relativas a una sentencia o 36.9 Apéndice C. DB2 CLI y ODBC + 36.9.1 Aplicaciones Unicode de ODBC + 36.9.1.1 Aplicaciones Unicode de ODBC frente a aplicaciones no Unicode de ODBC o 36.10 Apéndice D. Funciones escalares ampliadas + 36.10.1 Funciones de fecha y hora o 36.11 Apéndice K. Utilización del recurso de rastreo CLI/ODBC/JDBC de DB2 * Consulta de mensajes o 37.1 Actualización disponible * Consulta de SQL o 38.1 Actualización del manual Consulta de SQL disponible o 38.2 Ahora se soportan datos CLOB en funciones de MQSeries o 38.3 Capítulo 3. Elementos de lenguaje + 38.3.1 Promoción de tipos de datos + 38.3.2 Difusión entre tipos de datos + 38.3.3 Asignaciones y comparaciones + 38.3.3.1 Asignaciones de serie + 38.3.3.2 Comparaciones de series + 38.3.4 Normas para los tipos de datos de resultado + 38.3.4.1 Series de caracteres y de gráficos en una base de datos Unicode + 38.3.5 Normas para las conversiones de serie + 38.3.6 Expresiones + 38.3.6.1 Con el operador de concatenación + 38.3.7 Predicados o 38.4 Capítulo 4. Funciones + 38.4.1 Cómo habilitar las nuevas funciones y procedimientos + 38.4.2 Funciones escalares + 38.4.2.1 MQPUBLISH + 38.4.2.2 MQREADCLOB + 38.4.2.3 MQRECEIVECLOB + 38.4.2.4 MQSEND + 38.4.3 Funciones escalares y Unicode + 38.4.4 Funciones de tabla + 38.4.4.1 MQREADALLCLOB + 38.4.4.2 MQRECEIVEALLCLOB o 38.5 Capítulo 6. Sentencias de SQL + 38.5.1 Claves de índice mayores para bases de datos Unicode + 38.5.1.1 ALTER TABLE + 38.5.1.2 CREATE INDEX + 38.5.1.3 CREATE TABLE * Actualizaciones de Unicode o 39.1 Introducción + 39.1.1 Bases de datos y aplicaciones Unicode de DB2 + 39.1.2 Actualizaciones de documentación ------------------------------------------------------------------------ Administrative API Reference ------------------------------------------------------------------------ 33.1 db2ArchiveLog (nueva API) db2ArchiveLog Cierra y trunca el archivo de anotaciones cronológicas activo para una base de datos recuperable. Si la salida de usuario está habilitada, emite una petición de archivado. Autorización Uno de los siguientes: * sysadm * sysctrl * sysmaint * dbadm Conexión necesaria Esta API establece automáticamente una conexión con la base de datos especificada. Si ya hay una conexión con la base de datos especificada, la API devolverá un error. Archivo de inclusiones de API db2ApiDf.h Sintaxis de API C /* Archivo: db2ApiDf.h */ /* API: Archivar anotación cronológica activa */ SQL_API_RC SQL_API_FN db2ArchiveLog ( db2Uint32 version, void *pDB2ArchiveLogStruct, struct sqlca * pSqlca); typedef struct { char *piDatabaseAlias; char *piUserName; char *piPassword; db2Uint16 iAllNodeFlag; db2Uint16 iNumNodes; SQL_PDB_NODE_TYPE *piNodeList; db2Uint32 iOptions; } db2ArchiveLogStruct Sintaxis genérica de API /* Archivo: db2ApiDf.h */ /* API: Archivar anotación cronológica activa */ SQL_API_RC SQL_API_FN db2gArchiveLog ( db2Uint32 version, void *pDB2ArchiveLogStruct, struct sqlca * pSqlca); typedef struct { db2Uint32 iAliasLen; db2Uint32 iUserNameLen; db2Uint32 iPasswordLen; char *piDatabaseAlias; char *piUserName; char *piPassword; db2Uint16 iAllNodeFlag; db2Uint16 iNumNodes; SQL_PDB_NODE_TYPE *piNodeList; db2Uint32 iOptions; } db2ArchiveLogStruct Parámetros de API version Entrada. Especifica la versión y el nivel de release de la variable que se pasa como segundo parámetro, pDB2ArchiveLogStruct. pDB2ArchiveLogStruct Entrada. Puntero hacia la estructura db2ArchiveLogStruct. pSqlca Salida. Puntero hacia la estructura sqlca. iAliasLen Entrada. Entero no firmado de 4 bytes que representa la longitud en bytes del alias de base de datos. iUserNameLen Entero no firmado de 4 bytes que representa la longitud en bytes del nombre de usuario. Establézcalo en cero si no se utiliza nombre de usuario. iPasswordLen Entrada. Entero no firmado de 4 bytes que representa la longitud en bytes de la contraseña. Establézcalo en cero si no se utiliza contraseña. piDatabaseAlias Entrada. Serie que contiene el alias de base de datos (tal como se ha catalogado en el directorio de bases de datos del sistema) de la base de datos para la que deberá archivarse la anotación cronológica activa. piUserName Entrada. Serie que contiene el nombre de usuario que se utilizará al intentar realizar una conexión. piPassword Entrada. Serie que contiene la contraseña que se utilizará al intentar realizar una conexión. iAllNodeFlag Sólo MPP. Entrada. Distintivo que indica si la operación se debe aplicar a todos los nodos listados en el archivo db2nodes.cfg. Los valores válidos son: DB2ARCHIVELOG_NODE_LIST Aplicar a los nodos de una lista de nodos que se pasa en piNodeList. DB2ARCHIVELOG_ALL_NODES Aplicar a todos los nodos. piNodeList debe ser NULL. Este es el valor por omisión. DB2ARCHIVELOG_ALL_EXCEPT Aplicar a todos los nodos excepto aquellos de la lista de nodos que se ha pasado en piNodeList. iNumNodes Sólo MPP. Entrada. Especifica el número de nodos del conjunto piNodeList. piNodeList Sólo MPP. Entrada. Puntero hacia un conjunto de números de nodo a los que se aplicará la operación archive log. iOptions Entrada. Reservado para su utilización en el futuro. ------------------------------------------------------------------------ 33.2 db2ConvMonStream En las Notas de uso, la estructura del tipo de corriente de datos variable instantánea SQLM_ELM_SUBSECTION debe ser sqlm_subsección. ------------------------------------------------------------------------ 33.3 db2DatabasePing (nueva API) db2DatabasePing - Base de datos Ping Comprueba el tiempo de respuesta en la red de la conectividad subyacente entre un cliente y un servidor de bases de datos. Una aplicación puede utilizar esta API cuando se accede a un servidor de bases de datos principal mediante DB2 Connect directamente o utilizando una pasarela. Autorización Ninguna Conexión necesaria Base de datos Archivo de inclusiones de API db2ApiDf.h Sintaxis de API C /* Archivo: db2ApiDf.h */ /* API: Base de datos Ping */ /* ... */ SQL_API_RC SQL_API_FN db2DatabasePing ( db2Uint32 versionNumber, void *pParmStruct, struct sqlca *pSqlca); /* ... */ typedef SQL_STRUCTURE db2DatabasePingStruct { char iDbAlias[SQL_ALIAS_SZ + 1]; db2Uint16 iNumIterations; db2Uint32 *poElapsedTime; } Sintaxis genérica de API /* Archivo: db2ApiDf.h */ /* API: Base de datos Ping */ /* ... */ SQL_API_RC SQL_API_FN db2gDatabasePing ( db2Uint32 versionNumber, void *pParmStruct, struct sqlca *pSqlca); /* ... */ typedef SQL_STRUCTURE db2gDatabasePingStruct { db2Uint16 iDbAliasLength; char iDbAlias[SQL_ALIAS_SZ]; db2Uint16 iNumIterations; db2Uint32 *poElapsedTime; } Parámetros de API versionNumber Entrada. Versión y release del producto DB2 Universal Database o DB2 Connect que utiliza la aplicación. Nota: se debería utilizar la constante db2Version710 o superior para DB2 versión 7.1 o superior. pParmStruct Entrada. Puntero a la estructura db2DatabasePingStruct. iDbAliasLength Entrada. Longitud del nombre de alias de la base de datos. Nota: Este parámetro no se utiliza actualmente. Está reservado para su utilización en el futuro. iDbAlias Entrada. Nombre del alias de la base de datos. Nota: Este parámetro no se utiliza actualmente. Está reservado para su utilización en el futuro. iNumIterations Entrada. Número de iteraciones de peticiones de comprobación. El valor debe estar entre 1 y 32767, ambos inclusive. poElapsedTime Salida. Puntero hacia una matriz de enteros de 32 bits donde el número de elementos es igual a iNumIterations. Todos los elementos de la matriz contendrán el tiempo transcurrido en microsegundos para una iteración de petición de comprobación. Nota: La aplicación es responsable de la asignación de memoria para esta matriz antes de llamar a esta API. pSqlca Salida. Puntero hacia la estructura sqlca. Para obtener más información sobre esta estructura, consulte el manual Administrative API Reference. Notas sobre uso Debe existir una conexión a la base de datos antes de llamar a esta API. En caso contrario, se produce un error. También es posible llamar a esta función utilizando el mandato PING. Para obtener una descripción de este mandato, consulte el manual Consulta de mandatos. ------------------------------------------------------------------------ 33.4 db2HistData Deben añadirse las entradas siguientes a la Tabla 11. Campos de la estructura de db2HistData: Nombre de campo Tipo de datos Descripción oOperation char Ver Tabla 12. oOptype char Ver Tabla 13. Se añadirá la tabla siguiente a continuación de la Tabla 11. Tabla 12. Valores de sucesos válidos para oOperation en la estructura de db2HistData Valor Descripción Definición C Definición COBOL/FORTRAN A añadir DB2HISTORY_OP_ADD DB2HIST_OP_ADD_TABLESPACE espacio de _TABLESPACE tabla B copia de DB2HISTORY_OP_BACKUP DB2HIST_OP_BACKUP seguridad C cargar copia DB2HISTORY_OP_LOAD_COPY DB2HIST_OP_LOAD_COPY D tabla DB2HISTORY_OP_DROPPED_TABLE DB2HIST_OP_DROPPED_TABLE descartada F recuperación DB2HISTORY_OP_ROLLFWD DB2HIST_OP_ROLLFWD de avance G reorganizar DB2HISTORY_OP_REORG DB2HIST_OP_REORG tabla L cargar DB2HISTORY_OP_LOAD DB2HIST_OP_LOAD N renombrar DB2HISTORY_OP_REN DB2HIST_OP_REN espacio de _TABLESPACE _TABLESPACE tabla O descartar DB2HISTORY_OP_DROP DB2HIST_OP_DROP espacio de _TABLESPACE _TABLESPACE tabla Q inmovilizar DB2HISTORY_OP_QUIESCE DB2HIST_OP_QUIESCE R restaurar DB2HISTORY_OP_RESTORE DB2HIST_OP_RESTORE S ejecutar DB2HISTORY_OP_RUNSTATS DB2HIST_OP_RUNSTATS estadísticas T modificar DB2HISTORY_OP_ALT DB2HIST_OP_ALT_TBS espacio de _TABLESPACE tabla U descargar DB2HISTORY_OP_UNLOAD DB2HIST_OP_UNLOAD También se añadirá la tabla siguiente: Tabla 13. Valores de oOptype válidos en la estructura db2HistData: oOperationoOptype Descripción Definición C/COBOL/FORTRAN B F Fuera de línea DB2HISTORY_OPTYPE_OFFLINE N En línea DB2HISTORY_OPTYPE_ONLINE I Fuera de línea DB2HISTORY_OPTYPE_INCR_OFFLINE incremental O En línea incremental DB2HISTORY_OPTYPE_INCR_ONLINE D Fuera de línea delta DB2HISTORY_OPTYPE_DELTA_OFFLINE E En línea delta DB2HISTORY_OPTYPE_DELTA_ONLIN F E Fin de anotaciones DB2HISTORY_OPTYPE_EOL cronológicas P Punto en el tiempo DB2HISTORY_OPTYPE_PIT L I Insertar DB2HISTORY_OPTYPE_INSERT R Sustituir DB2HISTORY_OPTYPE_REPLACE Q S Inmovilización DB2HISTORY_OPTYPE_SHARE compartida U Inmovilización DB2HISTORY_OPTYPE_UPDATE actualizada X Inmovilización DB2HISTORY_OPTYPE_EXCL exclusiva Z Restablecer DB2HISTORY_OPTYPE_RESET inmovilización R F Fuera de línea DB2HISTORY_OPTYPE_OFFLINE N En línea DB2HISTORY_OPTYPE_ONLINE I Fuera de línea DB2HISTORY_OPTYPE_INCR_OFFLINE incremental O En línea incremental DB2HISTORY_OPTYPE_INCR_ONLINE T C Añadir contenedores DB2HISTORY_OPTYPE_ADD_CONT R Reequilibrio DB2HISTORY_OPTYPE_REB ------------------------------------------------------------------------ 33.5 db2HistoryOpenScan Se añadirá el valor siguiente al parámetro iCallerAction. DB2HISTORY_LIST_CRT_TABLESPACE Seleccionar sólo los registros CREATE TABLESPACE y DROP TABLESPACE que pasan por los otros filtros. ------------------------------------------------------------------------ 33.6 db2XaGetInfo (nueva API) db2XaGetInfo - Obtener información para el gestor de recursos Extrae información para un gestor de recursos determinado una vez se ha efectuado una llamada xa_open. Autorización Ninguna Conexión necesaria Base de datos Archivo de inclusiones de API sqlxa.h Sintaxis de API C /* Archivo: sqlxa.h */ /* API: Obtener información para el gestor de recursos */ /* ... */ SQL_API_RC SQL_API_FN db2XaGetInfo ( db2Uint32 versionNumber, void * pParmStruct, struct sqlca * pSqlca); typedef SQL_STRUCTURE db2XaGetInfoStruct { db2int32 iRmid; struct sqlca oLastSqlca; } db2XaGetInfoStruct; Parámetros de API versionNumber Entrada. Especifica la versión y el nivel de release de la estructura que se pasa como segundo parámetro, pParmStruct. pParmStruct Entrada. Puntero hacia la estructura db2XaGetInfoStruct. pSqlca Salida. Puntero hacia la estructura sqlca. Para obtener más información sobre esta estructura, consulte el manual Administrative API Reference. iRmid Entrada. Especifica el gestor de recursos para el cual se necesita información. oLastSqlca Salida. Contiene la sqlca para la última llamada de API XA. Nota: Sólo se puede recuperar la sqlca que ha resultado de la última API XA que ha fallado. ------------------------------------------------------------------------ 33.7 db2XaListIndTrans (nueva API que reemplaza a sqlxphqr) db2XaListIndTrans - Listar transacciones dudosas Proporciona una lista de todas las transacciones dudosas para la base de datos actualmente conectada. Ámbito Esta API sólo afecta al nodo en el que se emite. Autorización Una de las siguientes: * sysadm * dbadm Conexión necesaria Base de datos Archivo de inclusiones de API db2ApiDf.h Sintaxis de API C /* Archivo: db2ApiDf.h */ /* API: Listar transacciones dudosas */ /* ... */ SQL_API_RC SQL_API_FN db2XaListIndTrans ( db2Uint32 versionNumber, void * pParmStruct, struct sqlca * pSqlca); typedef SQL_STRUCTURE db2XaListIndTransStruct { db2XaRecoverStruct * piIndoubtData; db2Uint32 iIndoubtDataLen; db2Uint32 oNumIndoubtsReturned; db2Uint32 oNumIndoubtsTotal; db2Uint32 oReqBufferLen; } db2XaListIndTransStruct; typedef SQL_STRUCTURE db2XaRecoverStruct { sqluint32 timestamp; SQLXA_XID xid; char dbalias[SQLXA_DBNAME_SZ]; char applid[SQLXA_APPLID_SZ]; char sequence_no[SQLXA_SEQ_SZ]; char auth_id[SQL_USERID_SZ]; char log_full; char connected; char indoubt_status; char originator; char reserved[8]; } db2XaRecoverStruct; Parámetros de API versionNumber Entrada. Especifica la versión y el nivel de release de la estructura que se pasa como segundo parámetro, pParmStruct. pParmStruct Entrada. Puntero a la estructura db2XaListIndTransStruct. pSqlca Salida. Puntero hacia la estructura sqlca. Para obtener más información sobre esta estructura, consulte el manual Administrative API Reference. piIndoubtData Entrada. Puntero hacia el almacenamiento intermedio suministrado de la aplicación donde se devolverán datos dudosos. Los datos dudosos están en formato db2XaRecoverStruct. La aplicación puede atravesar la lista de transacciones dudosas utilizando el tamaño de la estructura db2XaRecoverStruct, empezando en la dirección proporcionada por este parámetro. Si el valor es NULL, DB2 calculará el tamaño del almacenamiento intermedio necesario y devolverá este valor en oReqBufferLen. oNumIndoubtsTotal contendrá el número total de transacciones dudosas. La aplicación puede asignar el tamaño de almacenamiento intermedio necesario y volver a emitir la API. oNumIndoubtsReturned Salida. El número de registros de transacciones dudosas que se devuelven en el almacenamiento intermedio especificado por pIndoubtData. oNumIndoubtsTotal Salida. El Número total de registros de transacciones dudosas disponibles en el momento de la invocación de API. Si el almacenamiento intermedio piIndoubtData es demasiado pequeño para contener todos los registros, oNumIndoubtsTotal será mayor que el total para oNumIndoubtsReturned. La aplicación puede volver a emitir la API a fin de obtener todos los registros. Nota: Este número puede cambiar entre invocaciones de la API como resultado de la resincronización automática o heurística de transacciones dudosas o como resultado de otras transacciones que pasan al estado de dudosas. oReqBufferLen Salida. Longitud de almacenamiento intermedio necesario para contener todos los registros de transacciones dudosas en el momento de la invocación de la API. La aplicación puede utilizar este valor para determinar el tamaño de almacenamiento intermedio necesario llamando a la API con pIndoubtData establecido en NULL. A continuación, este valor se puede utilizar para asignar el almacenamiento intermedio necesario y la API se puede emitir con pIndoubtData establecido en la dirección del almacenamiento intermedio asignado. Nota: El tamaño de almacenamiento intermedio necesario puede cambiar entre invocaciones de la API como resultado de la resincronización automática o heurística de transacciones dudosas o como resultado de otras transacciones que pasan al estado de dudosas. La aplicación puede asignar un almacenamiento intermedio más grande para ajustarse a ello. timestamp Salida. Especifica la hora en que la transacción ha pasado al estado de dudoso. xid Salida. Especifica el identificador XA asignado por el gestor de transacciones para identificar exclusivamente una transacción global. dbalias Salida. Especifica el alias de la base de datos en la que se ha encontrado la transacción dudosa. applid Salida. Especifica el identificador de aplicación asignado por el gestor de bases de datos para esta transacción. sequence_no Salida. Especifica el número de secuencia asignado por el gestor de bases de datos como una extensión de applid. auth_id Salida. Especifica el ID de autorización del usuario que ha ejecutado la transacción. log_full Salida. Indica si la transacción ha causado o no una condición de anotación cronológica completa. Los valores válidos son: SQLXA_TRUE Esta transacción dudosa ha causado una condición de anotación cronológica completa. SQLXA_FALSE Esta transacción dudosa no ha causado una condición de anotación cronológica completa. connected Salida. Indica si la aplicación está o no conectada. Los valores válidos son: SQLXA_TRUE La transacción está en un proceso de punto de sincronismo normal y está esperando la segunda fase de la confirmación en dos fases. SQLXA_FALSE La transacción quedó en estado dudoso en una anomalía anterior y ahora espera resincronización desde el gestor de bases de datos. indoubt_status Salida. Indica el estado de esta transacción dudosa. Los valores válidos son: SQLXA_TS_PREP La transacción está preparada. El parámetro conectado se puede utilizar para determinar si la transacción espera la segunda fase de un proceso de confirmación normal o si se ha producido un error y es necesario resincronizar con el gestor de transacciones. SQLXA_TS_HCOM La transacción se ha confirmado heurísticamente. SQLXA_TS_HROL La transacción se ha retrotraído heurísticamente. SQLXA_TS_MACK Falta el reconocimiento de confirmación desde un nodo de una base de datos particionada para la transacción. SQLXA_TS_END La transacción ha finalizado en esta base de datos. Esta transacción se puede reactivar, confirmar o retrotraer más adelante. También es posible que el gestor de transacciones haya encontrado un error y la transacción no se completará. Si éste es el caso, esta transacción necesita acciones heurísticas dado que puede estar reteniendo bloqueos e impedir que otras aplicaciones accedan a los datos. Notas sobre uso Una aplicación típica realizará los pasos siguientes después de establecer la conexión actual con la base de datos o con el nodo coordinador de bases de datos particionadas: 1. Llame a db2XaListIndTrans con piIndoubtData establecido en NULL. Esta acción devolverá valores en oReqBufferLen y oNumIndoubtsTotal. 2. Utilice el valor que se devuelve en oReqBufferLen para asignar un almacenamiento intermedio. Es posible que este almacenamiento intermedio no sea suficientemente grande si existen transacciones dudosas adicionales debido a la invocación inicial de esta API para obtener oReqBufferLen. La aplicación puede proporcionar un almacenamiento intermedio más grande que oReqBufferLen. 3. Determine si se han obtenido todos los registros de transacciones dudosas. Puede llevarlo a cabo comparando oNumIndoubtsReturned con oNumIndoubtTotal. Si oNumIndoubtsTotal es mayor que oNumIndoubtsReturned, la aplicación puede repetir los pasos anteriores. Consulte también "sqlxhfrg - Olvidar estado de transacción", "sqlxphcm - Confirmar una transacción dudosa" y "sqlxphrl - Retrotraer una transacción dudosa" en el manual Administrative API Reference. ------------------------------------------------------------------------ 33.8 db2GetSnapshot - Obtener instantánea La sintaxis para la API db2GetSnapshot debe ser la siguiente: int db2GetSnapshot( unsigned char version; db2GetSnapshotData *data, struct sqlca *sqlca); Los parámetros descritos en los datos son: typedef struct db2GetSnapshotData{ sqlma *piSqlmaData; sqlm_collected *poCollectedData void *poBuffer; db2uint32 iVersion; db2int32 iBufferSize; db2uint8 iStoreResult; db2uint16 iNodeNumber; db2uint32 *poOutputFormat; }db2GetSnapshotData; ------------------------------------------------------------------------ 33.9 Forget Log Record La siguiente información se añadirá al Apéndice F después de la sección de preparación de subordinado MPP. Este registro de anotación cronológica se graba después de una retrotracción de transacciones dudosas o tras una confirmación de una confirmación en dos fases. El registro de anotación cronológica se graba para marcar el final de la transacción y libera los recursos de anotación cronológica mantenidos. Para que se olvide la transacción, debe estar en estado completado heurísticamente. Tabla 6. Estructura de Forget Log Record Descripción Tipo Offset (Bytes) Log header LogManagerLogRecordHeader 0(20) time sqluint64 20(8) Longitud total: 28 bytes ------------------------------------------------------------------------ 33.10 sqlaintp - Obtener mensaje de error La nota de uso siguiente debe añadirse a la descripción de esta API: En una aplicación de múltiples hebras, sqlaintp debe conectarse a un contexto válido; de lo contrario, no se puede obtener el texto del mensaje para SQLCODE -1445. ------------------------------------------------------------------------ 33.11 sqlbctcq - Cerrar consulta de contenedor de espacio de tabla La carga no es un nivel de autorización válido para esta API. ------------------------------------------------------------------------ 33.12 sqleseti - Establecer información de cliente Los registros especiales de SQL también puede acceder a los valores de datos proporcionados con la API. Los valores contenidos en estos registros se almacenan en la página de códigos de la base de datos. Los valores de datos proporcionados con esta API se convierten a la página de códigos de la base de datos antes de almacenarlos en los registros especiales. Cualquier valor de datos que supere el tamaño máximo soportado después de su conversión a la página de códigos de la base de datos, se truncará antes de almacenarlo en el servidor. Los registros especiales devolverán estos valores truncados. Los valores de datos originales también se almacenarán en el servidor y no se convertirán a la página de códigos de la base de datos. Se pueden devolver los valores no convertidos invocando a la API sqleqryi. ------------------------------------------------------------------------ 33.13 sqlubkp - Copia de seguridad de la base de datos Para el parámetro BackupType, el valor SQLUB_FULL se sustituirá por SQLUB_DB. Se realizará una copia de seguridad de todos los espacios de tabla de la base de datos. Para dar soporte a la nueva funcionalidad de copia de seguridad incremental, también se añadirán los parámetros SQLUB_INCREMENTAL y SQLUB_DELTA. Una imagen de copia de seguridad incremental es una copia de todos los datos de base de datos que han cambiado desde la copia de seguridad completa más reciente que ha sido satisfactoria. Una imagen de copia de seguridad delta es una copia de todos los datos de base de datos que han cambiado desde la copia de seguridad más reciente de cualquier tipo que ha sido satisfactoria. ------------------------------------------------------------------------ 33.14 sqlureot - Reorganizar tabla Se añadirá la frase siguiente a las Notas sobre el uso: REORGANIZE TABLE no puede utilizar un índice que está basado en una extensión de índice. ------------------------------------------------------------------------ 33.15 sqlurestore - Restaurar base de datos Para el parámetro RestoreType, el valor SQLUD_FULL se sustituirá por SQLUD_DB. Se realizará una restauración de todos los espacios de tabla de la base de datos. Esto se ejecutará fuera de línea. Para dar soporte a la nueva funcionalidad de restauración incremental, también se añadirá el parámetro SQLUD_INCREMENTAL. Una imagen de copia de seguridad incremental es una copia de todos los datos de base de datos que han cambiado desde la copia de seguridad completa más reciente que ha sido satisfactoria. ------------------------------------------------------------------------ 33.16 Error de documentación sobre el soporte de memoria compartida ampliada AIX (EXTSHM) En el "Apéndice E. Aplicaciones enhebradas con acceso simultáneo", la Nota 2 debería expresar en este momento: 2. Por omisión, AIX no permite que las aplicaciones de 32 bits conecten más de 11 segmentos de memoria compartida, de los que se puede utilizar un máximo de 10 para conexiones DB2 locales. Para utilizar EXTSHM con DB2, haga lo siguiente: En sesiones cliente: export EXTSHM=ON Cuando inicie el servidor DB2: export EXTSHM=ON db2set DB2ENVLIST=EXTSHM db2start En EEE, añada también las siguientes líneas a sqllib/db2profile: EXTSHM=ON export EXTSHM ------------------------------------------------------------------------ 33.17 SQLFUPD 33.17.1 locklist El nombre del símbolo ha cambiado de SQLF_DBTN_LOCKLIST a SQLF_DBTN_LOCK_LIST. El parámetro locklist ha cambiado de SMALLINT a un INTEGER (entero) no firmado de 64 bits. Debe realizarse la suma siguiente en la tabla de Parámetros de configuración de base de datos actualizables. Nombre de Símbolo Valor del símbolo Tipo de datos parámetro locklist SQLF_DBTN_LOCK 704 Uint64 _LIST El nuevo valor máximo para este parámetro es 524 288. Adicionalmente, en el "Capítulo 3. Estructuras de datos", la Tabla 53. Parámetros de configuración de la base de datos actualizable lista incorrectamente el valor de señal para dbheap como 701. El valor correcto es 58. ------------------------------------------------------------------------ 33.18 SQLEDBDESC Se añadirán dos valores a la lista de valores válidos para SQLDBCSS (se definen en sqlenv). Son: SQL_CS_SYSTEM_NLSCHAR Orden de clasificación del sistema que utiliza la versión NLS de rutinas de comparación para tipos de caracteres. SQL_CS_USER_NLSCHAR Orden de clasificación del usuario que utiliza la versión NLS de rutinas de comparación para tipos de caracteres. ------------------------------------------------------------------------ Application Building Guide ------------------------------------------------------------------------ 34.1 Actualización disponible Se ha actualizado el manual Application Building Guide y el último PDF está disponible para bajarlo en línea desde http://www.ibm.com/software/data/db2/udb/winos2unix/support. Toda la documentación actualizada también está disponible en CD. Se puede solicitar dicho CD a través del servicio de DB2 y utilizando el número de PTF U478862. Puede encontrar información sobre cómo entrar en contacto con el Servicio de DB2 en http://www.ibm.com/cgi-bin/db2www/data/db2/udb/winos2unix/support/help.d2w/report . ------------------------------------------------------------------------ Application Development Guide ------------------------------------------------------------------------ 35.1 Actualización disponible Se ha actualizado el manual Application Development Guide y el último PDF está disponible para bajarlo en línea desde http://www.ibm.com/software/data/db2/udb/winos2unix/support. La información contenida en estas notas es adicional a la consulta actualizada. Toda la documentación actualizada también está disponible en CD. Se puede solicitar dicho CD a través del servicio de DB2 y utilizando el número de PTF U478862. Puede encontrar información sobre cómo entrar en contacto con el Servicio de DB2 en http://www.ibm.com/cgi-bin/db2www/data/db2/udb/winos2unix/support/help.d2w/report . ------------------------------------------------------------------------ 35.2 IBM OLE DB Provider para DB2 UDB Para obtener más información sobre la utilización de IBM OLE DB Provider para DB2, consulte http://www.ibm.com/software/data/db2/udb/ad/v71/oledb.html. ------------------------------------------------------------------------ CLI Guide and Reference ------------------------------------------------------------------------ 36.1 Vinculación de programas de utilidad de bases de datos utilizando el Cliente de tiempo de ejecución El Cliente de tiempo de ejecución no se puede utilizar para vincular los programas de utilidad de bases de datos (import, export, reorg, el procesador de línea de mandatos) ni los archivos de vinculación de CLI de DB2 para cada base de datos antes de utilizarlos con la base de datos. En su lugar se debe utilizar DB2 Administration Client o DB2 Application Development Client. Debe vincular estos programas de utilidad de bases de datos y los archivos de vinculación de la CLI de DB2 a cada base de datos para poderlos utilizar con la base de datos. En un entorno de red, si utilizan varios clientes que se ejecutan en sistemas operativos distintos, o que corresponden a versiones o niveles de servicio de DB2 distintos, debe vincular los programas de utilidad una vez para cada combinación de sistema operativo y versión de DB2. ------------------------------------------------------------------------ 36.2 Utilización de SQL estático en aplicaciones de la CLI Para obtener más información sobre cómo utilizar SQL estático en aplicaciones de la CLI, consulte la página Web en: http://www.ibm.com/software/data/db2/udb/staticcli/ ------------------------------------------------------------------------ 36.3 Limitaciones de perfil estático JDBC/ODBC/CLI El perfil estático JDBC/ODBC/CLI actualmente está destinado a aplicaciones sencillas. No está pensado para aplicaciones complejas con muchos componentes funcionales y una lógica compleja de programa durante la ejecución. Una sentencia SQL debe haberse ejecutado satisfactoriamente para que se pueda capturar en una sesión de perfil. En una sesión de comparación de sentencias, las sentencias dinámicas que no coincidan se continuarán ejecutando como llamadas JDBC/ODBC/CLI dinámicas. Una sentencia SQL debe ser idéntica carácter por carácter con la que se ha capturado y vinculado para ser una candidata válida para la comparación de sentencias. Los espacios son significativos: por ejemplo, "COL = 1" se considera diferente de "COL=1". Utilice marcadores de parámetros en lugar de literales para mejorar los aciertos de comparación. Cuando se ejecuta una aplicación con sentencias de SQL estático previamente vinculadas, los registros dinámicos que controlan el funcionamiento de las sentencias dinámicas no tendrán ningún efecto sobre las sentencias que se conviertan a estáticas. Si una aplicación emite sentencias DDL para objetos a los que se hace referencia en sentencias DML subsiguientes, encontrará todas estas sentencias en el archivo de captura. La Herramienta de vinculación de perfil estático JDBC/ODBC/CLI intentará vincularlas. El intento de vinculación será satisfactorio con los DBMS que soporten la opción de vinculación VALIDATE(RUN), pero fallará con las que no la soporten. En este caso, la aplicación no debe utilizar Perfil estático. El Administrador de bases de datos puede editar el archivo de captura para añadir, cambiar o eliminar sentencias de SQL, basándose en los requisitos específicos de la aplicación. ------------------------------------------------------------------------ 36.4 Transformaciones de ADT La información siguiente sustituye a la información existente en la publicación. * Hay un nuevo tipo de descriptor (smallint) SQL_DESC_USER_DEFINED_TYPE_CODE, con los valores: SQL_TYPE_BASE 0 (no es un USER_DEFINED_TYPE) SQL_TYPE_DISTINCT 1 SQL_TYPE_STRUCTURED 2 Este valor se puede consultar con SQLColAttribute o SQLGetDescField (sólo IRD). Se añaden los atributos siguientes para obtener los nombres de tipo reales: SQL_DESC_REFERENCE_TYPE SQL_DESC_STRUCTURED_TYPE SQL_DESC_USER_TYPE Los valores anteriores se pueden consultar utilizando SQLColAttribute o SQLGetDescField (sólo IRD). * Añadir SQL_DESC_BASE_TYPE en caso de que la aplicación lo necesite. Por ejemplo, es posible que la aplicación no reconozca el tipo estructurado pero pretenda captarlo o insertarlo y dejar que otro código se ocupe de los detalles. * Añadir un nuevo atributo de conexión llamado SQL_ATTR_TRANSFORM_GROUP para permitir que una aplicación establezca el grupo de transformaciones (en lugar de utilizar la sentencia "SET CURRENT DEFAULT TRANSFORM GROUP" de SQL). * Añadir una nueva sentencia/atributo de conexión llamado SQL_ATTR_RETURN_USER_DEFINED_TYPES que se pueda establecer o consultar utilizando SQLSetConnectAttr, que hace que la CLI devuelva el valor SQL_DESC_USER_DEFINED_TYPE_CODE como Tipo de SQL válido. Este atributo es necesario antes de utilizar cualquiera de las transformaciones. o Por omisión, el atributo está desactivado y hace que se devuelva la información de tipo base como tipo de SQL. o Si está habilitado, se devolverá SQL_DESC_USER_DEFINED_TYPE_CODE como SQL_TYPE. Es de esperar que la aplicación compruebe SQL_DESC_USER_DEFINED_TYPE_CODE y, a continuación, recupere el nombre de tipo apropiado. Esto estará disponible para SQLColAttribute, SQLDescribeCol y SQLGetDescField. * SQLBindParameter no produce un error cuando se vincula SQL_C_DEFAULT, puesto que no hay código que permita que SQLBindParameter especifique el tipo SQL_USER_DEFINED_TYPE. Se utilizarán los tipos de C por omisión estándares, en base al tipo de SQL base emitido al servidor. Por ejemplo: sqlrc = SQLBindParameter (hstmt, 2, SQL_PARAM_INPUT, SQL_C_CHAR, SQL_VARCHAR, 30, 0, &c2, 30, NULL); ------------------------------------------------------------------------ 36.5 Capítulo 1. Introducción a la CLI 36.5.1 Diferencias entre la CLI de DB2 y el SQL incorporado Haga caso omiso del tercer elemento a contar desde el final de la lista del apartado "Ventajas de utilizar la CLI de DB2". La información correcta es la siguiente: La CLI de DB2 brinda la posibilidad de recuperar varias filas y conjuntos de resultados generados por un procedimiento almacenado que reside en un servidor DB2 Universal Database, en un servidor DB2 para MVS/ESA (Versión 5 o posteriores) o en un servidor OS/400 (Versión 5 o posteriores). Para que se soporte la recuperación de varios conjuntos de resultados en OS/400, es precisa la aplicación del PTF (Arreglo temporal del programa) SI01761 al servidor. Para asegurarse de que se ha aplicado dicho PTF, póngase en contacto con el administrador del sistema OS/400. ------------------------------------------------------------------------ 36.6 Capítulo 3. Utilización de características avanzadas 36.6.1 Cómo escribir aplicaciones de varias hebras Se debe añadir lo siguiente al final de la sección "Aplicaciones mixtas de varias hebras": Nota: Se recomienda no utilizar el tamaño de pila por omisión, sino aumentar el tamaño de pila a al menos 256.000. DB2 necesita un tamaño mínimo de pila de 256.000 cuando llama a una función de DB2. Por lo tanto, debe asegurarse de asignar un tamaño total de pila suficientemente grande para la aplicación y los requisitos mínimos para una llamada a una función de DB2. 36.6.2 Escritura de una aplicación Unicode de DB2 CLI A continuación se muestra una sección nueva para este capítulo: Hay dos áreas principales de soporte para las aplicaciones Unicode de DB2 CLI: 1. La incorporación de un conjunto de funciones que puedan aceptar argumentos de serie Unicode en vez de los argumentos de serie ANSI. 2. La incorporación de tipos de datos C y SQL nuevos para describir datos como datos ANSI o Unicode. Las secciones siguientes proporcionan más información sobre ambas áreas. Para que una aplicación se considere una aplicación Unicode, la aplicación debe establecer el atributo de conexión SQL_ATTR_ANSI_APP en SQL_AA_FALSE, antes de efectuar una conexión. Esta acción asegurará que CLI se conectará como cliente de Unicode y que todos los datos de Unicode se enviarán en UTF-8 para datos CHAR o en UCS-2 para datos GRAPHIC. 36.6.2.1 Funciones de Unicode A continuación se muestra una lista de las funciones API ODBC que dan soporte tanto a las versiones de Unicode (W) como a las de ANSI (A) (el nombre de función tendrá una W para Unicode): SQLBrowseConnect SQLForeignKeys SQLPrimaryKeys SQLColAttribute SQLGetConnectAttr SQLProcedureColumns SQLColAttributes SQLGetConnectOption SQLProcedures SQLColumnPrivileges SQLGetCursorName SQLSetConnectAttr SQLColumns SQLGetDescField SQLSetConnectOption SQLConnect SQLGetDescRec SQLSetCursorName SQLDataSources SQLGetDiagField SQLSetDescField SQLDescribeCol SQLGetDiagRec SQLSetStmtAttr SQLDriverConnect SQLGetInfo SQLSpecialColumns SQLDrivers SQLGetStmtAttr SQLStatistics SQLError SQLNativeSQL SQLTablePrivileges SQLExecDirect SQLPrepare SQLTables Las funciones Unicode que siempre devuelven o adoptan argumentos de longitud de serie se pasan como número de caracteres. Para las funciones que devuelven información de longitud para los datos de servidor, el tamaño y la precisión de la visualización se describen en números de caracteres. Cuando una longitud (tamaño de transferencia de los datos) puede hacer referencia a una serie o a datos que no sean una serie, la longitud se describe en longitudes de octeto. Por ejemplo, SQLGetInfoW siempre adoptará la longitud como número de bytes, pero SQLExecDirectW utilizará número de caracteres. CLI devolverá conjuntos de resultados en Unicode o ANSI, en función de la vinculación de la aplicación. Si una aplicación se vincula a SQL_C_CHAR, el controlador convertirá datos SQL_WCHAR en SQL_CHAR. El gestor de controladores correlaciona SQL_C_WCHAR con SQL_C_CHAR para controladores ANSI pero no efectúa correlación alguna para controladores Unicode. 36.6.2.2 Tipos de datos nuevos y conversiones válidas Hay dos tipos de datos definidos CLI o ODBC nuevos, SQL_C_WCHAR y SQL_WCHAR. SQL_C_WCHAR indica que el almacenamiento intermedio C contiene datos UCS-2. SQL_WCHAR indica que una columna o marcador de parámetros en concreto contiene datos Unicode. Para los DB2 Unicode Servers, las columnas gráficas se describirán como SQL_WCHAR. Se permitirá la conversión entre SQL_C_WCHAR y SQL_CHAR, SQL_VARCHAR, SQL_LONGVARCHAR y SQL_CLOB, así como entre los tipos de datos gráficos. Tabla 7. Conversiones de datos soportadas S S Q Q L S S L _ Q Q _ C L L C S S _ _ _ _ Q Q T C C D S L L Y _ _ B S Q S _ _ P S S C B C S Q S S L S Q C C E Q Q L L L Q L S Q S Q _ Q L _ _ _ L L O O O L _ Q L Q L C L _ T T T _ S _ B B B _ C L _ L _ _ _ C Y Y I C Q C _ _ _ C _ _ C _ C T C _ P P M _ L _ L L L _ N C _ C _ I _ D E E E B _ D O O O B U _ W _ S N F O _ _ S I C B C C C I M C C L H Y L U D T T N _ C A A A G E H H O O I O B A I A A B H T T T I R A A N R N A L T M M R I A O O O N I Tipo de datos SQL R R G T T T E E E P Y T R R R R T C BLOB X X D X CHAR D X X X X X X X X X X X X X CLOB D X X X DATE X X D X DBCLOB X X D X DECIMAL D X X X X X X X X X X DOUBLE X X X X X X D X X X FLOAT X X X X X X D X X X GRAPHIC X X D (No Unicode) GRAPHIC X X X X X X X X X X X X D X (Unicode) INTEGER X X D X X X X X X X LONG D X X VARCHAR LONG X X X D VARGRAPHIC (No Unicode) LONG X X X D VARGRAPHIC (Unicode) NUMERIC D X X X X X X X X REAL X X X X X D X X X SMALLINT X X X D X X X X X X BIGINT X X X X X X X X X D X TIME X X D X TIMESTAMP X X X X D VARCHAR D X X X X X X X X X X X X X VARGRAPHIC X X D (No Unicode) VARGRAPHIC X X X X X X X X X X X X D X (Unicode) Nota: D La conversión está soportada. Este es el valor por omisión para el tipo de datos SQL. X Todos los DBMS de IBM dan soporte a la conversión. blanco Ningún DBMS de IBM da soporte a la conversión. o Los datos no se convierten en tipos de Localizador de LOB, en vez de eso, los localizadores representan un valor de datos, para obtener más información consulte Utilización de objetos grandes. o SQL_C_NUMERIC sólo está disponible en sistemas operativos Windows de 32 bits. 36.6.2.3 Valor de palabra clave/parche obsoleto Antes de que se diera soporte a las aplicaciones Unicode, podía conseguirse que las aplicaciones que se habían escrito para que funcionaran con datos de tipo carácter de un solo byte funcionaran con datos gráficos de doble byte por medio de una serie de palabras clave de archivo cli ini, como por ejemplo GRAPHIC=1,2 ó 3, Patch2=7. Estas soluciones temporales presentaban los datos gráficos como datos de tipo carácter y, asimismo afectaban a la longitud comunicada de los datos. Dichas palabras clave ya no son necesarias para las aplicaciones Unicode y no deberían utilizarse debido al riesgo de los efectos colaterales potenciales. Si no se sabe si una determinada aplicación es una aplicación Unicode, le recomendamos que pruebe sin ninguna de las palabras clave que afectan al manejo de datos gráficos. 36.6.2.4 Literales en bases de datos Unicode En bases de datos no Unicode, los datos de las columnas LONG VARGRAPHIC y LONG VARCHAR no pueden compararse. Los datos de las columnas GRAPHIC/VARGRAPHIC y CHAR/VARCHAR sólo puede compararse, o asignarse los unos a los otros, utilizando funciones cast explícitas, ya que no existe soporte de conversión de páginas de códigos implícita. Esto incluye a los literales GRAPHIC/VARGRAPHIC y CHAR/VARCHAR en los que un literal GRAPHIC/VARGRAPHIC se diferencia de un literal CHAR/VARCHAR por medio de un prefijo G. Para bases de datos Unicode, no se necesita la difusión entre literales GRAPHIC/VARGRAPHIC y CHAR/VARCHAR. Tampoco se necesita un prefijo G delante de un literal GRAPHIC/VARGRAPHIC. Se producirán conversiones implícitas, siempre que como mínimo uno de los argumentos sea un literal. Esto permite que los literales con o sin el prefijo G se utilicen dentro de las sentencias que utilizan SQLPrepareW() o SQLExecDirect(). Los literales para LONG VARGRAPHIC deben tener el prefijo G. Para obtener más información, consulte el apartado "Difusión entre tipos de datos" del "Capítulo 3. Elementos de lenguaje" del manual Consulta de SQL. 36.6.2.5 Nuevas palabras clave de configuración de CLI Se han añadido las tres palabras clave siguientes para evitar exceso de carga cuando las aplicaciones Unicode se conecten a una base de datos. 1. DisableUnicode Descripción de la palabra clave: Inhabilita el soporte subyacente de Unicode. Sintaxis de las palabras clave de db2cli.ini: DisableUnicode = 0 | 1 Valor por omisión: 0 (falso) Pestaña Valores de CLI/ODBC de DB2: Esta palabra clave no puede establecerse utilizando el cuaderno Valores de CLI/ODBC. Para hacer uso de esta palabra clave, se debe modificar directamente el archivo db2cli.ini. Notas de uso: Una vez habilitado el soporte de Unicode, y si una aplicación Unicode la llama, la CLI intentará conectarse a la base de datos utilizando la mejor página de códigos de cliente posible, para asegurarse de que no se produzca una pérdida de datos innecesaria debido a la conversión de página de códigos. Es posible que esto prolongue el tiempo de conexión debido al intercambio de páginas de códigos, o que ocasione en el cliente conversiones de páginas de códigos que no se producían antes de añadir el soporte. Si esta palabra clave se establece en True (Verdadero), todos los datos Unicode se convertirán a la página de códigos local de la aplicación antes de que se envíen los datos al servidor. Es posible que esto provoque una pérdida de datos que no puedan representarse en la página de códigos local. 2. ConnectCodepage Descripción de la palabra clave: Especifica una página de códigos específica que deberá utilizarse al conectarse a la fuente de datos para evitar que se produzca una actividad general de conexión extra. Sintaxis de las palabras clave de db2cli.ini: ConnectCodepage = 0 | 1 Valor por omisión: 0 Pestaña Valores de CLI/ODBC de DB2: Esta palabra clave no puede establecerse utilizando el cuaderno Valores de CLI/ODBC. Para utilizar esta palabra clave, el archivo db2cli.ini debe modificarse directamente. Notas de uso: Las aplicaciones no Unicode siempre se conectan a la base de datos utilizando la página de códigos local de la aplicación o el valor de entorno DB2Codepage. Por omisión, la CLI se asegurará de que las aplicaciones Unicode se conecten a bases de datos Unicode utilizando páginas de códigos UTF-8 y UCS-2, así como de que se conecten a bases de datos que no sean Unicode utilizando la página de códigos de la base de datos. Esto garantiza que no se produzcan pérdidas de datos innecesarias debido a la conversión de páginas de códigos. Esta palabra clave permite al usuario especificar la página de códigos de la base de datos cuando se conecta a una base de datos que no es Unicode, a fin de evitar que se produzca una actividad general extra en la conexión. Especifique un valor de 1 para que SQLDriverConnect() devuelva el valor correcto en la serie de conexión de salida, de modo que el valor pueda utilizarse en futuras llamadas de SQLDriverConnect(). 3. UnicodeServer Descripción de la palabra clave: Indica que la fuente de datos es un servidor Unicode. Equivale a establecer ConnectCodepage=1208. Sintaxis de las palabras clave de db2cli.ini: UnicodeServer = 0 | 1 Valor por omisión: 0 Pestaña Valores de CLI/ODBC de DB2: Esta palabra clave no puede establecerse utilizando el cuaderno Valores de CLI/ODBC. Para hacer uso de esta palabra clave, se debe modificar directamente el archivo db2cli.ini. Notas de uso: Esta palabra clave equivale a ConnectCodepage=1208 y se añade únicamente por comodidad. Establezca esta palabra clave para evitar que se produzca actividad general extra al conectarse a DB2 para OS/390 Versión 7 o superior. No es necesario establecer esta palabra clave para bases de datos de DB2 para Windows, DB2 para Unix o DB2 para OS/2, ya que no requieren procesos adicionales. 36.6.3 Microsoft Transaction Server (MTS) como Supervisor de transacciones La línea siguiente corrige el valor por omisión de la palabra clave de configuración DISABLEMULTITHREAD en el subapartado "Instalación y configuración": * Palabra clave DISABLEMULTITHREAD (valor por omisión 0) 36.6.4 Cursores desplazables Debe añadirse la información siguiente a la sección "Cursores desplazables": 36.6.4.1 Soporte de cursor desplazable para OS/390 en el extremo del servidor El cliente UDB para las plataformas Unix, Windows y OS/2 da soporte a cursores desplazables en el extremo del servidor cuando se ejecutan frente bases de datos de OS/390 Versión 7. Para acceder a un cursor desplazable de OS/390 en un entorno de tres niveles, el cliente y la pasarela deben estar ejecutando DB2 UDB Versión 7.1, FixPak 3 o posterior. Hay dos interfaces de habilitación de aplicaciones que pueden acceder a los cursores desplazables: ODBC y JDBC. La interfaz JDBC sólo puede acceder a cursores desplazables estáticos, mientras que la interfaz ODBC puede acceder a cursores desplazables en el extremo del servidor estáticos y controlados por conjuntos de claves. Atributos del cursor La tabla siguiente lista los atributos por omisión para cursores de OS/390 Versión 7 en ODBC. Tabla 8. Atributos por omisión para cursores de OS/390 en ODBC Tipo de Sensibilidad Cursor Simultaneidad Cursor cursor del cursor actualizable del cursor desplazable sólo no no simultaneidad no desplazable reenvíoa especificada actualizable de sólo lectura estático no sensible no simultaneidad desplazable actualizable de sólo lectura controlado sensible actualizable simultaneidad desplazable por de valores conjunto de claves a Sólo reenvío es el comportamiento por omisión para un cursor desplazable sin la cláusula FOR UPDATE. La especificación de FOR UPDATE en un cursor de sólo reenvío crea un cursor actualizable, de bloqueo de simultaneidad y no desplazable. Orientaciones de captación soportadas Se da soporte a todas las orientaciones de captación de ODBC mediante las interfaces SQLFetchScroll o SQLExtendedFetch. Actualización del cursor controlado por conjunto de claves Un cursor controlado por conjunto de claves es un cursor actualizable. El controlador de CLI añade la cláusula FOR UPDATE a la consulta, excepto cuando se emite la consulta como consulta SELECT ... FOR READ ONLY o si la cláusula FOR UPDATE ya existe. El cursor controlado por conjunto de claves implementado en DB2 para OS/390 es un cursor de simultaneidad de valores. Un cursor de simultaneidad de valores ocasiona el bloqueo optimista, en el que no se mantienen los bloqueos hasta que se intenta llevar a cabo una actualización o supresión. Cuando se intenta realizar una actualización o supresión, el servidor de bases de datos compara los valores anteriores que la aplicación ha recuperado con los valores actuales de la tabla subyacente. Si los valores coinciden, la actualización o supresión es satisfactoria. Si los valores no coinciden, la operación es anómala. Si se produce una anomalía, la aplicación deberá consultar de nuevo los valores y volver a emitir la actualización o supresión si todavía es aplicable. Una aplicación puede actualizar un cursor controlado por conjunto de claves de dos formas: * Emita UPDATE WHERE CURRENT OF "" o DELETE WHERE CURRENT OF "" utilizando SQLPrepare() con SQLExecute() o SQLExecDirect(). * Utilice SQLSetPos() o SQLBulkOperations() para actualizar, suprimir o añadir una fila al conjunto de resultados. Nota: Las filas añadidas a un resultado establecidas por medio de SQLSetPos() o SQLBulkOperations() se insertan en la tabla del servidor, pero no se añaden al conjunto de resultados del servidor. Por lo tanto, estas filas no son actualizables ni son sensibles a los cambios efectuados por otras transacciones. Las filas insertadas parecerán, sin embargo, formar parte del conjunto de resultados, ya que se almacenan en antememoria en el cliente. Los activadores que se apliquen a las filas insertadas aparecerán ante la aplicación como si no se hubiesen aplicado. Para hacer que las filas insertadas sean actualizables, sensibles y para ver el resultado de los activadores aplicables, la aplicación debe emitir la consulta de nuevo para volver a generar el conjunto de resultados. Resolución de problemas para aplicaciones creadas antes del soporte al cursor desplazable Puesto que el soporte a cursores desplazables es nuevo, algunas aplicaciones ODBC que funcionaban con releases anteriores de UDB para OS/390 o UDB para Unix, Windows, y OS/2 pueden encontrar cambios de comportamiento de rendimiento. Esto sucede debido a que antes de que se diese soporte a los cursores desplazables, las aplicaciones que solicitaban un cursor desplazable recibían un cursor de sólo reenvío. Para restaurar el comportamiento anterior de una aplicación de antes del soporte a cursores desplazables, establezca la siguientes palabras clave de configuración en el archivo db2cli.ini: Tabla 9. Valores de palabras clave de configuración que restauran el comportamiento de una aplicación anterior al soporte a cursores desplazables Valor de palabra clave de Descripción configuración PATCH2=6 Devuelve un mensaje que indica que no se da soporte a los cursores desplazables (tanto controlados por conjunto de claves como estáticos). CLI degrada automáticamente cualquier petición de cursor desplazable a cursor de sólo reenvío. DisableKeysetCursor=1 Inhabilita los cursores desplazables controlados por conjunto de claves del extremo del servidor y del extremo del cliente. Esto puede utilizarse para forzar al controlador CLI a dar a la aplicación un cursor estático cuando se solicita un cursor controlado por conjunto de claves. UseServerKeysetCursor=0 Inhabilita el cursor controlado por conjunto de claves del extremo del servidor para aplicaciones que utilizan la biblioteca de cursores controlados por conjunto de claves del extremo del cliente para simular un cursor controlado por conjunto de claves. Utilice esta opción únicamente cuando aparezcan problemas con el cursor controlado por conjunto de claves del extremo del servidor, puesto que el cursor del extremo del cliente asume una gran cantidad de actividad general y, normalmente, tendrá un rendimiento menor que un cursor del extremo del servidor. 36.6.5 Utilización de SQL compuesto Falta la nota siguiente en el manual: Cualquier sentencia SQL que se pueda preparar dinámicamente, que no sea una consulta, se puede ejecutar como una sentencia dentro de una sentencia compuesta. Nota: Dentro de Atomic Compound SQL, tampoco están permitidas las sentencias SQL savepoint, release savepoint ni rollback to savepoint. Y, a la inversa, no está permitido Atomic Compound SQL en savepoint. 36.6.6 Utilización de procedimientos almacenados 36.6.6.1 Escritura de un procedimiento almacenado en CLI A continuación se proporciona una limitación no documentada para los procedimientos almacenados de CLI: Si está realizando llamadas a varios procedimientos almacenados de CLI la aplicación debe cerrar los cursores abiertos desde un procedimiento almacenado antes de llamar al siguiente procedimiento almacenado. Más específicamente, debe cerrarse el primer conjunto de cursores abiertos antes de que el siguiente procedimiento almacenado intente abrir un cursor. 36.6.6.2 Procedimientos almacenados de CLI y vinculación automática Lo siguiente complementa la información del manual: El controlador de CLI/ODBC normalmente vinculará automáticamente los paquetes de CLI la primera vez que una aplicación CLI/ODBC ejecute SQL en la base de datos, siempre que el usuario tenga el privilegio o autorización adecuados. La vinculación automática de los paquetes de CLI no puede realizarse desde el interior de un procedimiento almacenado y, por lo tanto, no se realizará si lo primero que hace una aplicación es llamar a un procedimiento almacenado de CLI. Antes de ejecutar una aplicación de CLI que llame a un procedimiento almacenado de CLI en una base de datos de DB2 nueva, debe vincular los paquetes de CLI una vez con este mandato: UNIX db2 bind /@db2cli.lst blocking all Windows y OS/2 db2bind "%DB2PATH%\bnd\@db2cli.lst" blocking El enfoque recomendado consiste en vincular siempre estos paquetes cuando se crea la base datos para evitar la vinculación automática en tiempo de ejecución. La vinculación automática puede fallar si el usuario no tiene el privilegio o si otra aplicación intenta realizar la vinculación automática al mismo tiempo. ------------------------------------------------------------------------ 36.7 Capítulo 4. Configuración de CLI/ODBC y ejecución de aplicaciones de ejemplo 36.7.1 Palabras clave de configuración Haga caso omiso del último párrafo de la palabra clave CURRENTFUNCTIONPATH. La información correcta es la siguiente: Esta palabra clave se utiliza como parte del proceso para resolver referencias a procedimientos almacenados y de función sin calificar que pueden haberse definido en un nombre de esquema distinto del esquema de usuario actual. El orden de los nombres de esquema determina el orden en que se resolverán los nombres de función y de procedimiento. Para obtener más información sobre resolución de procedimientos y funciones, consulte el manual Consulta de SQL. ------------------------------------------------------------------------ 36.8 Capítulo 5. Funciones de CLI de DB2 36.8.1 SQLBindFileToParam - Vincular referencia de archivo LOB a parámetro de LOB El último parámetro - IndicatorValue - de la función de CLI SQLBindFileToParam() se documenta actualmente como "salida (diferida)". Debe ser "entrada (diferida)". 36.8.2 SQLColAttribute -- Devolver un atributo de columna Las actualizaciones siguientes son añadidos a la columna "Descripción" de los argumentos SQL_DESC_AUTO_UNIQUE_VALUE y SQL_DESC_UPDATABLE: SQL_DESC_AUTO_UNIQUE_VALUE Se devuelve SQL_FALSE en NumericAttributePtr para todos los tipos de datos SQL de DB2. Actualmente, la CLI de DB2 no es capaz de determinar si una columna es de identidad, por lo que siempre se devuelve SQL_FALSE. Esta limitación no se ajusta por completo a las especificaciones de ODBC. Las versiones futuras de la CLI de DB2 para servidores Unix y Windows proporcionarán un soporte auto-exclusivo. SQL_DESC_UPDATABLE Indica si el tipo de datos de la columna se puede actualizar: o Se devuelve SQL_ATTR_READWRITE_UNKNOWN en NumericAttributePtr para todos los tipos de datos SQL de DB2. Se devuelve así porque, actualmente, la CLI de DB2 no es capaz de determinar si una columna se puede actualizar. Las versiones futuras de la CLI de DB2 para servidores Unix y Windows podrán determinar si una columna se puede actualizar. 36.8.3 SQLGetInfo - Obtener información general La información siguiente corrige la información contenida en la sección "Uso" del apartado "Información devuelta por SQLGetInfo": SQL_DATABASE_NAME (serie) Nombre de la base de datos en uso actualmente. Nota: Esta serie es igual que la devuelta por la sentencia SELECT CURRENT SERVER en los sistemas que no son un sistema principal. Para las bases de datos de sistema principal, como por ejemplo DB2 para OS/390 o DB2 para OS/400, la serie devuelta es el nombre de base de datos DCS proporcionado al emitir el mandato DCS DATABASE DIRECTORY en la pasarela de DB2 Connect. 36.8.4 SQLGetLength - Recuperar longitud del valor de una serie La información siguiente corrige la nota al pie de la "Tabla 113. Argumentos de SQLGetLength" : Nota: a Está en los caracteres para datos DBCLOB. 36.8.5 SQLNextResult - Asociar el conjunto de resultados siguiente con otro descriptor de contexto de sentencias Debería añadirse el texto siguiente al Capítulo 5, "Funciones CLI de DB2": 36.8.5.1 Objetivo Especificación: DB2 CLI 7.x 36.8.5.2 Sintaxis SQLRETURN SQLNextResult (SQLHSTMT StatementHandle1 SQLHSTMT StatementHandle2); 36.8.5.3 Argumentos de función Tabla 10. Argumentos de SQLNextResult Tipo de datosArgumento UtilizaciónDescripción SQLHSTMT StatementHandle entrada Descriptor de contexto de sentencias. SQLHSTMT StatementHandle entrada Descriptor de contexto de sentencias. 36.8.5.4 Utilización Un procedimiento almacenado devuelve varios conjuntos de resultados dejando uno o más cursores abiertos después de salir. Al primer conjunto de resultados se accede siempre utilizando el descriptor de contexto de sentencias que llamó al procedimiento almacenado. Si se devuelven varios conjuntos de resultados, puede utilizarse SQLMoreResults() o SQLNextResult() para describir y captar el conjunto de resultados. SQLMoreResults() se utiliza para cerrar el cursor para el primer conjunto de resultados y permitir que se procese el conjunto de resultados siguiente, en tanto que SQLNextResult() desplaza el siguiente conjunto de resultados a StatementHandle2, sin cerrar el cursor en StatementHandle1. Ambas funciones devuelven SQL_NO_DATA_FOUND si no hay conjuntos de resultados que haya que captar. La utilización de SQLNextResult() permite el proceso de los conjuntos de resultados en el orden que sea una vez se hayan transferido a otros descriptores de contexto de sentencias. Las llamadas mixtas a SQLMoreResults() y SQLNextResult() se permiten hasta que no haya más cursores (conjuntos de resultados abiertos) en StatementHandle1. Cuando SQLNextResult() devuelve SQL_SUCCESS, el conjunto de resultados siguiente ya no está asociado con StatementHandle1. En su lugar, el conjunto de resultados siguiente se asocia con StatementHandle2, como si una llamada a SQLExecDirect() hubiera acabado de ejecutar satisfactoriamente una consulta sobre StatementHandle2. Por tanto, el cursor puede describirse utilizando SQLNumResultSets(), SQLDescribeCol() o SQLColAttribute(). Una vez se ha llamado a SQLNextResult(), el conjunto de resultados que en este momento está asociado con StatementHandle2 se elimina de la cadena de conjuntos de resultados restantes y no podrá utilizarse de nuevo ni en SQLNextResult() ni en SQLMoreResults(). Esto significa que para 'n' conjuntos de resultados, SQLNextResult() puede llamarse satisfactoriamente como máximo 'n-1' veces. Si SQLFreeStmt() se llama con la opción SQL_CLOSE, o SQLFreeHandle() se llama con HandleType establecido en SQL_HANDLE_STMT, se descartan todos los conjuntos de resultados pendientes sobre este descriptor de contexto de sentencias. SQLNextResult() devuelve SQL_ERROR si StatementHandle2 tiene un cursor abierto o el caso de que StatementHandle1 y StatementHandle2 no estén en la misma conexión. Si se devuelve algún error o aviso, SQLError() debe llamarse siempre en StatementHandle1. Nota: SQLMoreResults() también funciona con una consulta parametrizada con una matriz de valores de parámetros de entrada especificados con SQLParamOptions() y SQLBindParameter(). Sin embargo, SQLNextResult() no da soporte a esta opción. 36.8.5.5 Códigos de retorno * SQL_SUCCESS * SQL_SUCCESS_WITH_INFO * SQL_STILL_EXECUTING * SQL_ERROR * SQL_INVALID_HANDLE * SQL_NO_DATA_FOUND 36.8.5.6 Diagnósticos Tabla 11. Los SQLSTATE de SQLNextResult SQLSTATE Descripción Explicación 40003 Anomalía de enlace de El enlace de comunicaciones entre la 08S01 comunicaciones. aplicación y la fuente de datos ha fallado antes de que se completara la función. 58004 Anomalía de sistema Error de sistema irrecuperable. inesperada. HY001 Anomalía de DB2 CLI no ha podido asignar la memoria asignación de necesaria para dar soporte a la ejecución memoria. o cumplimentación de la función. HY010 Error de secuencia de La función se ha llamado mientras estaba función. en una operación de datos al ejecutar (SQLParamData(), SQLPutData()). StatementHandle2 tiene un cursor abierto asociado al mismo. La función se llamó mientras estaba dentro de una operación BEGIN COMPOUND y END COMPOUND SQL. HY013 Error de manejo de DB2 CLI no ha podido acceder a la memoria memoria inesperado. necesaria para dar soporte a la ejecución o cumplimentación de la función. HYT00 Ha caducado el tiempo El tiempo de espera ha caducado antes de de espera excedido. que la fuente de datos devolviera el conjunto de resultados. Los tiempos de espera excedidos sólo están soportados en sistemas no multitarea como por ejemplo 3.1 y Macintosh System 7. El período de tiempo de espera puede establecerse utilizando el atributo SQL_ATTR_QUERY_TIMEOUT para SQLSetConnectAttr(). 36.8.5.7 Restricciones Para las consultas parametrizadas sólo puede utilizarse SQLMoreResults(). 36.8.5.8 Referencias * "SQLMoreResults - Determinar si hay más conjuntos de resultados" en la página 535 * "Cómo devolver conjuntos de resultados desde procedimientos almacenados" en la página 120 36.8.6 SQLSetStmtAttr -- Establecer opciones relativas a una sentencia La información siguiente sustituye la información existente para el atributo de sentencia SQL_ATTR_QUERY_TIMEOUT: SQL_ATTR_QUERY_TIMEOUT (DB2 CLI v2) Valor entero de 32 bits que es el número de segundos que se deberá esperar a que se ejecute una sentencia SQL antes de volver a la aplicación. Se puede establecer y utilizar esta opción para terminar las consultas de larga ejecución. El valor 0 significa que no hay tiempo de espera. La CLI de DB2 soporta valores distintos de cero para todas las plataformas que soportan multihebras. ------------------------------------------------------------------------ 36.9 Apéndice C. DB2 CLI y ODBC A continuación se muestra una sección nueva que se ha añadido a este apéndice: 36.9.1 Aplicaciones Unicode de ODBC Una aplicación Unicode de ODBC envía y recupera datos de tipo carácter fundamentalmente en UCS-2. Efectúa esta acción llamando a las versiones de Unicode de las funciones ODBC (aquéllas que tienen el sufijo 'W') e indicando los tipos de datos de Unicode. La aplicación no especifica una página de códigos local de modo explícito. La aplicación puede seguir llamando a las funciones ANSI y pasando las series de página de códigos local. Por ejemplo, la aplicación puede llamar a SQLConnectW() y pasar el DSN, ID de usuario y contraseña como argumentos de Unicode. A continuación, puede llamar a SQLExecDirectW(), pasar una serie de sentencia SQL de Unicode SQL y, después vincular una combinación de almacenamientos intermedios de página local ANSI (SQL_C_CHAR) y de almacenamientos intermedios Unicode (SQL_C_WCHAR). Los tipos de datos de base de datos pueden ser la página de códigos local o UCS-2 y UTF-8. Si una aplicación CLI llama a SQLConnectW o llama a SQLSetConnectAttr con SQL_ATTR_ANSI_APP establecido en SQL_AA_FALSE, se considera que la aplicación es una aplicación Unicode. Esto significa que todos los datos CHAR se envían y reciben desde la base de datos en formato UTF-8. A continuación, la aplicación puede captar datos CHAR en almacenamientos intermedios SQL_C_CHAR de la página de códigos local (con una posible pérdida de datos), o en almacenamientos intermedios SQL_C_WCHAR en UCS-2 sin pérdida de datos. Si la aplicación no efectúa ninguna de las dos llamadas anteriores, los datos CHAR se convierten a la página de códigos local de las aplicaciones del servidor. Lo cual significa que los datos CHAR que se captan en SQL_C_WCHAR pueden experimentar una pérdida de datos. Si la variable de instancia de DB2CODEPAGE se establece (utilizando db2set) en la página de códigos 1208 (UTF-8), la aplicación recibirá todos los datos CHAR en UTF-8 ya que ésta es ahora la página de códigos local. La aplicación debe asegurarse también de que todos los datos de entrada CHAR estén asimismo en UTF-8. ODBC asume asimismo que todos los datos SQL_C_WCHAR están en formato endian nativo. CLI efectuará la alternancia de bytes que se necesite para SQL_C_WCHAR. 36.9.1.1 Aplicaciones Unicode de ODBC frente a aplicaciones no Unicode de ODBC Este release de DB2 Universal Database contiene la API de SQLConnectW(). Un controlador Unicode debe exportar SQLConnectW para que el gestor de controladores lo reconozca como controlador Unicode. Es importante tener en cuenta que numerosas aplicaciones de ODBC (por ejemplo Microsoft Access y Visual Basic) llaman a SQLConnectW(). En los releases anteriores de DB2 Universal Database, DB2 CLI no daba soporte a esta API y, por tanto el gestor de controladores de ODBC no lo reconocía como controlador Unicode. Esto hacía que el gestor de controladores de ODBC convirtiera todos los datos de Unicode a la página de códigos local de la aplicación. Con el soporte añadido de la función SQLConnectW(), estas aplicaciones se convertirán ahora en aplicaciones Unicode y DB2 CLI asumirá todas las conversiones de datos necesarias. DB2 CLI acepta en este momento las API de Unicode (con un sufijo de "W") y las API de ANSI habituales. ODBC define un conjunto de funciones con un sufijo de "A", pero el gestor de controladores no pasa funciones de ANSI con el sufijo "A" al controlador. En vez de eso, convierte dichas funciones en llamadas de función de ANSI sin el sufijo y después las pasa al controlador. Una aplicación de ODBC que llama a la API de SQLConnectW() se considera que es una aplicación Unicode. Puesto que el gestor de controladores de ODBC siempre llamará a la API de SQLConnectW() sin tener en cuenta la versión de la aplicación llamada, ODBC introducirá el atributo de conexión SQL_ATTR_ANSI_APP para notificar al controlador si la aplicación debería considerarse una aplicación ANSI o UNICODE. Si SQL_ATTR_ANSI_APP no se establece en SQL_AA_FALSE, DB2 CLI convierte todos los datos de Unicode a la página de códigos local antes de enviarlos al servidor. ------------------------------------------------------------------------ 36.10 Apéndice D. Funciones escalares ampliadas 36.10.1 Funciones de fecha y hora En el Apéndice D "Funciones escalares ampliadas", faltan las funciones siguientes en el apartado Funciones de fecha y hora: DAYOFWEEK_ISO( date_exp ) Muestra el día de la semana en date_exp como un valor entero en el rango 1-7, donde 1 representa el lunes. Observe la diferencia entre esta función y la función DAYOFWEEK(), donde 1 representa el domingo. WEEK_ISO( date_exp ) Muestra la semana del daño en date_exp como un valor entero en el rango de 1-53. La semana 1 está definida como la primera semana del año que contenga un jueves. Por lo tanto, Week1 equivale a la primera semana que contiene el 4 de enero, ya que el lunes se considera el primer día de la semana. Observe que WEEK_ISO() difiere de la definición general de WEEK(), que muestra un valor de 54 como máximo. Para la función WEEK(), Semana 1 es la semana que contiene el primer sábado. Esto equivale a la semana que contenga el 1 de enero, aunque la semana sólo contenga un día. DAYOFWEEK_ISO() y WEEK_ISO() están disponibles de forma automática en una base de datos creada en la Versión 7. Si una base de datos se creó antes de la Versión 7, es posible que estas funciones no estén disponibles. Para hacer que las funciones DAYOFWEEK_ISO() y WEEK_ISO() estén disponibles en dicha base de datos, utilice el mandato del sistema db2updb. Para obtener más información sobre db2updb, lea el apartado "Consulta de mandatos" de estas Notas del release. ------------------------------------------------------------------------ 36.11 Apéndice K. Utilización del recurso de rastreo CLI/ODBC/JDBC de DB2 Se han actualizado estas secciones dentro de este apéndice. Consulte el capítulo "Traces" en el manual Troubleshooting Guide para obtener la información más actual sobre este recurso de rastreo. ------------------------------------------------------------------------ Consulta de mensajes ------------------------------------------------------------------------ 37.1 Actualización disponible Se ha actualizado el manual Consulta de mensajes y el último PDF está disponible para bajarlo en línea desde http://www.ibm.com/software/data/db2/udb/winos2unix/support. Toda la documentación actualizada también está disponible en CD. Se puede solicitar dicho CD a través del servicio de DB2 y utilizando el número de PTF U478862. Puede encontrar información sobre cómo entrar en contacto con el Servicio de DB2 en http://www.ibm.com/cgi-bin/db2www/data/db2/udb/winos2unix/support/help.d2w/report . ------------------------------------------------------------------------ Consulta de SQL ------------------------------------------------------------------------ 38.1 Actualización del manual Consulta de SQL disponible Se ha actualizado el manual Consulta de SQL y el último .pdf está disponible para bajarlo en línea desde http://www.ibm.com/software/data/db2/udb/winos2unix/support. La información contenida en estas notas es adicional a la consulta actualizada. Toda la documentación actualizada también está disponible en CD. Se puede solicitar dicho CD a través del servicio de DB2 y utilizando el número de PTF U478862. Puede encontrar información sobre cómo entrar en contacto con el Servicio de DB2 en http://www.ibm.com/cgi-bin/db2www/data/db2/udb/winos2unix/support/help.d2w/report . ------------------------------------------------------------------------ 38.2 Ahora se soportan datos CLOB en funciones de MQSeries Las funciones de MQSeries (definidas en el esquema DB2MQ) incluyen ahora un funcionamiento que permite utilizarlas con datos CLOB además de hacerlo con datos VARCHAR. En algunos casos, ahora existe una nueva función para manejar el tipo de datos CLOB; en otros, la función que ya existía maneja ahora tanto datos CLOB como datos VARCHAR. En cualquier caso, la sintaxis de una función CLOB es idéntica a la de su equivalente VARCHAR. En la tabla siguiente se listan las funciones que soportan el uso de datos CLOB, y sus funciones VARCHAR equivalentes: Tabla 12. Funciones de MQSeries que soportan el tipo de datos CLOB Función a utilizar para datos Función a utilizar para datos CLOB VARCHAR MQPUBLISH MQPUBLISH MQREAD MQREADCLOB MQRECEIVE MQRECEIVECLOB MQSEND MQSEND MQREADALL MQREADALLCLOB MQRECEIVEALL MQRECEIVEALLCLOB Para obtener información sobre cómo habilitar las funciones de MQSeries (definidas en el esquema DB2MQ), consulte el apartado MQSeries. ------------------------------------------------------------------------ 38.3 Capítulo 3. Elementos de lenguaje 38.3.1 Promoción de tipos de datos La tabla 5 de este apartado muestra la lista de prioridad para cada tipo de datos. Por favor, tenga en cuenta que: 1. Para una base de datos Unicode, se considera que los siguientes tipos de datos son equivalentes: o CHAR y GRAPHIC o VARCHAR y VARGRAPHIC o LONG VARCHAR y LONG VARGRAPHIC o CLOB y DBCLOB 2. En una base de datos Unicode, es posible crear funciones en las que la única diferencia de la signatura de función se da entre los tipos de datos CHAR y GRAPHIC equivalentes, por ejemplo foo(CHAR(8)) y foo(GRAPHIC(8)). Les recomendamos encarecidamente que no definan tales funciones de duplicación ya que la migración a un futuro release obligará a que uno de ellos se elimine antes de que continúe la migración. Si existen dichas funciones duplicadas, la elección de la que se ha de invocar se determina por medio de un algoritmo en dos pases. El primer pase intenta hallar una correspondencia utilizando el mismo algoritmo que se utiliza para resolver funciones en una base de datos no Unicode. Si no se encuentra ninguna correspondencia, se efectuará un segundo pase teniendo en cuenta la prioridad de promoción siguiente para las series CHAR y GRAPHIC: GRAPHIC-->CHAR-->VARGRAPHIC-->VARCHAR-->LONG VARGRAPHIC-->LONG VARCHAR -->DBCLOB-->CLOB 38.3.2 Difusión entre tipos de datos La entrada siguiente se ha añadido a la lista introducida como: "Se da soporte a las siguientes difusiones que implican tipos diferentes": * Para una base de datos Unicode, difusión desde un VARCHAR o VARGRAPHIC a un tipo DT diferente con un tipo de datos fuente CHAR o GRAPHIC. Lo que se muestra a continuación son actualizaciones a la "Tabla 6. Difusiones soportadas entre tipos de datos incorporados". Sólo se incluyen las filas afectadas de la tabla. Tabla 13. Difusiones soportadas entre tipos de datos incorporados L O N L G O V V Tipo de datos de destino N A A > G R R V V G G G A A R R R D R R A A A B C C C C P P P C H H H L H H H L A A A O I I I O Tipo de datos fuente V R R R B C C C B CHAR Y Y Y Y S1 S1 - - VARCHAR Y Y Y Y S1 S1 - - LONGVARCHAR Y Y Y Y - - S1 S1 CLOB Y Y Y Y - - - S1 GRAPHIC S1 S1 - - Y Y Y Y VARGRAPHIC S1 S1 - - Y Y Y Y LONGVARGRAPHIC - - S1 S1 Y Y Y Y DBCLOB - - - S1 Y Y Y Y 1 La difusión sólo está soportada para bases de datos Unicode. 38.3.3 Asignaciones y comparaciones Las asignaciones y comparaciones que implican tanto datos de tipo carácter como gráficos sólo están soportadas cuando una de las series es un literal. Para la resolución de funciones, los literales gráficos y los literales de tipo carácter se corresponderán tanto con los parámetros de función gráfica como con los de tipo carácter. Lo que se muestra a continuación son actualizaciones a la "Tabla 7. Compatibilidad de tipo de datos para asignaciones y comparaciones". Sólo se incluyen las filas afectadas de la tabla y la nueva nota a pie de página 6: Indic. Entero Número Coma Serie de Serie de la Serie Operandos binario decimal flotante caracteres gráfica Fecha Hora hora binaria UDT Serie de No No No Sí Sí 6 1 1 1 No 3 2 caracteres Serie No No No Sí 6 Sí No No No No 2 gráfica 6 Sólo está soportada para bases de datos Unicode. 38.3.3.1 Asignaciones de serie Asignación de almacenamiento El último párrafo de este subapartado se modifica del modo siguiente: Cuando se asigna una serie a una columna de longitud fija y la longitud de la serie es inferior al atributo de longitud del destino, la serie se rellena a la derecha con el número necesario de blancos de un único byte, de doble byte o UCS-22. El carácter de relleno es siempre un blanco incluso para las columnas que se definen con el atributo FOR BIT DATA. Asignación de recuperación El tercer párrafo de este subapartado se modifica del modo siguiente: Cuando se asigna una serie de caracteres a una variable de longitud fija y la longitud de la serie es inferior al atributo de longitud del destino, la serie se rellena a la derecha con el número necesario de blancos de un único byte, de doble byte o UCS-22. El carácter de relleno es siempre un blanco incluso para las series que se definen con el atributo FOR BIT DATA. 2 UCS-2 define varios caracteres SPACE con propiedades diferentes. Para una base de datos Unicode, el gestor de bases de datos siempre utiliza ASCII SPACE en la posición x'0020' como blanco UCS-2. Para una base de datos EUC, el IDEOGRAPHIC SPACE de la posición x'3000' se utiliza para rellenar gráficos GRAPHIC. Normas de conversión para asignaciones de serie Se ha añadido el párrafo siguiente al final de este subapartado: Para las bases de datos Unicode, las series de caracteres pueden asignarse a una columna gráfica y pueden asignarse series gráficas a una columna de caracteres. Consideraciones para asignaciones de serie gráfica El primer párrafo de este subapartado se ha modificado del modo siguiente: Las asignaciones de serie gráfica se procesan de un modo análogo al de las series de caracteres. Para bases de datos no Unicode, los tipos de datos de serie gráfica son únicamente compatibles con otros tipos de datos de serie gráfica y nunca con tipos de datos numéricos, de serie de caracteres o de fecha y hora. Para bases de datos no Unicode, los tipos de datos de serie gráfica son compatibles con tipos de datos de serie gráfica. 38.3.3.2 Comparaciones de series Normas de conversión para la comparación Este subapartado se ha modificado del modo siguiente: Cuando se comparan dos series, una de las series se convierte en primer lugar, si es necesario, al esquema de codificación y/o página de códigos de la otra serie. Para obtener más detalles, consulte el apartado "Normas para conversiones de serie" del "Capítulo 3. Elementos de lenguaje" del manual Consulta de SQL. 38.3.4 Normas para los tipos de datos de resultado 38.3.4.1 Series de caracteres y de gráficos en una base de datos Unicode Éste es un subapartado nuevo que se inserta detrás del subapartado "Series gráficas". En una base de datos Unicode, las series de caracteres y las series gráficas son compatibles. Si un operando es... Y el otro operando El tipo de datos del es... resultado es... GRAPHIC(x) CHAR(y) o GRAPHIC(y) GRAPHIC(z) donde z = max(x,y) VARGRAPHIC(x) CHAR(y) o VARCHAR(y) VARGRAPHIC(z) donde z = max(x,y) VARCHAR(x) GRAPHIC(y) o VARGRAPHIC VARGRAPHIC(z) donde z = max(x,y) LONG VARGRAPHIC CHAR(y) o VARCHAR(y) o LONG VARGRAPHIC LONG VARCHAR LONG VARCHAR GRAPHIC(y) o LONG VARGRAPHIC VARGRAPHIC(y) DBCLOB(x) CHAR(y) o VARCHAR(y) o DBCLOB(z) donde z = CLOB(y) max(x,y) DBCLOB(x) LONG VARCHAR DBCLOB(z) donde z = max(x,16350) CLOB(x) GRAPHIC(y) o DBCLOB(z) donde z = VARGRAPHIC(y) max(x,y) CLOB(x) LONG VARGRAPHIC DBCLOB(z) donde z = max(x,16350) 38.3.5 Normas para las conversiones de serie Se ha añadido el tercer punto a la lista siguiente de esta sección: Para cada par de páginas de códigos, el resultado lo determina la aplicación secuencial de las normas siguientes: * Si las páginas de códigos son iguales, el resultado es esa página de códigos. * Si una de las páginas de códigos es BIT DATA (página de códigos 0), la página de códigos de resultados es BIT DATA. * En una base de datos Unicode, si una página de códigos indica datos en un esquema de codificación diferente de otra página de códigos, el resultado es UCS-2 por encima de UTF-8 (es decir, el tipo de datos gráfico por encima del tipo de datos de carácter).1 * En caso contrario, la página de códigos de resultados la determina la Tabla 8 del apartado "Normas para conversiones de serie" del "Capítulo 3. Elementos de lenguaje" del manual Consulta de SQL. Una entrada de "primera" en la tabla significa que se ha seleccionado la página de códigos del primer operando y una entrada de "segunda" significa que se ha seleccionado la página de códigos del segundo operando. 1 En una base de datos no Unicode, no se da soporte a la conversión entre nombres de codificación diferentes. 38.3.6 Expresiones Se ha añadido lo siguiente: En una base de datos Unicode, una expresión que acepte una serie de caracteres o gráfica aceptará cualquier tipo de serie para el que se dé soporte a la conversión. 38.3.6.1 Con el operador de concatenación Se ha añadido lo siguiente al final de este subapartado: En una base de datos Unicode, la concatenación que implica tanto a los operandos de serie de caracteres como a los operandos de serie gráfica convertirá en primer lugar los operandos de carácter en operandos gráficos. Tenga en cuenta que en una base de datos no Unicode, la concatenación no puede implicar ni a operandos de caracteres ni a gráficos. 38.3.7 Predicados La entrada siguiente se ha añadido a la lista introducida por la sentencia: "Las normas siguientes se aplican a todos los tipos de predicados": * En una base de datos Unicode, todos los predicados que aceptan una serie de caracteres o gráfica aceptarán cualquier tipo de serie para el que se dé soporte a la conversión. ------------------------------------------------------------------------ 38.4 Capítulo 4. Funciones 38.4.1 Cómo habilitar las nuevas funciones y procedimientos Los FixPak de la Versión 7 ofrecen nuevas funciones escalares incorporadas de SQL. Consulte las actualizaciones del manual Consulta de SQL para obtener una descripción de estas nuevas funciones. Las nuevas funciones no se habilitan automáticamente en cada base de datos cuando el código del servidor de bases de datos se actualiza al nuevo nivel de servicio. Para habilitar estas funciones nuevas, el administrador del sistema debe emitir el mandato db2updv7, especificando cada una de las bases de datos en el servidor. Este mandato crea una entrada en la base de datos que asegura que los objetos de la base de datos que se crean antes de ejecutar este mandato utilicen las signaturas de función que se correspondan con las signaturas de función nuevas. Para obtener información sobre cómo habilitar las funciones de MQSeries (definidas en el esquema DB2MQ), consulte MQSeries. 38.4.2 Funciones escalares 38.4.2.1 MQPUBLISH >>-MQPUBLISH--(-------------------------------------------------> >--+--------------------------------------------------+---------> '-servicio-publicador--,--+----------------------+-' '-política-servicio--,-' >--datos-mje--+--------------------------------+--)------------>< '-,--tema--+-------------------+-' | (1) | '-,--id-correl------' Notas: 1. El id-correl no se puede especificar a no ser que previamente se haya definido un servicio y una política. El esquema es DB2MQ. La función MQPUBLISH publica datos ante MQSeries. Esta función requiere la instalación de MQSeries Publish/Subscribe o MQSeries Integrator. Consulte la dirección www.ibm.com/software/MQSeries para obtener más información. La función MQPUBLISH publica los datos contenidos en datos-mje ante el publicador de MQSeries especificado en servicio-publicador y utiliza la calidad de política de servicio definida en política-servicio. Se puede especificar un tema opcional para el mensaje y también se puede especificar un identificador opcional de correlación de mensajes definidos por el usuario. La función devuelve el valor '1' si se ejecuta satisfactoriamente y '0' si no es así. servicio-publicador Una serie que contiene el destino lógico de MQSeries al que se debe enviar el mensaje. Si se especifica, el servicio-publicador debe hacer referencia a un Punto de servicio del publicador definido en el archivo de repositorio AMT.XML. Un punto de servicio es un punto final lógico desde el que se envía o en el que se recibe un mensaje. Las definiciones de puntos de servicio incluyen el nombre de MQSeries Queue Manager y de la cola. Consulte el manual MQSeries Application Messaging Interface para obtener más información. Si no se especifica servicio-publicador, se utilizará DB2.DEFAULT.PUBLISHER. El tamaño máximo de servicio-publicador es 48 bytes. política-servicio Una serie que contiene la política de servicio AMI de MQSeries que se va a utilizar para manejar este mensaje. Si se especifica, la política-servicio debe hacer referencia a una política definida en el archivo de repositorio AMT.XML. Una Política de servicio define una serie de opciones de calidad de servicio que se deben aplicar a esta operación de gestión de mensajes. Estas opciones incluyen prioridad y permanencia del mensaje. Consulte el manual MQSeries Application Messaging Interface para obtener más información. Si no se especifica política-servicio, se utiliza DB2.DEFAULT.POLICY por omisión. El tamaño máximo de política-servicio es 48 bytes. datos-mje Una expresión que contiene los datos que se van a enviar mediante MQSeries. El tamaño máximo, si la serie es de tipo VARCHAR, es 4000 bytes. Si la serie es CLOB, puede llegar a tener un tamaño de 1 MB. tema Una expresión que contiene el tema correspondiente a la publicación del mensaje. Si no se especifica ningún tema, no se asociará ninguno al mensaje. El tamaño máximo de tema es 40 bytes. Se pueden especificar varios temas en una serie (con una longitud máxima de 40 caracteres). Cada tema se debe separar por un signo de dos puntos. Por ejemplo, "t1:t2:tercer tema" indica que el mensaje se asocia con tres temas: t1, t2 y "tercer tema". id-correl Una expresión opcional que contiene un identificador de correlación que se asociará con este mensaje. El id-correl se suele especificar en escenarios de petición y respuesta para asociar peticiones con respuestas. Si no se especifica, no se añade ningún id de correlación al mensaje. El tamaño máximo de id-correl es 24 bytes. Ejemplos Ejemplo 1: Este ejemplo publica la serie "Testing 123" al servicio publicador por omisión (DB2.DEFAULT.PUBLISHER) utilizando la política por omisión (DB2.DEFAULT.POLICY). No se especifica ningún identificador de correlación ni ningún tema para el mensaje. VALUES MQPUBLISH('Testing 123') Ejemplo 2: Este ejemplo publica la serie "Testing 345" al servicio publicador "MYPUBLISHER" bajo el tema "TESTS". Se utiliza la política por omisión y no se especifica ningún identificador de correlación. VALUES MQPUBLISH('MYPUBLISHER','Testing 345', 'TESTS') Ejemplo 3: Este ejemplo publica la serie "Testing 678" al servicio publicador "MYPUBLISHER" utilizando la política "MYPOLICY" con el identificador de correlación "TEST1". El mensaje se publica con el tema "TESTS". VALUES MQPUBLISH('MYPUBLISHER','MYPOLICY','Testing 678','TESTS','TEST1') Ejemplo 4: Este ejemplo publica la serie "Testing 901" al servicio publicador "MYPUBLISHER" bajo el tema "TESTS" utilizando la política por omisión (DB2.DEFAULT.POLICY) y sin identificador de correlación. VALUES MQPUBLISH('Testing 901','TESTS') Todos los ejemplos devuelven el valor '1' si se ejecutan satisfactoriamente. 38.4.2.2 MQREADCLOB >>-MQREADCLOB--(------------------------------------------------> >--+----------------------------------------------+--)--------->< '-servicio-recepción--+----------------------+-' '-,--política-servicio-' El esquema es DB2MQ. La función MQREADCLOB devuelve un mensaje procedente de la ubicación de MQSeries especificada por servicio-recepción, utilizando la política de calidad de servicio definida en política-servicio. Al ejecutar esta operación no se elimina el mensaje de la cola asociada con servicio-recepción, sino que se devuelve el mensaje al principio de la cola. El valor de retorno es un CLOB con una longitud máxima de 1 MB, que contiene el mensaje. Si no hay ningún mensaje disponible que se pueda devolver, se devuelve un NULL. servicio-recepción Una serie que contiene el destino lógico de MQSeries desde el que se va a recibir el mensaje. Si se especifica, el servicio-recepción hace referencia a un Punto de servicio definido en el archivo de repositorio AMT.XML. Un punto de servicio es un punto final lógico desde el que se envía o en el que se recibe un mensaje. Las definiciones de puntos de servicio incluyen el nombre de MQSeries Queue Manager y de la cola. Consulte el manual MQSeries Application Messaging Interface para obtener más información. Si no se especifica servicio-recepción, se utiliza DB2.DEFAULT.SERVICE. El tamaño máximo de servicio-recepción es 48 bytes. política-servicio Una serie que contiene la política de servicio AMI de MQSeries utilizada para manejar este mensaje. Si se especifica, la política-servicio debe hacer referencia a una política definida en el archivo de repositorio AMT.XML. Una Política de servicio define una serie de opciones de calidad de servicio que se deben aplicar a esta operación de gestión de mensajes. Estas opciones incluyen prioridad y permanencia del mensaje. Consulte el manual MQSeries Application Messaging Interface para obtener más información. Si no se especifica política-servicio, se utiliza DB2.DEFAULT.POLICY por omisión. El tamaño máximo de política-servicio es 48 bytes. Ejemplos: Ejemplo 1: Este ejemplo lee el mensaje que hay al principio de la cola especificada por el servicio por omisión (DB2.DEFAULT.SERVICE), utilizando la política por omisión (DB2.DEFAULT.POLICY). VALUES MQREADCLOB() Ejemplo 2: Este ejemplo lee el mensaje que hay al principio de la cola especificada por el servicio "MYSERVICE" utilizando la política por omisión (DB2.DEFAULT.POLICY). VALUES MQREADCLOB('MYSERVICE') Ejemplo 3: Este ejemplo lee el mensaje que hay al principio de la cola especificada por el servicio "MYSERVICE" utilizando la política "MYPOLICY". VALUES MQREADCLOB('MYSERVICE','MYPOLICY') Todos estos ejemplos devuelven el contenido del mensaje como un CLOB con un tamaño máximo de 1 MB, si se ejecutan satisfactoriamente. Si no hay mensajes disponibles, se devuelve un NULL. 38.4.2.3 MQRECEIVECLOB >>-MQRECEIVECLOB------------------------------------------------> >--(--+----------------------------------------------------------------+--)->< '-servicio-recepción--+----------------------------------------+-' '-,--política-servicio--+--------------+-' '-,--id-correl-' El esquema es DB2MQ. La función MQRECEIVECLOB devuelve un mensaje procedente de la ubicación de MQSeries especificada por servicio-recepción, utilizando la política de calidad de servicio política-servicio. Al llevar a cabo esta operación se elimina el mensaje de la cola asociada con servicio-recepción. Si se especifica id-correl, se devuelve el primer mensaje con un identificador de correlación que coincida. Si no se especifica correl-id, se devuelve el primer mensaje de la cola. El valor de retorno es un CLOB con una longitud máxima de 1 MB, que contiene el mensaje. Si no hay ningún mensaje disponible que se pueda devolver, se devuelve un NULL. servicio-recepción Una serie que contiene el destino lógico de MQSeries desde el que se recibe el mensaje. Si se especifica, el servicio-recepción hace referencia a un Punto de servicio definido en el archivo de repositorio AMT.XML. Un punto de servicio es un punto final lógico desde el que se envía o en el que se recibe un mensaje. Las definiciones de puntos de servicio incluyen el nombre de MQSeries Queue Manager y de la cola. Consulte el manual MQSeries Application Messaging Interface para obtener más información. Si no se especifica servicio-recepción, se utiliza DB2.DEFAULT.SERVICE. El tamaño máximo de servicio-recepción es 48 bytes. política-servicio Una serie que contiene la política de servicio AMI de MQSeries que se va a utilizar para manejar este mensaje. Si se especifica, la política-servicio debe hacer referencia a una Política definida en el archivo de repositorio AMT.XML 1 . Si no se especifica política-servicio, se utiliza DB2.DEFAULT.POLICY por omisión. El tamaño máximo de política-servicio es 48 bytes. id-correl Serie que contiene un identificador de correlación opcional que se va a asociar con este mensaje. El id-correl se suele especificar en escenarios de petición y respuesta para asociar peticiones con respuestas. Si no se especifica, no se utilizará ningún id de correlación. El tamaño máximo de id-correl es 24 bytes. Ejemplos: Ejemplo 1: Este ejemplo recibe el mensaje que hay al principio de la cola especificada por el servicio por omisión (DB2.DEFAULT.SERVICE), utilizando la política por omisión (DB2.DEFAULT.POLICY). VALUES MQRECEIVECLOB() Ejemplo 2: Este ejemplo recibe el mensaje que hay al principio de la cola especificada por el servicio "MYSERVICE" utilizando la política por omisión (DB2.DEFAULT.POLICY). VALUES MQRECEIVECLOB('MYSERVICE') Ejemplo 3: Este ejemplo recibe el mensaje que hay al principio de la cola especificada por el servicio "MYSERVICE" utilizando la política "MYPOLICY". VALUES MQRECEIVECLOB('MYSERVICE','MYPOLICY') Ejemplo 4: Este ejemplo recibe el primer mensaje con el id de correlación que coincida con '1234' del principio de la cola especificada por el servicio "MYSERVICE" utilizando la política "MYPOLICY". VALUES MQRECEIVECLOB('MYSERVICE',MYPOLICY','1234') Todos estos ejemplos devuelven el contenido del mensaje como un CLOB con un tamaño máximo de 1 MB, si se ejecutan satisfactoriamente. Si no hay mensajes disponibles, se devuelve un NULL. 38.4.2.4 MQSEND >>-MQSEND--(--+---------------------------------------------+---> '-servicio-envío--,--+----------------------+-' '-política-servicio--,-' >--datos-mje--+-------------------+--)------------------------->< | (1) | '-,--id-correl------' Notas: 1. El id-correl no se puede especificar a no ser que previamente se haya definido un servicio y una política. El esquema es DB2MQ. La función MQSEND envía los datos contenidos en datos-mje a la ubicación de MQSeries especificada por servicio-envío, utilizando la política de calidad de servicio definida por política-servicio. Se puede especificar un identificador opcional de correlación de mensaje definido por el usuario mediante id-correl. La función devuelve el valor '1' si se ejecuta satisfactoriamente y '0' si no es así. datos-mje Una expresión que contiene los datos que se van a enviar mediante MQSeries. El tamaño máximo es de 4000 bytes si los datos son de tipo VARCHAR, y de 1 MB si los datos son de tipo CLOB. servicio-envío Una serie que contiene el destino lógico de MQSeries al que se debe enviar el mensaje. Si se especifica, el servicio-envío hace referencia a un punto de servicio definido en el archivo de repositorio AMT.XML. Un punto de servicio es un punto final lógico desde el que se envía o en el que se recibe un mensaje. Las definiciones de puntos de servicio incluyen el nombre de MQSeries Queue Manager y de la cola. Consulte el manual MQSeries Application Messaging Interface para obtener más información. Si no se especifica servicio-envío, se utiliza el valor de DB2.DEFAULT.SERVICE. El tamaño máximo de servicio-envío es 48 bytes. política-servicio Una serie que contiene la política de servicio AMI de MQSeries utilizada para manejar este mensaje. Si se especifica, la política-servicio debe hacer referencia a una política definida en el archivo de repositorio AMT XML. Una Política de servicio define una serie de opciones de calidad de servicio que se deben aplicar a esta operación de gestión de mensajes. Estas opciones incluyen prioridad y permanencia del mensaje. Consulte el manual MQSeries Application Messaging Interface para obtener más información. Si no se especifica política-servicio, se utiliza el valor por omisión DB2.DEFAULT.POLICY. El tamaño máximo de política-servicio es 48 bytes. id-correl Una serie opcional que contiene un identificador de correlación asociado con este mensaje. El id-correl se suele especificar en escenarios de petición y respuesta para asociar peticiones con respuestas. Si no se especifica, no se envía ningún id de correlación. El tamaño máximo de id-correl es 24 bytes. Ejemplos: Ejemplo 1: Este ejemplo envía la serie "Testing 123" al servicio por omisión (DB2.DEFAULT.SERVICE), utilizando la política por omisión (DB2.DEFAULT.POLICY), sin identificador de correlación. VALUES MQSEND('Testing 123') Ejemplo 2: Este ejemplo envía la serie "Testing 345" al servicio "MYSERVICE", utilizando la política "MYPOLICY", sin identificador de correlación. VALUES MQSEND('MYSERVICE','MYPOLICY','Testing 345') Ejemplo 3: Este ejemplo envía la serie "Testing 678" al servicio "MYSERVICE", utilizando la política "MYPOLICY", con el identificador de correlación "TEST3". VALUES MQSEND('MYSERVICE','MYPOLICY','Testing 678','TEST3') Ejemplo 4: Este ejemplo envía la serie "Testing 901" al servicio "MYSERVICE", utilizando la política por omisión (DB2.DEFAULT.POLICY), y sin identificador de correlación. VALUES MQSEND('MYSERVICE','Testing 901') Todos los ejemplos devuelven el valor escalar '1' si se ejecutan satisfactoriamente. 38.4.3 Funciones escalares y Unicode En una base de datos Unicode, todas las funciones escalares que aceptan una serie de caracteres o gráfica aceptarán cualquier tipo de serie que disponga de soporte de conversión. 38.4.4 Funciones de tabla 38.4.4.1 MQREADALLCLOB >>-MQREADALLCLOB--(---------------------------------------------> >--+----------------------------------------------+-------------> '-servicio-recepción--+----------------------+-' '-,--política-servicio-' >--+-----------+--)-------------------------------------------->< '-núm-filas-' El esquema es DB2MQ. La función MQREADALLCLOB devuelve una tabla que contiene los mensajes y metadatos de mensajes procedentes de la ubicación de MQSeries especificada por servicio-recepción, utilizando la política de calidad de servicio política-servicio. Al realizar esta operación no se eliminan los mensajes de la cola asociada con servicio-recepción. Si se especifica núm-filas, se devolverá un máximo de núm-filas mensajes. Si no se especifica núm-filas, se devolverán todos los mensajes disponibles. La tabla devuelta contiene las siguientes columnas: * MSG - una columna CLOB que contiene el contenido del mensaje de MQSeries. * CORRELID - una columna VARCHAR(24) que alberga un ID de correlación que se utiliza para relacionar mensajes. * TOPIC - una columna VARCHAR(40) que alberga el tema con el que se publicó el mensaje, si está disponible. * QNAME - una columna VARCHAR(48) que alberga el nombre de la cola en la que se ha recibido el mensaje. * MSGID - una columna CHAR(24) que alberga el identificador exclusivo de MQSeries asignado para este mensaje. * MSGFORMAT - una columna VARCHAR(8) que alberga el formato del mensaje, tal como lo ha definido MQSeries. Las series típicas tienen un formato MQSTR. servicio-recepción Una serie que contiene el destino lógico de MQSeries del que se lee el mensaje. Si se especifica, el servicio-recepción debe hacer referencia a un punto de servicio definido en el archivo de repositorio AMT.XML. Un punto de servicio es un punto final lógico desde el que se envía o en el que se recibe un mensaje. Las definiciones de puntos de servicio incluyen el nombre de MQSeries Queue Manager y de la cola. Consulte el manual MQSeries Application Messaging Interface para obtener más información. Si no se especifica servicio-recepción, se utilizará DB2.DEFAULT.SERVICE. El tamaño máximo de servicio-recepción es 48 bytes. política-servicio Una serie que contiene la política de servicio AMI de MQSeries que se utiliza para manejar este mensaje. Si se especifica, la política-servicio hace referencia a una política definida en el archivo de repositorio AMT.XML. Una política de servicio define una serie de opciones de calidad de servicio que se deben aplicar a esta operación de gestión de mensajes. Estas opciones incluyen prioridad y permanencia del mensaje. Consulte el manual MQSeries Application Messaging Interface para obtener más información. Si no se especifica política-servicio, se utiliza DB2.DEFAULT.POLICY por omisión. El tamaño máximo de política-servicio es 48 bytes. núm-filas Un entero positivo que contiene el número máximo de mensajes que devolverá la función. Ejemplos: Ejemplo 1: Este ejemplo recibe todos los mensajes procedentes de la cola especificada por el servicio por omisión (DB2.DEFAULT.SERVICE), utilizando la política por omisión (DB2.DEFAULT.POLICY). Los mensajes y todos los metadatos se devuelven como una tabla. SELECT * FROM table (MQREADALLCLOB()) T Ejemplo 2: Este ejemplo recibe todos los mensajes procedentes del principio de la cola especificada por el servicio MYSERVICE, utilizando la política por omisión (DB2.DEFAULT.POLICY). Sólo se devuelven las columnas MSG y CORRELID. SELECT T.MSG, T.CORRELID FROM table (MQREADALLCLOB('MYSERVICE')) T Ejemplo 3: Este ejemplo lee el principio de la cola especificada por el servicio por omisión (DB2.DEFAULT.SERVICE), utilizando la política por omisión (DB2.DEFAULT.POLICY). Sólo se devuelven los mensajes con un CORRELID de '1234'. Se devuelven todas las columnas. SELECT * FROM table (MQREADALLCLOB()) T WHERE T.CORRELID = '1234' Ejemplo 4: Este ejemplo recibe los 10 primeros mensajes del principio de la cola especificada por el servicio por omisión (DB2.DEFAULT.SERVICE), utilizando la política por omisión (DB2.DEFAULT.POLICY). Se devuelven todas las columnas. SELECT * FROM table (MQREADALLCLOB(10)) T 38.4.4.2 MQRECEIVEALLCLOB >>-MQRECEIVEALLCLOB--(------------------------------------------> >--+----------------------------------------------------------------+--> '-servicio-recepción--+----------------------------------------+-' '-,--política-servicio--+--------------+-' '-,--id-correl-' >--+------------------+--)------------------------------------->< '-+---+--núm-filas-' '-,-' El esquema es DB2MQ. La función MQRECEIVEALLCLOB devuelve una tabla que contiene los mensajes y metadatos de mensajes procedentes de la ubicación de MQSeries especificada por servicio-recepción, utilizando la política de calidad de servicio política-servicio. Al realizar esta operación se eliminan los mensajes de la cola asociada con servicio-recepción. Si se especifica un id-correl, sólo se devuelven los mensajes con un identificador de correlación que coincida. Si no se especifica correl-id, se devuelve el primer mensaje de la cola. Si se especifica núm-filas, se devolverá un máximo de núm-filas mensajes. Si no se especifica núm-filas, se devolverán todos los mensajes disponibles. La tabla devuelta contiene las siguientes columnas: * MSG - una columna CLOB que contiene el contenido del mensaje de MQSeries. * CORRELID - una columna VARCHAR(24) que alberga un ID de correlación que se utiliza para relacionar mensajes. * TOPIC - una columna VARCHAR(40) que alberga el tema con el que se publicó el mensaje, si está disponible. * QNAME - una columna VARCHAR(48) que alberga el nombre de la cola en la que se ha recibido el mensaje. * MSGID - una columna CHAR(24) que alberga el identificador exclusivo de MQSeries asignado para este mensaje. * MSGFORMAT - una columna VARCHAR(8) que alberga el formato del mensaje, tal como lo ha definido MQSeries. Las series típicas tienen un formato MQSTR. servicio-recepción Una serie que contiene el destino lógico de MQSeries desde el que se recibe el mensaje. Si se especifica, el servicio-recepción debe hacer referencia a un punto de servicio definido en el archivo de repositorio AMT.XML. Un punto de servicio es un punto final lógico desde el que se envía o en el que se recibe un mensaje. Las definiciones de puntos de servicio incluyen el nombre de MQSeries Queue Manager y de la cola. Consulte el manual MQSeries Application Messaging Interface para obtener más información. Si no se especifica servicio-recepción, se utilizará DB2.DEFAULT.SERVICE. El tamaño máximo de servicio-recepción es 48 bytes. política-servicio Una serie que contiene la política de servicio AMI de MQSeries que se utiliza para manejar este mensaje. Si se especifica, la política-servicio hace referencia a una política definida en el archivo de repositorio AMT.XML. Una política de servicio define una serie de opciones de calidad de servicio que se deben aplicar a esta operación de gestión de mensajes. Estas opciones incluyen prioridad y permanencia del mensaje. Consulte el manual MQSeries Application Messaging Interface para obtener más información. Si no se especifica política-servicio, se utiliza DB2.DEFAULT.POLICY por omisión. El tamaño máximo de política-servicio es 48 bytes. id-correl Una serie opcional que contiene un identificador de correlación asociado con este mensaje. El id-correl se suele especificar en escenarios de petición y respuesta para asociar peticiones con respuestas. Si no se especifica, no se especifica ningún id de correlación. El tamaño máximo de id-correl es 24 bytes. núm-filas Un entero positivo que contiene el número máximo de mensajes que devolverá la función. Ejemplos: Ejemplo 1: Este ejemplo recibe todos los mensajes procedentes de la cola especificada por el servicio por omisión (DB2.DEFAULT.SERVICE), utilizando la política por omisión (DB2.DEFAULT.POLICY). Los mensajes y todos los metadatos se devuelven como una tabla. SELECT * FROM table (MQRECEIVEALLCLOB()) T Ejemplo 2: Este ejemplo recibe todos los mensajes procedentes del principio de la cola especificada por el servicio MYSERVICE, utilizando la política por omisión (DB2.DEFAULT.POLICY). Sólo se devuelven las columnas MSG y CORRELID. SELECT T.MSG, T.CORRELID FROM table (MQRECEIVEALLCLOB('MYSERVICE')) T Ejemplo 3: Este ejemplo recibe todos los mensajes del principio de la cola especificada por el servicio "MYSERVICE", utilizando la política "MYPOLICY". Sólo se devuelven los mensajes con un CORRELID de '1234'. Sólo se devuelven las columnas MSG y CORRELID. SELECT T.MSG, T.CORRELID FROM table (MQRECEIVEALLCLOB('MYSERVICE','MYPOLICY','1234')) T Ejemplo 4: Este ejemplo recibe los 10 primeros mensajes del principio de la cola especificada por el servicio por omisión (DB2.DEFAULT.SERVICE), utilizando la política por omisión (DB2.DEFAULT.POLICY). Se devuelven todas las columnas. SELECT * FROM table (MQRECEIVEALLCLOB(10)) T ------------------------------------------------------------------------ 38.5 Capítulo 6. Sentencias de SQL 38.5.1 Claves de índice mayores para bases de datos Unicode 38.5.1.1 ALTER TABLE La longitud de las columnas de longitud variable que forman parte de un índice cualquiera, incluidas las claves principales y exclusivas, definidas cuando la variable del registro DB2_INDEX_2BYTEVARLEN tenía el valor ON, se puede modificar para que sea mayor que 255 bytes. El hecho de que una columna de longitud variable esté asociada a una clave externa ya no impide que modificar la longitud de esa columna para que sea mayor que 255 bytes, para cualquiera sea el valor de la variable del registro. Sin embargo, los datos más largos de 255 bytes no se pueden insertar en la tabla a menos que la columna de la correspondiente clave primaria sea mayor que 255 bytes, lo cual sólo es posible si la clave primaria se creó cuando la variable del registro tenía el valor ON. 38.5.1.2 CREATE INDEX Se pueden definir índices en columnas de longitud variable cuya longitud sea mayor que 255 bytes si la variable del registro DB2_INDEX_2BYTEVARLEN tiene el valor ON. 38.5.1.3 CREATE TABLE Las claves principales y exclusivas con partes variables pueden tener un tamaño mayor que 255 si la variable de registro DB2_INDEX_2BYTEVARLEN tiene el valor ON (activado). Se pueden definir claves externas en columnas de longitud variable cuya longitud sea mayor que 255 bytes. ------------------------------------------------------------------------ Actualizaciones de Unicode ------------------------------------------------------------------------ 39.1 Introducción El estándar de Unicode es un esquema de codificación de caracteres universal para caracteres y texto escrito. Define con mucha precisión un juego de caracteres, así como un pequeño número de codificaciones para éste. Define un modo coherente de codificar texto en varios idiomas que permite el intercambio de datos de texto internacionalmente y crea las bases para el software global. Dos de los esquemas de codificación proporcionados por Unicode son UTF-16 y UTF-8. El esquema de codificación por omisión es UTF-16, que es un formato de codificación de 16 bits. UCS-2 es un subconjunto de UTF-16 que utiliza dos bytes para representar un carácter. UCS-2 se acepta normalmente como la página de códigos universal capaz de representar todos los caracteres necesarios de todas las páginas de códigos existentes de un sólo byte y de doble byte. UCS-2 está registrado en IBM como página de códigos 1200. El otro formato de codificación de Unicode es UTF-8, que está orientado a byte y que ha sido diseñado para que se utilice con facilidad con los sistemas existentes basados en ASCII. UTF-8 utiliza un número variable de bytes (normalmente 1-3, a veces 4) para almacenar cada uno de los caracteres. Los caracteres de ASCII invariables se almacenan como bytes únicos. Todos los demás caracteres se almacenan utilizando varios bytes. En general, los datos de UTF-8 pueden tratarse como datos ASCII ampliados por medio de un código que no ha sido diseñado para páginas de códigos de varios bytes. UTF-8 está registrado en IBM como página de códigos 1208. Es importante que las aplicaciones tengan en cuenta los requisitos de la conversión de los datos entre la página de códigos local, UCS-2 y UTF-8. Por ejemplo, 20 caracteres necesitarán exactamente 40 bytes en UCS-2 y entre 20 y 60 bytes en UTF-8, en función de la página de códigos original y de los caracteres utilizados. 39.1.1 Bases de datos y aplicaciones Unicode de DB2 Puede utilizarse una base de datos universal de DB2 para Unix, Windows u OS/2 creada especificando un conjunto de códigos UTF-8 para almacenar datos en formatos UCS-2 y UTF-8. A dicha base de datos se la denomina base de datos Unicode. Los datos de tipo carácter SQL se codifican utilizando UTF-8 y los datos gráficos SQL se codifican utilizando UCS-2. Esto significa que los caracteres MBCS, incluidos los caracteres de un solo byte y de byte doble, se almacenan en columnas de caracteres, y que los caracteres DBCS se almacenan en columnas de gráficos. Es posible que la página de códigos de una aplicación no coincida con la página de códigos que utiliza DB2 para almacenar datos. En una base de datos no Unicode, cuando las páginas de códigos no sean las mismas, el gestor de la base de datos convierte los datos de carácter y de gráfico (DBCS puro) que se transfieren entre el cliente y el servidor. En una base de datos Unicode, la conversión de datos de carácter entre la página de códigos de cliente y UTF-8 la efectúa automáticamente el gestor de la base de datos, pero todos los datos gráficos (UCS-2) se pasan sin conversión alguna entre el cliente y el servidor. Figura 1. Conversiones de página de códigos que efectúa el gestor de la base de datos [Conversiones de página de códigos que efectúa el gestor de la base de datos] Notas: 1. Al conectar con bases de datos Unicode, si la aplicación establece DB2CODEPAGE=1208, la página de códigos local es UTF-8, por lo que no se necesita ninguna conversión de página de códigos. 2. Cuando se conecta a una base de datos Unicode, las aplicaciones de CLI pueden recibir asimismo datos de tipo carácter como datos gráficos y datos gráficos como datos de tipo carácter. Para una aplicación es posible especificar una página de códigos UTF-8, indicando que todos los datos gráficos se enviarán y recibirán en UCS-2 y los datos de tipo carácter en UTF-8. Esta página de códigos de aplicación sólo está soportada para bases de datos Unicode. Otros puntos a tener en cuenta al utilizar Unicode: 1. La página de códigos de la base de datos en el momento en que se creó la base de datos y, por omisión, su valor lo determina el entorno nacional del sistema operativo (o página de códigos). Las palabras clave CODESET y TERRITORY pueden utilizarse para crear explícitamente una base de datos DB2 Unicode. Por ejemplo: CREATE DATABASE unidb USING CODESET UTF-8 TERRITORY US 2. La página de códigos de la aplicación toma asimismo el valor por omisión de la página de códigos local, pero UTF-8 puede alterarla temporalmente de una de estas dos formas: o Definiendo la página de códigos de la aplicación para UTF-8 (1208) con este mandato: db2set DB2CODEPAGE=1208 o Para las aplicaciones CLI/ODBC, llamando a SQLSetConnectAttr() y estableciendo SQL_ATTR_ANSI_APP en SQL_AA_FALSE. El valor por omisión es SQL_AA_TRUE. 3. Los datos de las columnas GRAPHIC adoptarán exactamente dos bytes por cada carácter Unicode, en tanto que los datos de las columnas CHAR adoptarán de 1 a 3 bytes por cada carácter Unicode. Los límites de SQL en términos de caracteres para las columnas GRAPHIC son, habitualmente, la mitad que para las columnas CHAR, pero en términos de bytes son iguales. Por ejemplo, la longitud máxima de caracteres para una columna CHAR es de 254 y l longitud máxima de caracteres para una columna de gráficos es de 127. Para obtener más información, consulte el apartado MAX en el capítulo "Funciones" del manual Consulta de SQL. 4. Un literal gráfico se diferencia de un literal de caracteres por medio de un prefijo G. Por ejemplo: SELECT * FROM mytable WHERE mychar = 'utf-8 data' AND mygraphic = G'ucs-2 data' Nota: El prefijo G es opcional para las bases de datos Unicode. Vea 36.6.2.4, "Literales en bases de datos Unicode" para obtener más información y para soporte actualizado. 5. El soporte para las aplicaciones CLI/ODBC y JDBC difiere del soporte para las aplicaciones intercaladas. Para obtener información específica para el soporte de CLI/ODBC, vea "CLI Guide and Reference". 6. El orden de los bytes de los datos de UCS-2 puede diferir entre las diversas plataformas. Internamente, DB2 utiliza el formato big-endian. 39.1.2 Actualizaciones de documentación Estas notas del release incluyen actualizaciones de la información siguiente sobre la utilización de Unicode con DB2 Versión 7.1: * Consulta de SQL: Capítulo 3. Elementos de lenguaje Capítulo 4. Funciones Capítulo 6. Sentencias de SQL * CLI Guide and Reference: Capítulo 3. Using Advanced Features Apéndice C. DB2 CLI and ODBC * Data Movement Utilities Guide and Reference, Apéndice C. Export/Import/Load Utility File Formats Para obtener más información sobre la utilización de Unicode con DB2, consulte el manual Administration Guide, apéndice de Soporte de idioma nacional (NLS): "Soporte de Unicode en DB2 UDB". ------------------------------------------------------------------------ Conexión con sistemas principales Tabla de contenido parcial * DB2 Connect User's Guide o 40.1 Aumento de la velocidad de transferencia de datos de DB2 Connect + 40.1.1 Bloques de consulta extra + 40.1.2 Window Scaling del RFC-1323 * Suplemento de conectividad o 41.1 Configuración del servidor de aplicaciones en un entorno VM o 41.2 Valores de PATCH1 y PATCH2 para configuración de CLI/ODBC/JDBC ------------------------------------------------------------------------ DB2 Connect User's Guide ------------------------------------------------------------------------ 40.1 Aumento de la velocidad de transferencia de datos de DB2 Connect Mientras que el bloqueo de filas del conjunto de resultados de una consulta no es nada nuevo, DB2 para z/OS (anteriormente llamado DB2 para OS/390) tenía, desde el release de la Versión 6.1, la posibilidad de devolver varios bloques de consulta en respuesta a una petición OPEN o FETCH efectuada a un cliente remoto, como por ejemplo DB2 Connect. En lugar de enviar repetidamente peticiones al servidor DB2 para z/OS, solicitando un bloque de datos de fila cada vez, ahora el cliente puede solicitar, opcionalmente, que el servidor le envíe un número adicional de bloques de consulta. Estos bloques de consulta adicionales reciben el nombre de bloques de consulta extra. Esta nueva característica permite que el cliente minimice el número de rodeos por la línea de la red, lo cual tiene un importante efecto sobre el rendimiento de la red. La disminución en el número de peticiones de bloques de consulta enviadas por el cliente al servidor se traduce en un incremento significativo del rendimiento, puesto que la conmutación entre un envío y una petición es una operación cara en términos de rendimiento. Ahora, DB2 Connect se puede aprovechar de esta mejora en el rendimiento solicitando bloques de consulta extra, por omisión, a un servidor DB2 para z/OS. Para aprovecharse plenamente de la devolución de bloques de consulta extra (cada uno de los cuales puede llegar a tener una longitud de 32 Kbytes) para el protocolo de red preferido de TCP/IP, también se han habilitado las extensiones de Window Scaling tal como se realiza en el RFC-1323 de DB2 Connect. Esta característica permite que TCP/IP ajuste de forma dinámica y eficaz los tamaños de las ventanas de envío y recepción para acoger las grandes cantidades potenciales de datos devueltas por medio de los bloques de consulta extra. 40.1.1 Bloques de consulta extra El soporte de bloques de consulta extra en servidores DB2 para z/OS en las Versiones 6.1 o posteriores se configura por medio del parámetro EXTRA BLOCKS SRV del panel de instalación de DB2 DDF. Este parámetro controla el número máximo de bloques de consulta extra que DB2 puede devolver a un cliente para una petición, y se puede establecer con un valor entre 0 y 100. Si el valor de este parámetro se establece en 0, se inhabilita la devolución de bloques de consulta extra. Se debe utilizar el valor por omisión, que es de 100, para obtener el máximo provecho de esta característica, salvo las posibles idiosincrasias de la red que hagan que este valor sea inferior al ideal. En la parte del cliente, en que la aplicación accede a DB2 para z/OS directamente a través de una instalación DB2 Connect co-ubicada, o a través de una instalación de servidor DB2 Connect separada, existen diversos métodos para activar el soporte de DB2 Connect correspondiente en base al cursor o a las sentencias, mediante el uso de: * Un tamaño de conjunto de filas de consulta para un cursor * La cláusula 'OPTIMIZE for N ROWS' en la sentencia de selección asociada a un cursor * La cláusula 'FETCH FIRST N ROWS ONLY' en la sentencia de selección asociada a un cursor. La opción 1 no se trata en este apartado porque ya se había implantado formando parte de DB2 para z/OS Scrollable Support en el FixPak 2 de DB2 Connect Versión 7.1. Aquí nos centramos en el uso de las opciones 2 y 3, en lugar de habilitar el soporte de bloques de consulta extra utilizando distintas API de SQL, del modo siguiente: 1. SQL incorporado o Invoque al soporte de bloques de consulta extra para una consulta especificando la cláusula 'OPTIMIZE for N ROWS' y/o la cláusula 'FETCH FIRST N ROWS ONLY' en la propia sentencia de selección. o Con la cláusula 'OPTIMIZE for N ROWS', DB2 para z/OS intentará bloquear el número de filas deseado para devolverlo a DB2 Connect, sujeto al valor del parámetro de instalación EXTRA BLOCKS SRV DDF. La aplicación puede elegir que se capturen más allá de N filas, puesto que DB2 para z/OS no limita a N el número total de filas que se pueden devolver, finalmente, para el conjunto de resultados de la consulta. o La cláusula 'FETCH FIRST N ROWS ONLY' funciona de forma parecida, excepto en que DB2 para z/OS limita a N el conjunto de resultados de la consulta. Si se capturan más allá de N filas, se producirá un código +100 de SQL (fin de datos). 2. CLI/ODBC o Invoque al soporte de bloque de consultas extra para una consulta mediante su atributo de sentencia SQL_MAX_ROWS. o DB2 Connect identificará la cláusula 'OPTIMIZE for N ROWS' para un servidor DB2 para z/OS 6.x. Aunque DB2 para z/OS no limita el número de filas que se pueden devolver finalmente para el conjunto de resultados de la consulta, CLI/ODBC devolverá SQL_NO_DATA_FOUND a la aplicación si se intenta capturar más allá de N filas. o En su lugar se utiliza la cláusula 'FETCH FIRST N ROWS ONLY' para un servidor DB2 para z/OS 7.1 o posteriores. De forma parecida al caso del SQL incorporado, DB2 para z/OS limita el conjunto de resultados de la consulta a N filas. Si se capturan más allá de N filas, se producirá SQL_NO_DATA_FOUND. 3. JDBC o Invoque al soporte de bloque de consultas extra para una consulta mediante el método setMaxRows. De forma parecida a la habilitación de CLI/ODBC, DB2 Connect identificará la cláusula 'OPTIMIZE for N ROWS' para un servidor DB2 para z/OS Versión 6.x , y la cláusula 'FETCH FIRST N ROWS ONLY' para un servidor DB2 para z/OS Versión 7.1 o posteriores. 40.1.2 Window Scaling del RFC-1323 Se soporta Window Scaling como parte del Fixpak 4 en todas las plataformas Windows y UNIX que soportan las extensiones del RFC-1323 para TCP/IP. Se puede habilitar esta característica en DB2 para Windows y UNIX por medio de la variable de registro DB2SORCVBUF de DB2. Para habilitar Window Scaling, establezca la variable de registro DB2SORCVBUF de DB2 con cualquier valor por encima de 64 K (por ejemplo, en DB2 para Windows o UNIX, puede emitir db2set DB2SORCVBUF =65537). Los tamaños máximos de los almacenamientos intermedios de envío y recepción dependen del sistema operativo en concreto. Para asegurarse de que se han aceptado los tamaños de almacenamiento intermedio configurados, el usuario puede establecer el parámetro de configuración DIAGLEVEL del gestor de bases de datos en 4 (informativo) y ver si hay mensajes en el archivo db2diag.log. Para que Window Scaling surta efecto, tiene que estar habilitado en ambos extremos de una conexión. Por ejemplo, para habilitar Window Scaling entre la estación de trabajo DB2 Connect y el sistema principal, esta característica debe estar activa tanto en la estación de trabajo como en el sistema principal, ya sea directamente a través de la pila TCP/IP del sistema operativo o indirectamente a través del producto DB2. Por ejemplo, para DB2 para z/OS, actualmente sólo se puede activar Window Scaling a través del sistema operativo, estableciendo TCPRCVBUFRSIZE con cualquier valor por encima de 64 K. Si se utiliza un cliente DB2 remoto para acceder al DB2 del sistema principal a través de una estación de trabajo servidor DB2 Connect, también se puede habilitar Window Scaling en el cliente. Del mismo modo, también se puede habilitar Window Scaling entre un cliente DB2 remoto y un servidor DB2 de estación de trabajo cuando no haya ningún sistema principal DB2 implicado. Aunque Window Scaling ha sido diseñado para mejorar el rendimiento de la red, la mejora esperada en dicho rendimiento no siempre se materializa. Una vez que se ha habilitado Window Scaling, la interacción de factores tales como el tamaño de trama utilizado para el adaptador de LAN Ethernet o de Red en anillo, el tamaño de MTU de IP y otros valores establecidos en direccionadores del enlace de comunicación, pueden ocasionar incluso una disminución del rendimiento. Por omisión, Window Scaling está inhabilitado con los almacenamientos intermedios de envío y recepción establecidos con 64 K. El usuario deberá estar preparado para valorar el impacto de una activación de Window Scaling y para realizar los ajustes necesarios en la red. Para ver una introducción al ajuste de la red a fin de obtener un rendimiento mejorado de la misma, consulte el documento que se encuentra en http://www.networking.ibm.com/per/per10.html. ------------------------------------------------------------------------ Suplemento de conectividad ------------------------------------------------------------------------ 41.1 Configuración del servidor de aplicaciones en un entorno VM Añada la frase siguiente después de la primera (y única) frase de la sección "Suministro de información de la red", subsección "Definición del servidor de aplicaciones": RDB_NAME se proporciona en SQLSTART EXEC como el parámetro DBNAME. ------------------------------------------------------------------------ 41.2 Valores de PATCH1 y PATCH2 para configuración de CLI/ODBC/JDBC El controlador CLI/ODBC/JDBC se puede configurar mediante el Asistente de configuración del cliente o el ODBC Driver Manager (si está instalado en el sistema) o editando manualmente el archivo db2cli.ini. Para obtener más detalles, consulte el manual Suplemento de instalación y configuración o el manual CLI Guide and Reference. El comportamiento por omisión del controlador DB2 CLI/ODBC puede modificarse especificando valores para las palabras clave PATCH1 y PATCH2 mediante el archivo db2cli.ini o mediante las API CLI SQLDriverConnect() o SQLBrowseConnect(). La palabra clave PATCH1 se especifica añadiendo todas las palabras clave que el usuario desea establecer. Por ejemplo, si se especificasen los parches 1, 2 y 8, PATCH1 tendría el valor 11. A continuación encontrará una descripción de cada valor de la palabra clave y su efecto en el controlador: 1 - Hace que el controlador busque "count(exp)" y lo sustituya por "count(distinct exp)". Es necesario porque algunas versiones de DB2 soportan la sintaxis "count(exp)" y esta sintaxis la generan algunas aplicaciones ODBC. Es necesario para aplicaciones Microsoft cuando el servidor no soporta la sintaxis "count(exp)". 2 - Algunas aplicaciones ODBC se interrumpen cuando se devuelve SQL_NULL_DATA en la función SQLGetTypeInfo() para las columnas LITERAL_PREFIX o LITERAL_SUFFIX. Esto fuerza al controlador a devolver una serie vacía en su lugar. Es necesario para Impromptu 2.0. 4 - Fuerza al controlador a tratar los datos de indicación de la hora de entrada como datos de fecha si la parte de la hora y la fracción de la indicación de la hora son cero. Necesario para Microsoft Access. 8 - Fuerza al controlador a tratar los datos de indicación de la hora de entrada como datos de hora si la parte de fecha de la indicación de la hora es 1899-12-30. Necesario para Microsoft Access. 16 - No utilizado. 32 - Fuerza al controlador a no devolver información acerca de las columnas SQL_LONGVARBINARY y SQL_LONGVARGRAPHIC. Para la aplicación, parece como si no estuviesen soportados los campos largos. Necesario para Lotus 123. 64 - Fuerza al controlador a terminar en NULL las series de salida gráficas. Necesario para Microsoft Access en un entorno de doble byte. 128 - Fuerza al controlador a dejar que la consulta "SELECT Config, nValor FROM MSysConf" vaya al servidor. Actualmente el controlador devuelve un error con el valor SQLSTATE asociado de S0002 (tabla no encontrada). Es necesario si el usuario ha creado esta tabla de configuración en la base de datos y desea que la aplicación acceda a ella. 256 - Fuerza al controlador a devolver primero las columnas de clave primaria primero en la llamada SQLStatistics(). Actualmente, el controlador devuelve los índices clasificados por nombre de índice, que es el comportamiento estándar de ODBC. 512 - Fuerza al controlador a devolver FALSE en SQLGetFunctions() para SQL_API_SQLTABLEPRIVILEGES y SQL_API_SQLCOLUMNPRIVILEGES. 1024 - Fuerza al controlador a devolver SQL_SUCCESS en lugar de SQL_NO_DATA_FOUND en SQLExecute() o SQLExecDirect() si la sentencia UPDATE o DELETE ejecutada no afecta a ninguna fila. Necesario para aplicaciones Visual Basic. 2048 - No se utiliza. 4096 - Fuerza al controlador a no emitir COMMIT después de cerrar un cursor cuando se está en modalidad de confirmación automática. 8192 - Fuerza al controlador a devolver un conjunto de resultados adicional después de invocar un procedimiento almacenado. Este conjunto de resultados es un conjunto de resultados de una fila que consta de los valores de salida del procedimiento almacenado. Pueden acceder a él aplicaciones Powerbuild. 32768 - Fuerza al controlador a realizar trabajos de aplicaciones de consulta Microsoft con sinónimos DB2 MVS. 65536 - Fuerza al controlador a insertar manualmente una "G" delante de los literales de caracteres que son de hecho literales gráficos. Este parche debe suministrarse siempre cuando se trabaja en un entorno de doble byte. 131072 - Fuerza al controlador a describir una columna de indicación de la hora como una columna CHAR(26) cuando forma parte de un índice exclusivo. Necesario para aplicaciones Microsoft. 262144 - Fuerza al controlador a usar la tabla del seudocatálogo db2cli.procedures en lugar de las tablas SYSCAT.PROCEDURES y SYSCAT.PROCPARMS. 524288 - Fuerza al controlador a usar SYSTEM_TABLE_SCHEMA en lugar de TABLE_SCHEMA cuando se efectúa una consulta de tabla del sistema a un sistema DB2/400 V3.x. Esto da como resultado un mejor rendimiento. 1048576 - Fuerza al controlador a tratar una serie de longitud cero mediante SQLPutData() como SQL_NULL_DATA. La palabra clave PATCH2 difiere de la palabra clave PATCH1. En este caso, se especifican múltiples parches utilizando comas como separadores. Por ejemplo, si se han especificado los parches 1, 4 y 5, PATCH2 tendría un valor de "1,4,5". A continuación encontrará una descripción de cada valor de la palabra clave y su efecto en el controlador: 1 - Fuerza al controlador a convertir a mayúsculas el nombre del procedimiento almacenado de una sentencia CALL. 2 - No se utiliza. 3 - Fuerza al controlador a convertir a mayúsculas todos los argumentos para llamadas de esquema. 4 - Fuerza al controlador a devolver el conjunto de resultados como en la Versión 2.1.2 para llamadas a esquemas (es decir, SQLColumns(), SQLProcedureColumns(), etcétera) en lugar de devolver el conjunto de resultados como en la Versión 5 como conjunto de resultados. 5 - Fuerza al controlador a no optimizar el proceso de columnas VARCHAR de entrada, en las que el puntero para los datos y el puntero para la longitud son consecutivos en la memoria. 6 - Fuerza al controlador a devolver el mensaje que indica que los cursores desplazables no están soportados. Es necesario para programas Visual Basic si el cliente DB2 es de la Versión 5 y el servidor es DB2 UDB Versión 5. 7 - Fuerza al controlador a correlacionar todos los tipos de datos de columnas GRAPHIC con los tipo de datos de columnas CHAR. Es necesario en un entorno de doble byte. 8 - Fuerza al controlador a ignorar los argumentos de búsqueda del catálogo en llamadas a esquemas. 9 - No confirma en el Cierre rápido de un cursor 10 - No se utiliza 11 - Informa de que el nombre del catálogo está soportado, (procedimientos almacenados VB) 12 - Elimina las comillas de los argumentos de llamadas a esquemas, (Visual Interdev) 13 - No añade palabras clave de db2cli.ini a la serie de conexión de salida 14 - Ignora el nombre de esquema en SQLProcedures() y SQLProcedureColumns() 15 - Utiliza siempre el punto como separador decimal en salida de caracteres 16 - Fuerza la devolución de información de descripción para cada apertura 17 - No devuelve nombres de columnas en la descripción 18 - Intenta sustituir los literales por marcadores de parámetros 19 - Actualmente, DB2 MVS V4.1 no soporta la sintaxis ODBC en la que están permitidos los paréntesis en la cláusula ON de una cláusula de unión exterior. La activación de esta PATCH2 hará que el controlador IBM DB2 ODBC desmiembre los paréntesis cuando la cláusula de unión exterior esté en una secuencia de escape ODBC. Esta PATCH2 sólo debe utilizarse en DB2 MVS 4.1. 20 - Actualmente, DB2 en MVS no soporta el predicado BETWEEN con marcadores de parámetros como operandos (expresión ? BETWEEN ?). La activación de este parche provocará que el Controlador IBM ODBC vuelva a escribir el predicado como (expresión >= ? y expresión <= ?). 21 - Establece todos los parámetros de sólo OUTPUT para procedimientos almacenados en SQL_NULL_DATA 22 - Esta PATCH2 hace que el controlador IBM ODBC informe de la unión OUTER como no soportada. Es para la aplicación que genera SELECT DISTINCT col1 u ORDER BY col1 cuando utiliza una sentencia de unión externa donde col1 tiene una longitud superior a 254 caracteres y hace que DB2 UDB devuelva un error (ya que DB2 UDB no soporta columnas superiores a 254 bytes en este uso 23 - No optimiza la entrada para parámetros vinculados con cbColDef=0 24 - Solución de Access para correlacionar valores de Tiempo como Caracteres 25 - Solución de Access para columnas decimales - elimina los ceros de cola en la representación de char 26 - No devuelve sqlcode 464 a la aplicación - indica que se devuelven conjuntos de resultados 27 - Fuerza SQLTables para que utilice el valor de palabra clave TABLETYPE, incluso si la aplicación especifica un valor válido 28 - Describe columnas reales como columnas dobles 29 - Solución ADO para columnas decimales - elimina los ceros iniciales para los valores x, donde 1 > x > -1 (Sólo es necesario para algunas versiones de MDAC) 30 - Inhabilita la optimización de puesta en antememoria de procedimiento almacenado 31 - Informa de estadísticas para alias en la llamada a SQLStatistics 32 - Altera temporalmente el proceso 4 del código de razón sqlcode -727 33 - Devuelve la versión ISO de la indicación de la hora cuando se convierte a char (al contrario de la versión ODBC) 34 - Informa de las columnas CHAR FOR BIT DATA como CHAR 35 - Informa de un TABLENAME no válido cuando se solicita SQL_DESC_BASE_TABLE_NAME - optimización de sólo lectura ADO 36 - Reservado 37 - Reservado ------------------------------------------------------------------------ Información adicional Tabla de contenido parcial * Información adicional o 42.1 DB2 Everywhere ahora es DB2 Everyplace o 42.2 Características de acceso de DB2 UDB Versión 7 + 42.2.1 Entrada por teclado y navegación + 42.2.1.1 Entrada por teclado + 42.2.1.2 Foco del teclado + 42.2.2 Características para visualización accesible + 42.2.2.1 Modalidad de alto contraste + 42.2.2.2 Valores de font + 42.2.2.3 No dependencia del color + 42.2.3 Indicaciones de alerta alternativas + 42.2.4 Compatibilidad con tecnologías de asistencia + 42.2.5 Documentación accesible o 42.3 Ratón necesario o 42.4 Intento de vinculación desde los resultados de Cliente de tiempo de ejecución de DB2 en un error "Archivos de vinculación no encontrados" o 42.5 Search Discovery o 42.6 Ventanas de memoria para HP-UX 11 o 42.7 Desinstalación de DB2 DFS Client Enabler o 42.8 Autentificación de cliente en Windows NT o 42.9 Restricciones para sistemas federados o 42.10 Limitaciones federadas con tablas particionadas MPP o 42.11 Restricción para DataJoiner o 42.12 Gestor de catálogos de información en hebreo para Windows NT o 42.13 El SPM de SNA de DB2 no se inicia después de rearrancar Windows o 42.14 Requisitos de la cuenta de servicio para DB2 en Windows NT y Windows 2000 o 42.15 Necesidad de confirmar todos los programas definidos por el usuario que se utilizarán en el Centro de depósito de datos (DWC) o 42.16 Gestión de la antememoria de la parte de cliente en Windows NT o 42.17 Life Sciences Data Connect - Nuevos reiniciadores o 42.18 Mejora de SQL Assist o 42.19 Ayuda para los mandatos de copia de seguridad y restauración o 42.20 "Warehouse Manager" debe ser "DB2 Warehouse Manager" ------------------------------------------------------------------------ Información adicional ------------------------------------------------------------------------ 42.1 DB2 Everywhere ahora es DB2 Everyplace El nombre de DB2 Everywhere se ha cambiado por DB2 Everyplace. ------------------------------------------------------------------------ 42.2 Características de acceso de DB2 UDB Versión 7 La familia de productos DB2 UDB incluye varias características que hacen que los productos sean más accesibles a las personas con discapacidad. Estas características incluyen: * Características que facilitan la entrada por teclado y la navegación * Características que mejoran las propiedades de visualización * Opciones para indicaciones de alerta sonoras y visuales * Compatibilidad con tecnologías de asistencia * Compatibilidad con características de acceso del sistema operativo * Formatos de documentación accesibles 42.2.1 Entrada por teclado y navegación 42.2.1.1 Entrada por teclado El Centro de control de DB2 se puede utilizar usando únicamente el teclado. Los elementos de menú y controles proporcionan teclas de acceso que permiten a los usuarios activar un control o seleccionar un elemento de menú directamente desde el teclado. Estas teclas vienen documentadas por sí mismas, es decir las teclas de acceso están subrayadas en el control o menú en el que aparecen. 42.2.1.2 Foco del teclado En sistemas basados en UNIX, la posición del foco del teclado está resaltado, indicando qué área de la ventana está activa y el lugar donde tendrán efecto las pulsaciones del usuario. 42.2.2 Características para visualización accesible El Centro de control de DB2 tiene varias características que mejoran la interfaz de usuario y mejoran el acceso para los usuarios con una visión reducida. Estas mejoras de acceso incluyen el soporte de valores de alto contraste y propiedades de font personalizables. 42.2.2.1 Modalidad de alto contraste La interfaz del Centro de control soporta la opción de modalidad de alto contraste proporcionada por el sistema operativo. Esta característica ayuda a los usuarios que necesitan un mayor grado de contraste entre los colores del fondo y del primer plano. 42.2.2.2 Valores de font La interfaz del Centro de control permite a los usuarios seleccionar el color, el tamaño y el font para el texto de los menús y de las ventanas de diálogo. 42.2.2.3 No dependencia del color No es necesario que los usuarios distingan entre los colores para utilizar ninguna de las funciones de este producto. 42.2.3 Indicaciones de alerta alternativas El usuario puede optar por recibir alertas mediante indicaciones sonoras o visuales. 42.2.4 Compatibilidad con tecnologías de asistencia La interfaz del Centro de control de DB2 es compatible con aplicaciones de lector de pantalla como por ejemplo Via Voice. Cuando se está en modalidad de aplicación, la interfaz del Centro de control tiene las propiedades necesarias para que estas aplicaciones de acceso hagan que la información de la pantalla esté disponible para los usuarios ciegos. 42.2.5 Documentación accesible La documentación para la familia de productos DB2 está disponible en formato HTML. Esto permite que los usuarios vean la documentación de acuerdo con las preferencias de visualización establecidas en sus navegadores. También permite utilizar lectores de pantalla y otras tecnologías de asistencia. ------------------------------------------------------------------------ 42.3 Ratón necesario Para todas las plataformas excepto Windows, se necesita un ratón para utilizar las herramientas. ------------------------------------------------------------------------ 42.4 Intento de vinculación desde los resultados de Cliente de tiempo de ejecución de DB2 en un error "Archivos de vinculación no encontrados" Puesto que el Cliente de tiempo de ejecución de DB2 no tiene el conjunto completo de archivos de vinculación, la vinculación de herramientas de GUI no se puede llevar a cabo desde el cliente de tiempo de ejecución de DB2 y sólo se puede realizar desde DB2 Administration Client. ------------------------------------------------------------------------ 42.5 Search Discovery Search discovery sólo está soportado en soporte de difusión. Por ejemplo, search discovery no funcionará a través de un adaptador ATM. Sin embargo, esta limitación no se aplica a un discovery conocido. ------------------------------------------------------------------------ 42.6 Ventanas de memoria para HP-UX 11 Las ventanas de memoria sirven para los usuarios de máquinas grandes HP de 64 bits, que desean aprovechar la memoria compartida superior a 1,75 GB para aplicaciones de 32 bits. Las ventanas de memoria no son necesarias si está ejecutando la versión de 64 bits de DB2. Las ventanas de memoria hacen que esté disponible 1 GB de memoria compartida separado por proceso o grupo de procesos. Esto permite que una instancia tenga 1 GB propio de memoria compartida, más 0,75 GB de memoria global compartida. Si los usuarios desean aprovecharlo, pueden ejecutar múltiples instancias, cada una en su propia ventana. A continuación encontrará los requisitos previos y las condiciones para utilizar las ventanas de memoria: * Entorno DB2 EE o Parches: Extension Software 12/98 y PHKL_17795. o Debe establecerse la variable $DB2INSTANCE para la instancia. o Debe existir una entrada en el archivo /etc/services.window para cada instancia de DB2 que desee ejecutar bajo ventanas de memoria. Por ejemplo: instanciadb21 50 instanciadb22 60 Nota: Sólo puede haber un espacio entre el nombre y el ID. o Cualquier mandato DB2 que desee ejecutar en el servidor y que necesite más de una sola sentencia, debe ejecutarse utilizando el método de bucle de retorno TCP/IP. Esto es debido a que el shell terminará cuando las ventanas de memoria terminen el proceso de la primera sentencia. El servicio DB2 sabe como conseguirlo. o Cualquier mandato DB2 que desee ejecutar en una instancia que se ejecute en ventanas de memoria debe ir precedido de db2win (situado en sqllib/bin). Por ejemplo: db2win db2start db2win db2stop o Cualquier mandato de DB2 que se ejecute fuera de las ventanas de memoria (pero cuando estén en ejecución) debe devolver un 1042. Por ejemplo: db2win db2start <== OK db2 connect to db <==SQL1042 db2stop <==SQL1042 db2win db2stop <== OK * Entorno DB2 EEE o Parches: Extension Software 12/98 y PHKL_17795. o Debe establecerse la variable $DB2INSTANCE para la instancia. o La variable de registro DB2_ENABLE_MEM_WINDOWS debe establecerse en TRUE. o Debe existir una entrada en el archivo /etc/services.window para cada nodo lógico de cada instancia que desee ejecutar bajo ventanas de memoria. El primer campo de cada entrada debe ser el nombre de instancia concatenado con el número de puerto. Por ejemplo: === $HOME/sqllib/db2nodes.cfg for db2instance1 === 5 host1 0 7 host1 1 9 host2 0 === $HOME/sqllib/db2nodes.cfg for db2instance2 === 1 host1 0 2 host2 0 3 host2 1 === /etc/services.window on host1 === db2instance10 50 db2instance11 55 db2instance20 60 === /etc/services.window on host2 === db2instance10 30 db2instance20 32 db2instance21 34 o No debe preceder ningún mandato DB2 con db2win, que sólo debe utilizarse en un entorno EE. ------------------------------------------------------------------------ 42.7 Desinstalación de DB2 DFS Client Enabler Antes de desinstalar DB2 DFS Client Enabler, el usuario root debe asegurarse de que ningún archivo DFS esté en uso y de que ningún usuario tenga abierto un shell en el espacio de archivos DFS. Como root, emita el mandato siguiente: stop.dfs dfs_cl Compruebe que /... ya no esté montado: mount | grep -i dfs Si no lo hace así y se ha desinstalado DB2 DFS Client Enabler, deberá volver a arrancar la máquina. ------------------------------------------------------------------------ 42.8 Autentificación de cliente en Windows NT Se introduce una nueva variable de registro de DB2, DB2DOMAINLIST, para complementar el mecanismo de autentificación de cliente existente en el entorno Windows NT. Esta variable se utiliza en el servidor DB2 para Windows NT para definir uno o más dominios de Windows NT. Tan solo se aceptarán peticiones de conexión o enlace desde los usuarios que pertenecen a los dominios definidos en esta lista. Esta variable de registro sólo debe utilizarse bajo un dominio Windows NT puro con servidores y clientes DB2 que ejecuten la Versión 7 (o superior). Para obtener información sobre cómo establecer esta variable de registro, consulte la sección "Variables de registro y de entorno de DB2" en el manual Administration Guide: Performance. ------------------------------------------------------------------------ 42.9 Restricciones para sistemas federados A continuación se indican las restricciones aplicables a sistemas federados: * No se soportan los tipos de datos NCHAR, NVARCHAR2, NCLOB y BFILE de Oracle en consultas que impliquen apodos. * No se soportan los mandatos Crear opción de servidor, Alterar opción de servidor ni Eliminar opción de servidor desde el Centro de control. Para emitir cualquiera de estos mandatos, se debe utilizar el procesador de línea de mandatos (CLP). * Para las consultas que implican apodos, DB2 UDB no siempre se ajusta a la opción de configuración de bases de datos DFT_SQLMATHWARN. En cambio, DB2 UDB devuelve los errores aritméticos o avisos directamente desde la fuente de datos remota, independientemente del valor de DFT_SQLMATHWARN. * La sentencia CREATE SERVER no permite que la opción de servidor COLSEQ se establezca en 'I' para fuentes de datos que tienen secuencias de clasificación que no son sensibles a las mayúsculas y minúsculas. * La sentencia ALTER NICKNAME devuelve SQL0901N cuando se especifica una opción que no es válida. * Para fuentes de datos Oracle, Microsoft SQL Server y Sybase, los tipos de datos numéricos no se pueden correlacionar con el tipo de datos BIGINT de DB2. Por omisión, el tipo de datos número(p,s) de Oracle, en que 10 <= p <= 18 y s = 0, se correlaciona con el tipo de datos DECIMAL de DB2. ------------------------------------------------------------------------ 42.10 Limitaciones federadas con tablas particionadas MPP Cuando intente utilizar una sentencia de SQL para seleccionar datos de una fuente de datos e insertar, actualizar o suprimir directamente los datos en una tabla particionada MPP del servidor federado de DB2, recibirá el error SQL0901N. El funcionamiento federado no permite seleccionar a partir de un apodo ni insertar en una tabla particionada MPP. Una vez que aplique el FixPak 4 (o posteriores), podrá utilizar estos pasos para seleccionar datos e insertarlos en una tabla particionada MPP: 1. En el entorno de aplicaciones del cliente, exporte la variable de entorno DB2NODE para designar el nodo con el que siempre deberá conectar la aplicación. EXPORT DB2NODE=x donde x es el número de un nodo. 2. Cree un grupo de nodos que sólo contenga el nodo designado. CREATE NODEGROUP nombre_gruponodos ON NODE(x) donde x es el número del nodo. 3. Cree un espacio de tablas en el grupo de nodos. CREATE TABLESPACE nombre_espaciotablas IN NODEGROUP nombre_gruponodos 4. Cree una tabla temporal en el espacio de tablas. CREATE TABLE nombre_tabla_temp IN nombre_espaciotablas 5. Divida la operación INSERT de la aplicación en dos pasos: o INSERT INTO nombre_tabla_temp SELECT * FROM apodo o INSERT INTO tabla_particionada_MPP SELECT * from nombre_tabla_temp Al dividir la sentencia INSERT en dos sentencias, cambia la semántica de la sentencia a nivel de confirmación y retrotracción. Por ejemplo, en lugar de retrotraer una sentencia habrá que retrotraer dos. Asimismo, si cambia el número de nodo asociado a la variable de entorno DB2NODE, deberá invalidar el paquete de aplicación y realizar una nueva vinculación. Estos pasos permiten seleccionar datos de fuentes de datos e insertarlos en una tabla particionada MPP. Seguirá recibiendo el error SQL0901N cuando intente utilizar una sentencia para seleccionar datos de una fuente de datos y actualizar o suprimir los datos en una tabla particionada MPP. Esta restricción desaparecerá en DB2 Universal Database Versión 8. ------------------------------------------------------------------------ 42.11 Restricción para DataJoiner Las peticiones distribuidas emitidas dentro de un entorno federado están limitadas a las operaciones de sólo lectura. ------------------------------------------------------------------------ 42.12 Gestor de catálogos de información en hebreo para Windows NT El componente Gestor de catálogos de información está disponible en hebreo y se proporciona en el CD de DB2 Warehouse Manager para Windows NT. La traducción al hebreo se proporciona en un archivo zip llamado IL_ICM.ZIP y está ubicado en el directorio DB2\IL del CD de DB2 Warehouse Manager para Windows NT. Para instalar la traducción al hebreo del Gestor de catálogos de información, primero debe instalar la versión en inglés de DB2 Warehouse Manager para Windows NT y todos los requisitos previos en una versión de Windows NT que tenga habilitado el hebreo. Una vez que se haya instalado DB2 Warehouse Manager para Windows NT, desempaquete el archivo IL_ICM.ZIP desde el directorio DB2\IL en el mismo directorio en que se ha instalado DB2 Warehouse Manager para Windows NT. Asegúrese de que se proporcionen al programa unzip las opciones correctas para crear la estructura de directorios en el archivo zip. Una vez que se haya desempaquetado el archivo, la variable de entorno global LC_ALL se debe pasar de En_US a Iw_IL. Para cambiar este valor: 1. Abra el Panel de control de Windows NT y realice una doble pulsación en el icono Sistema. 2. En la ventana Propiedades del sistema, pulse sobre la pestaña Entorno, después localice la variable LC_ALL en el apartado Variables del sistema. 3. Pulse la variable para visualizar el valor en el recuadro de edición Valor. Cambie el valor de En_US por Iw_IL. 4. Pulse el botón Establecer. 5. Cierre la ventana Propiedades del sistema y el Panel de control. Ahora ya debe estar instalada la versión en hebreo del Gestor de catálogos de información. ------------------------------------------------------------------------ 42.13 El SPM de SNA de DB2 no se inicia después de rearrancar Windows Si está utilizando Microsoft SNA Server Versión 4 SP3 o posteriores, verifique que el SPM de SNA de DB2 se ha iniciado correctamente después de un rearranque. Vea si en el archivo \sqllib\\db2diag.log hay entradas parecidas a las siguientes: 2000-04-20-13.18.19.958000 Instance:DB2 Node:000 PID:291(db2syscs.exe) TID:316 Appid:none common_communication sqlccspmconnmgr_APPC_init Probe:19 SPM0453C Sync point manager did not start because Microsoft SNA Server has not been started. 2000-04-20-13.18.23.033000 Instance:DB2 Node:000 PID:291(db2syscs.exe) TID:302 Appid:none common_communication sqlccsna_start_listen Probe:14 DIA3001E "SNA SPM" protocol support was not successfully started. 2000-04-20-13.18.23.603000 Instance:DB2 Node:000 PID:291(db2syscs.exe) TID:316 Appid:none common_communication sqlccspmconnmgr_listener Probe:6 DIA3103E Error encountered in APPC protocol support. APPC verb "APPC(DISPLAY 1 BYTE)". Primary rc was "F004". Secondary rc was "00000000". Si existen entradas como éstas en db2diag.log y las indicaciones de la hora coinciden con la hora del rearranque más reciente, debe: 1. Invocar a db2stop. 2. Iniciar el servicio SnaServer (en caso de que aún no esté iniciado). 3. Invocar a db2start. Vuelva a comprobar el archivo db2diag.log para verificar que las entradas ya no están añadidas. ------------------------------------------------------------------------ 42.14 Requisitos de la cuenta de servicio para DB2 en Windows NT y Windows 2000 Durante la instalación de DB2 para Windows NT o Windows 2000, el programa de instalación crea varios servicios de Windows y asigna una cuenta de servicio para cada servicio. Para ejecutar DB2 correctamente, el programa de instalación otorga los siguientes derechos de usuario a la cuenta de servicio que está asociada con el servicio de DB2: * Actuar como parte del sistema operativo * Crear un objeto símbolo * Incrementar cuotas * Iniciar la sesión como un servicio * Sustituir un símbolo de nivel de proceso. Si desea utilizar una cuenta de servicio distinta para los servicios de DB2, deberá otorgar estos derechos de usuario a la cuenta de servicio. Además de estos derechos de usuario, la cuenta de servicio también debe tener acceso al directorio en el que esté instalado el producto DB2. La cuenta de servicio para el servicio DB2 Administration Server (servicio DB2DAS00) también debe tener la autorización para arrancar y detener otros servicios DB2 (es decir, la cuenta de servicio debe pertenecer al grupo de Usuarios de Power) y tener autorización SYSADM DB2 sobre todas las instancias de DB2 que administre. ------------------------------------------------------------------------ 42.15 Necesidad de confirmar todos los programas definidos por el usuario que se utilizarán en el Centro de depósito de datos (DWC) Si desea utilizar un procedimiento almacenado creado mediante DB2 Stored Procedure Builder como un programa definido por el usuario en el Centro de depósito de datos (DWC), debe insertar la sentencia siguiente en el procedimiento almacenado antes de la sentencia con.close();: con.commit(); Si no se inserta esta sentencia, las modificaciones que el procedimiento almacenado realice se retrotraerán cuando el procedimiento almacenado se ejecute desde el DWC. Para todos los programas definidos por el usuario en el DWC, es necesario confirmar explícitamente todas las funciones de DB2 incluidas para que las modificaciones entren en vigor en la base de datos; es decir, debe añadir las sentencias COMMIT a los programas definidos por el usuario. ------------------------------------------------------------------------ 42.16 Gestión de la antememoria de la parte de cliente en Windows NT Si un usuario intenta acceder a un archivo READ PERM DB que resida en una máquina servidor de Windows NT en la que está instalado DB2 Datalinks utilizando una unidad compartida que utiliza una señal válida, el archivo se abre tal y como se esperaba. Sin embargo, después de eso, las peticiones de apertura posteriores que utilizan la misma señal no llegan en realidad al servidor, sino que se da servicio a las mismas desde la antememoria del cliente. Incluso después de haber caducado la señal, el contenido del archivo sigue siendo visible para el usuario, puesto que la entrada sigue estando en la antememoria. Sin embargo, este problema no se produce si el archivo reside en una estación de trabajo Windows NT. Una solución sería definir la entrada de registro \\HKEY_LOCAL_MACHINE\SYSTEM \CurrentControlSet\Services\Lanmanserver\Parameters\EnableOpLocks en cero en el servidor de Windows NT. Con esta definición de registro, cada vez que se acceda a un archivo que reside en el servidor desde una estación de trabajo cliente por medio de una unidad compartida, la petición siempre llegará al servidor, en vez de recibir servicio desde la antememoria del cliente. Por tanto, la señal vuelve a validarse para todas las peticiones. El impacto negativo de esta solución es que afecta al rendimiento general para todos los accesos a archivos desde el servidor a través de unidades compartidas. Incluso con este valor, si se accede al archivo por medio de una correlación de unidad compartida en el propio servidor, a diferencia de lo que ocurre desde una máquina cliente diferente, parece que sigue dándose servicio a la petición desde la antememoria. Por tanto, la caducidad de la señal no tiene lugar. Nota: En todos los casos, si el acceso a archivo es un acceso local y no a través de una unidad compartida, la validación de señal y la posterior caducidad de señal se producirán tal y como se espera. ------------------------------------------------------------------------ 42.17 Life Sciences Data Connect - Nuevos reiniciadores Se han añadido dos nuevos reiniciadores a Life Sciences Data Connect. Uno para Documentum en AIX y otro para Excel en Windows NT. Asimismo, el reiniciador de archivos estructurado en tablas se ha llevado de AIX a Windows NT, Solaris, Linux y HP-UX. ------------------------------------------------------------------------ 42.18 Mejora de SQL Assist La herramienta SQL Assist ahora permite al usuario especificar un operador de unión distinto de "=" para uniones de tabla. El diálogo Tipo de unión (Join Type), que se inicia pulsando el botón Tipo de unión (Join Type) de la página Uniones (Joins) de la herramienta SQL Assist, se ha mejorado para incluir una lista desplegable de operadores de unión. Los operadores válidos son "=", "<>", "<", ">", "<=" y ">=". SQL Assist es una herramienta que ayuda al usuario en la creación de sentencias de SQL simples. Está disponible desde el Centro de mandatos (pestaña Interactivo), el Centro de control (diálogos Crear vista y Crear activador), Stored Procedure Builder (asistente "Inserción de procedimiento almacenado de SQL") y el Centro de depósito de datos (paso Proceso de SQL). ------------------------------------------------------------------------ 42.19 Ayuda para los mandatos de copia de seguridad y restauración Aparece información incorrecta cuando escribe db2 ? backup. La salida correcta es la siguiente: BACKUP DATABASE alias-basedatos [USER nombreusuario [USING contraseña]] [TABLESPACE (nombre-espaciotbl [ {,nombre-espaciotbl} ... ])] [ONLINE] [INCREMENTAL [DELTA]] [USE TSM [OPEN núm-ses SESSIONS]] | TO dir/disp [ {,dir/disp} ... ] | LOAD nombre-bib [OPEN núm-ses SESSIONS]] [WITH núm-almint BUFFERS] [BUFFER tamaño-almint ] [PARALLELISM n] [WITHOUT PROMPTING] Aparece información incorrecta cuando escribe db2 ? restore. La salida correcta es la siguiente: RESTORE DATABASE alias-basedatos-origen { opciones-restauración | CONTINUE | ABORT }"; opciones-restauración:"; [USER nombreusuario [USING contraseña]] [{TABLESPACE [ONLINE] |"; TABLESPACE (nombre-espaciotbl [ {,nombre-espaciotbl} ... ]) [ONLINE] |"; HISTORY FILE [ONLINE]}] [INCREMENTAL [ABORT]]"; [{USE TSM [OPEN núm-ses SESSIONS] |"; FROM dir/disp [ {,dir/disp} ... ] | LOAD bib-comp"; [OPEN núm-ses SESSIONS]}] [TAKEN AT fecha-hora] [TO directorio-destino]"; [INTO alias-basedatos-destino] [NEWLOGPATH directorio]"; [WITH núm-almint BUFFERS] [BUFFER tamaño-almint]"; [DLREPORT nombre-archivo] [REPLACE EXISTING] [REDIRECT] [PARALLELISM n]"; [WITHOUT ROLLING FORWARD] [WITHOUT DATALINK] [WITHOUT PROMPTING]"; ------------------------------------------------------------------------ 42.20 "Warehouse Manager" debe ser "DB2 Warehouse Manager" Todas las apariciones de la frase "Warehouse Manager" en las pantallas y en la documentación del producto deben decir "DB2 Warehouse Manager". ------------------------------------------------------------------------ Apéndices ------------------------------------------------------------------------ Apéndice A. Avisos Es posible que IBM no comercialice en todos los países algunos productos, servicios o características descritos en este manual. Consulte al representante local de IBM para obtener información sobre los productos y servicios que actualmente pueden adquirirse en su zona geográfica. Cualquier referencia a un producto, programa o servicio de IBM no pretende afirmar ni implicar que sólo se puede utilizar dicho producto, programa o servicio de IBM. En su lugar se puede utilizar cualquier producto, programa o servicio funcionalmente equivalente que no infrinja ninguno de los derechos de propiedad intelectual de IBM. Sin embargo, es responsabilidad del usuario evaluar y verificar el funcionamiento de cualquier producto, programa o servicio que no sea de IBM. IBM puede tener patentes o solicitudes de patentes en tramitación que afecten al tema tratado en este documento. La posesión de este documento no confiere ninguna licencia sobre dichas patentes. Puede realizar consultas sobre licencias escribiendo a: IBM Director of Licensing IBM Corporation North Castle Drive Armonk, NY 10504-1785 EE.UU. Para realizar consultas sobre licencias referentes a información de doble byte (DBCS), puede ponerse en contacto con el Departamento de Propiedad Intelectual de IBM en su país o escribir a: IBM World Trade Asia Corporation Licensing 2-31 Roppongi 3-chome, Minato-ku Tokyo 106, Japón El párrafo siguiente no es aplicable al Reino Unido ni a ningún país en el que tales disposiciones sean incompatibles con la legislación local: INTERNATIONAL BUSINESS MACHINES CORPORATION PROPORCIONA ESTA PUBLICACIÓN "TAL CUAL", SIN GARANTÍA DE NINGUNA CLASE, NI EXPLÍCITA NI IMPLÍCITA, INCLUIDAS, PERO SIN LIMITARSE A ELLAS, LAS GARANTÍAS IMPLÍCITAS DE NO VULNERACIÓN DE DERECHOS, COMERCIABILIDAD O IDONEIDAD PARA UN FIN DETERMINADO. Algunos estados no permiten la exclusión de garantías expresas o implícitas en determinadas transacciones, por lo que es posible que esta declaración no sea aplicable en su caso. Esta publicación puede contener inexactitudes técnicas o errores tipográficos. Periódicamente se efectúan cambios en la información aquí contenida; dichos cambios se incorporarán a las nuevas ediciones de la publicación. IBM puede efectuar, en cualquier momento y sin previo aviso, mejoras y/o cambios en los productos y/o programas descritos en esta publicación. Las referencias hechas en esta publicación a sitios Web que no son de IBM se proporcionan sólo para la comodidad del usuario y no constituyen un aval de esos sitios Web. La información contenida en esos sitios Web no forma parte de la información del presente producto IBM y el usuario es responsable de la utilización de esos sitios Web. IBM puede utilizar o distribuir cualquier información que se le facilite de la manera que considere adecuada, sin contraer por ello ninguna obligación con el remitente. Los licenciatarios de este programa que deseen obtener información sobre él con el fin de habilitar: (i) el intercambio de información entre programas creados de forma independiente y otros programas (incluido este) y (ii) el uso mutuo de la información intercambiada, deben ponerse en contacto con: IBM Canada Limited Office of the Lab Director 1150 Eglinton Ave. East North York, Ontario M3C 1H7 CANADÁ Dicha información puede estar disponible, sujeta a los términos y condiciones apropiados, incluido en algunos casos, el pago de una tarifa. El programa bajo licencia descrito en este manual y todo el material bajo licencia asociado a él, los proporciona IBM según los términos del Acuerdo de Cliente de IBM, el Acuerdo Internacional de Programas Bajo Licencia de IBM o cualquier acuerdo equivalente entre el usuario e IBM. Los datos de rendimiento contenidos en este documento se obtuvieron en un entorno controlado. Por tanto, los resultados obtenidos en otros entornos operativos pueden variar significativamente. Algunas mediciones pueden haberse hecho en sistemas experimentales y no es seguro que estas mediciones sean las mismas en los sistemas disponibles comercialmente. Además, algunas mediciones pueden haberse calculado mediante extrapolación. Los resultados reales pueden variar. Los usuarios del presente manual deben verificar los datos aplicables para su entorno específico. La información referente a productos que no son de IBM se ha obtenido de los proveedores de esos productos, de sus anuncios publicados o de otras fuentes disponibles públicamente. IBM no ha probado esos productos y no puede confirmar la exactitud del rendimiento, la compatibilidad ni cualquier otra afirmación referente a productos que no son de IBM. Las preguntas sobre las prestaciones de productos que no son de IBM deben dirigirse a los proveedores de esos productos. Todas las declaraciones de intenciones de IBM están sujetas a cambio o cancelación sin previo aviso, y sólo representan objetivos. Esta publicación puede contener ejemplos de datos e informes que se utilizan en operaciones comerciales diarias. Para ilustrarlos de la forma más completa posible, los ejemplos incluyen nombres de personas, empresas, marcas y productos. Todos estos nombres son ficticios y cualquier similitud con nombres y direcciones utilizados por una empresa real es totalmente fortuita. LICENCIA DE COPYRIGHT: Este manual puede contener programas de aplicaciones de ejemplo escritos en lenguaje fuente, que muestran técnicas de programación en diversas plataformas operativas. Puede copiar, modificar y distribuir estos programas de ejemplo de la forma que desee, sin pago alguno a IBM, con la intención de desarrollar, utilizar, comercializar o distribuir programas de aplicaciones de acuerdo con la interfaz de programación de aplicaciones correspondiente a la plataforma operativa para la que están escritos los programas de ejemplo. Estos ejemplos no se han probado exhaustivamente bajo todas las condiciones. Por tanto, IBM no puede asegurar ni implicar la fiabilidad, utilidad o función de estos programas. Cada copia o porción de estos programas de ejemplo o cualquier trabajo derivado debe incluir una nota de copyright como la siguiente: (C) (nombre de la empresa) (año). Partes de este código derivan de programas de ejemplo de IBM Corp. (C) Copyright IBM Corp. _especifique el año o años _. Reservados todos los derechos. ------------------------------------------------------------------------ A.1 Marcas registradas Los términos siguientes, que pueden estar indicados por un asterisco (*), son marcas registradas de International Business Machines Corporation en los Estados Unidos y/o en otros países. ACF/VTAM IBM AISPO IMS AIX IMS/ESA AIX/6000 LAN DistanceMVS AIXwindows MVS/ESA AnyNet MVS/XA APPN Net.Data AS/400 OS/2 BookManager OS/390 CICS OS/400 C Set++ PowerPC C/370 QBIC DATABASE 2 QMF DataHub RACF DataJoiner RISC System/6000 DataPropagator RS/6000 DataRefresher S/370 DB2 SP DB2 Connect SQL/DS DB2 Extenders SQL/400 DB2 OLAP Server System/370 DB2 Universal Database System/390 Distributed Relational SystemView Database Architecture VisualAge DRDA VM/ESA eNetwork VSE/ESA Extended Services VTAM FFST WebExplorer First Failure Support TechnologyWIN-OS/2 Los términos siguientes son marcas registradas de otras empresas: Microsoft, Windows y Windows NT son marcas registradas de Microsoft Corporation. Java, y las marcas registradas y logotipos basados en Java y Solaris, son marcas registradas de Sun Microsystems, Inc. en los Estados Unidos y/o en otros países. Tivoli y NetView son marcas registradas de Tivoli Systems Inc. en los Estados Unidos y/o en otros países. UNIX es una marca registrada en los Estados Unidos y/o en otros países bajo licencia exclusiva de X/Open Company Limited. Otros nombres de empresas, productos o servicios, que pueden estar indicados por un doble asterisco (**), pueden ser marcas registradas o marcas de servicio de otras empresas. ------------------------------------------------------------------------