Puede ver una instantánea de bloqueo utilizando uno de los mandatos siguientes:
db2text CONTROL LIST ALL LOCKS FOR DATABASE mibasedatos INDEX miíndice
db2text CONTROL LIST ALL LOCKS FOR DATABASE mibasedatos. Tenga en cuenta que sólo los índices que están realmente bloqueados están en la lista.
La primera vez que se bloquea un índice de texto, se reserva memoria para la base de datos y el índice de texto en los servicios de bloqueo. Si se bloquean más índices de texto, también se asigna memoria para estos índices en los servicios de bloqueo. Esta memoria sólo se libera de nuevo cuando se descarta el índice de texto, se inhabilita la base de datos o se reinician los servicios de Net Search Extender. Esto significa que el índice de texto o la base de datos consumen memoria de los servicios de bloqueo, aunque actualmente no haya ningún bloqueo establecido.
El mandato "db2text CONTROL CLEAR ALL LOCKS" fuerza la liberación de todos los bloqueos de una base de datos o índice. Vea CONTROL para obtener detalles sobre la utilización de este mandato. Tenga en cuenta que este mandato no libera memoria asignada a la base de datos o a los índices. Para liberar memoria, debe descartar el índice, inhabilitar la base de datos o reiniciar los servicios de Net Search Extender.
Los servicios de actualización se inician durante db2text start. Estos servicios actualizan el índice de texto automáticamente a las horas especificadas. Tenga en cuenta que el índice de texto no se sincroniza inmediatamente con la tabla del usuario.
Durante la creación del índice, se puede especificar la frecuencia con que los servicios de actualización comprueban si debe realizarse una actualización del índice utilizando el mandato siguiente:
db2text create index DB2EXT.TITLE for text on DB2EXT.TEXTTAB (TITLE) UPDATE FREQUENCY D(1,3) H(0,12) M(0) update minimum 5
En este ejemplo, esto significa que a las 12 y a las 24 horas de cada lunes y miércoles, se activarán los servicios de actualización y comprobarán si debe completarse algún trabajo en el índice db2ext.title. Tenga en cuenta que es necesario que existan como mínimo cinco cambios para que la actualización automática del índice pueda empezar la sincronización con la base de datos.
Vea CREATE INDEX para obtener más detalles sobre los parámetros.
En un entorno de base de datos particionada, los servicios de actualización sólo se inician en un nodo.
Nota |
---|
Al utilizar UPDATE FREQUENCY cada minuto hace que la carga de trabajo del sistema sea muy alta. Para evitarlo, sólo utilice UPDATE FREQUENCY en un número muy limitado de índices. |
Este capítulo proporciona información acerca de la creación y el mantenimiento de un índice de texto y explica las áreas siguientes:
También hay información sobre cómo evitar problemas en las páginas de códigos que pueden producirse y consideraciones acerca del rendimiento que puede ser necesario tener en cuenta.
Antes de crear un índice de texto, asegúrese de haber tenido en cuenta los requisitos previos que aparecen en el Chapter 4, Planificación. Entre otros requisitos previos para la indexación están el inicio de los Servicios de instancia de DB2 Net Search Extender mediante la utilización del mandato db2text start.
Para ver ejemplos sobre la creación de un índice de texto y cómo hacer posible que se pueda buscar en el texto, consulte el Chapter 3, Situaciones de usuario.
Nota |
---|
También puede crear y mantener un índice de texto utilizando el Centro de control de DB2. Consulte el Chapter 7, Utilización del Centro de control de DB2. |
A continuación se muestra un ejemplo de un mandato DB2 Net Search Extender:
db2text ENABLE DATABASE FOR TEXT
Nota |
---|
Los mandatos db2text como, por ejemplo, db2text ENABLE DATABASE FOR TEXT y db2text CREATE INDEX también se llaman mandatos. |
Sugerencia |
---|
Para cada mandato de creación y de mantenimiento de índice, puede especificar la base de datos, el usuario y la contraseña. db2text ... connect TO <base datos> USER <ID usuario> USING <contraseña> Tenga en cuenta que si omite las opciones de conexión del mandato db2text, la variable de entorno DB2DBDFT especifica la base de datos. |
Para visualizar una lista de los mandatos, ejecute el mandato siguiente:
db2text ?
Para visualizar la sintaxis de un mandato determinado, ejecute el mandato siguiente:
db2text ? mandato
Por ejemplo, para visualizar la sintaxis del mandato CREATE INDEX, utilice el mandato siguiente:
db2text ? CREATE INDEX
db2text devuelve un valor de 0 si el mandato se ha procesado satisfactoriamente y de 1 si el mandato no se ha procesado. Tenga en cuenta que, si hay errores en los documentos pero el índice se actualiza igualmente, el mandato db2text devolverá un valor de 0.
Nota |
---|
El shell del sistema interpreta los caracteres especiales como ?, (, ), *, ! y ". Por lo tanto, si el mandato contiene estos caracteres, utilice comillas o un carácter de escape. A continuación se muestra un ejemplo de un mandato de UNIX en el que se utilizan caracteres especiales: db2 "SELECT * FROM sample WHERE CONTAINS (DESCRIPTION, '\"enable\"') = 1" |
Resumen |
---|
|
Este mandato prepara la base de datos conectada para que DB2 Net Search Extender la utilice.
Este mandato también declara las funciones y procedimientos de búsqueda de DB2 Net Search Extender que se describen en el Chapter 15, Función de búsqueda escalar SQL y función de valor de tabla SQL.
Cuando se habilita una base de datos, se crean las siguientes tablas y vistas:
Para obtener información sobre todas las vistas, vea el Apéndice C, Catálogos de información de Net Search Extender.
Cuando una base de datos se ha habilitado, continúa habilitada hasta que se inhabilite.
Nota |
---|
Un ID de usuario delimitado distinto del ID de propietario de la instancia no funciona en las bases de datos particionadas. |