Administrador de Base de Datos DB2

Descargar como docx, pdf o txt
Descargar como docx, pdf o txt
Está en la página 1de 48

ANTES DE COMENZAR

Acerca de este tutorial


Este tutorial es el tercero de una serie de siete tutoriales que pueden ayudarle
a prepararse para la Certificación en Fundamentos DB2 9 (Examen 730). El
material de esta tutorial principalmente cubre los objetivos de la Sección 3 de la
prueba (vea Recursos para más información).
La instalación DB2 no se cubre en este tutorial. Si todavía no lo ha hecho, le
recomendamos especialmente que descargue e instale una copia de IBM DB2
Express-C (vea Recursos). Instalar DB2 le ayudará a entender muchos de los
conceptos que se prueban en el examen de Certificación en Fundamentos DB2
9.
Después de haber instalado el producto DB2 usted deseará obtener una base
de datos que esté funcional y operando, tan rápido como sea posible. Este
tutorial le ofrece una introducción a los objetos que constituyen una base de
datos DB2 y a los diferentes factores que afectan la forma en que se crea la
base de datos. Después de una breve introducción a los objetos DB2,
examinaremos las diferentes herramientas para crear, acceder y manipular
objetos DB2.
Objetivos
Después de completar este tutorial, usted deberá estar en capacidad de:
 Crear usted mismo(a) una base de datos DB2
 Catalogarla para que otros usuarios la utilicen
 Examinar y manipular los objetos que hay al interior de esa base de
datos.
Requisitos previos
El proceso de instalar DB2 no se cubre en este tutorial. Si todavía no lo ha
hecho, le recomendamos especialmente que descargue e instale una copia de
DB2 Express-C (vea Recursos). Instalar DB2 le ayudará a entender muchos de
los conceptos que se prueban en el examen de Certificación en Fundamentos
de la Familia DB2 9. Si lo necesita, el IBM Support Portal for DB2 LUW tiene
recursos para ayudarle con el proceso de instalación (vea Recursos).
Requisitos de sistema
Usted no necesita tener una copia DB2 para completar este tutorial. No
obstante, aprovechará mejor el tutorial si descarga la versión gratuita de prueba
de IBM DB2 9 para trabajar conjuntamente con este tutorial (vea Recursos).
¿QUÉ CONSTITUYE UNA BASE DE DATOS DB2?
Los recursos lógicos, físicos y de desempeño de una base de datos
Una base de datos DB2 en realidad está formada por un conjunto de objetos.
Desde la perspectiva del usuario, una base de datos es una colección de tablas
que normalmente se relaciona de alguna forma.
Desde la perspectiva de un administrador de base de datos (DBA, ese es
usted), es un poco más complicado que eso. La base de datos real contiene
muchos de los siguientes objetos físicos y lógicos:
 Tablas, vistas, índices y esquemas
 Bloqueos, accionadores, procedimientos almacenados y paquetes
 Agrupaciones de almacenamiento intermedio, archivos de registro y
espacios de tabla
Algunos de estos objetos, como las tablas y las vistas, ayudan a determinar
cómo están organizados los datos. Otros objetos, como los espacios de tabla,
se refieren a la implementación física de la base de datos. Finalmente, algunos
objetos como las agrupaciones de almacenamiento intermedio y otros objetos
de memoria, solo se relacionan con cómo se administra el desempeño de la
base de datos.
El DBA primero debe concentrarse en la implementación física de la base de
datos, más que en considerar todas las combinaciones posibles de parámetros
y objetos. ¿Cómo crea usted una base de datos y cómo asigna el espacio en
disco requerido para eso? Para responder adecuadamente a esa pregunta
usted necesita conocer sobre los objetos básicos de la base de datos y cómo
se correlacionan con el almacenamiento físico en disco.
El modelo de almacenamiento DB2
El DB2 tiene tanto un modelo lógico como uno físico para manejar los datos.
Los datos efectivos con los que tratan los usuarios se encuentran en tablas.
Aunque las tablas pueden estar conformadas por columnas y filas, el usuario
no conoce la representación física de los datos. A este hecho se le llama
algunas veces la independencia física de los datos.
Por su parte, las tablas se ubican en espacios de tabla. Un espacio de tabla es
usado como una capa entre la base de datos y los objetos de contenedor que
contienen los datos de la tabla efectiva. Un espacio de tabla puede contener
más de una tabla.
Un contenedor es un dispositivo físico de almacenamiento. Este puede
identificarse por un nombre de directorio, un nombre de dispositivo, o un
nombre de archivo. Un contenedor es asignado a un espacio de tabla. Un
espacio de tabla puede abarcar muchos contenedores, lo cual significa que
usted puede superar limitaciones de sistema operativo que puedan limitar la
cantidad de datos que puede contener un contenedor. La relación entre todos
estos objetos se ilustra en la siguiente figura.
Figura 1. Modelo de almacenamiento DB2

Aunque una tabla es el objeto básico que se ubica dentro del espacio de tabla,
los DBA deben estar al tanto de los objetos adicionales que hay dentro del
sistema DB2 y sobre cómo están correlacionados con un espacio de tabla.
Tablas índices, campos extensos y espacios de tabla
Las tablas, los índices y los espacios extensos (llamados algunas veces
objetos binarios grandes o BLOBs) son objetos que se crean dentro de una
base de datos DB2. Estos objetos se correlacionan con un espacio de tabla
que a su vez se correlaciona con el almacenamiento físico en disco.
Una tabla es un conjunto de registros de datos sin orden. Consiste en
columnas y filas que generalmente se conocen como registros. Las tablas
pueden ser permanentes (base), temporales (declaradas) temporales
(derivadas). Desde la perspectiva del DBA, el espacio se asigna para cada uno
de estos objetos de tabla, pero en diferentes espacios de tabla.
Un índice es un objeto físico que está asociado con una tabla individual. Los
índices se utilizan para imponer el carácter único dentro de una tabla (esto es,
para garantizar que no haya valores duplicados) y para mejorar el desempeño
cuando se está recuperando información. Usted no necesita índices para
ejecutar sus enunciados SQL (Structured Query Language); Sin embargo, ¡sus
usuarios apreciarán su previsión al crear algunos de ellos para agilizar el
procesamiento de consultas!
Un campo extenso (o BLOB) es un tipo de datos que se encuentra en una
tabla. Este tipo de datos normalmente está compuesto por datos no
estructurados (una imagen, un documento, un archivo de audio) y normalmente
contiene una cantidad significativa de información. Almacenar este tipo de
datos dentro de una tabla podría conducir a costos adicionales excesivos al
momento de eliminar, insertar y manipular estos objetos. En lugar de
almacenarlos directamente en la fila de la tabla, se almacena un apuntador que
se enlaza con un punto de un espacio de tabla Grande (conocido anteriormente
como un espacio de tabla de Campo Grande). Los DBA necesitan estar alerta a
este tipo de datos, para que puedan crear los espacios de tabla apropiados
para que contengan estos objetos.
Otro tipo especial de datos es el XML (eXtensible Markup Language). El XML
es un tipo de datos que puede ser almacenado en una fila o en un espacio de
tabla aparte similar a los objetos BLOB. El tipo de datos XML es único en
cuanto a que puede abarcar múltiples páginas de una tabla, mientras que otros
tipos de datos deben permanecer en la misma página que la fila. Un DBA
necesitará trabajar con los diseñadores de aplicación para determinar si los
objetos XML que se están almacenando en la tabla deben mantenerse en
páginas regulares (datos) o puestos en sus propios espacios de tabla
separados. Si la recuperación de información es un factor crítico, el DBA debe
usar un tamaño de página grande y mantener las columnas XML en el mismo
espacio de tabla que los datos regulares.
Armado(a) con el conocimiento de estos diferentes tipos de objeto ahora usted
está listo(a) para determinar los tipos de espacio que usted necesita asignar.
Espacios de tabla DMS y SMS
Los espacios de tabla son la capa lógica entre la base de datos y las tablas
almacenadas en esa base de datos. Los espacios de tabla se crean dentro de
una base de datos y las tablas se crean dentro de espacios de tabla. El DB2
soporta tres tipos de espacios de tabla:
 System-Managed Space (SMS): Aquí, el administrador de sistema de
archivos del sistema operativo asigna y administra el espacio. Antes de DB2 9,
crear una base de datos o espacio de tabla sin ningún parámetro daría como
resultado que todos los espacios de tabla se crearan como objetos SMS.
 Database-Managed Space (DMS): Aquí, el gestor de base de datos
controla el espacio de almacenamiento. Este espacio de tabla es, en esencia,
una implementación de un sistema de archivos de propósito especial, diseñado
para satisfacer mejor las necesidades del gestor de base de datos.
 Almacenamiento automático con DMS: El almacenamiento
automático realmente no es un tipo separado de espacio de tabla sino una
forma diferente de manejar el almacenamiento DMS. Los contenedores DMS
requieren más mantenimiento (vea la siguiente sección) y el Almacenamiento
Automático se introdujo en el DB2 V8.2.2 como una forma de simplificar la
administración de espacio.
Los espacios de tabla SMS requieren muy poco mantenimiento. No obstante,
los espacios de tabla SMS ofrecen menos opciones de optimización y pueden
no desempeñarse tan bien como los espacios de tabla DMS.
Así que, ¿cuál diseño de espacio de tabla elegiría usted?
SMS, DMS, y almacenamiento automático
Aunque la siguiente tabla no es exhaustiva, contiene algunas cosas para que
usted considere cuando esté decidiendo entre espacios de tabla SMS, DMS y
de almacenamiento automático.
Tabla 1. Comparando espacios de tabla SMS, DMS y de almacenamiento automático

Almacenamiento
Recurso SMS DMS automático

¿Escritura en
bandas? Sí Sí Sí
Almacenamiento
Recurso SMS DMS automático

Tipo
predeterminado Versión 8 No Versión 9

Administración Sistema
de objeto operativo DB2 DB2

Pre-asignado; el
tamaño puede
aumentar o se
puede contraer,
Crece/se pero requiere de Pre-asignado; puede
Asignación de contrae on- la intervención crecer
espacio demand del DBA. automáticamente.

Mejor; Buena, pero


requiere requiere algo de
poca o optimización (p. Mejor; requiere poca
Facilidad de ninguna ej.,EXTENTSIZE o ninguna
administración optimización PREFETCHSIZE ) optimización

Mejor; puede
lograr entre un
5 y un 10% de
ventaja sobre Mejor; aunque no
contenedores puede usar
Desempeño Muy bueno brutos contenedores brutos

Tamaño 64GB
máximo de (Página de 2TB (Página de
espacio en tabla 4K) 4K) 2TB (Página de 4K)

Además de la administración simplificada usando espacios de tabla SMS, la


diferencia más significativa entre los dos modelos de almacenamiento es el
tamaño máximo de un espacio de tabla. Usando SMS, el DBA está limitado a
ubicar un máximo de 64GB en un espacio de tabla. Esta cantidad se puede
aumentar cambiando el tamaño de página a 32K (512GB), a cambio de la
posibilidad de tener menos espacio utilizable en una página. Pasar a un modelo
DMS aumentará el límite de espacio de tabla a 2TB con un tamaño de página
de 4K. La cantidad de almacenamiento disponible puede crecer hasta 16TB
con un tamaño de página de 32K. Aunque hay otras formas de aumentar el
tamaño de una tabla más allá del límite de 64GB, el enfoque más simple sería
usar espacios de tabla DMS inicialmente.
DMS y el almacenamiento automático
El DB2 Versión 8.2.2 introdujo la noción de ALMACENAMIENTO
AUTOMÁTICO. El almacenamiento automático permite al DBA configurar la
base de datos con rutas de almacenamiento que se pueden usar para la
creación de todo el contenedor de espacio de tabla. En lugar de que el DBA
tenga que codificar explícitamente la ubicación y el tamaño de los espacios de
tabla, el sistema los asignará automáticamente. En DB2 9, las bases de datos
se crearán con almacenamiento Automático, a menos que el DBA
explícitamente altere esta configuración.
Las bases de datos que son activadas para almacenamiento automático tienen
un conjunto de una o más rutas de almacenamiento asociadas a ellas. Un
espacio de tabla puede definirse como "administrado por almacenamiento
automático" y sus contenedores asignados y definidos por DB2, con base en
esas rutas de almacenamiento. Una base de datos solo puede ser activada
para almacenamiento automático cuando se cree por primera vez. Usted no
puede activar el almacenamiento automático para una base de datos que
originalmente no haya sido definida para usarlo. De forma similar, usted no
puede desactivar el almacenamiento automático para una base de datos que
originalmente haya sido diseñada para usarlo.
La siguiente tabla resume algunas de las diferencias entre administrar
almacenamiento no automático y almacenamiento automático:

Tabla 2. Comparando almacenamiento no automático con almacenamiento automático

Almacenamiento
Recurso Almacenamiento no automático automático

Los contenedores
no pueden ser
proporcionados
explícitamente
cuando se crea el
espacio de tabla;
estos serán
definidos y se
Los contenedores deben ser asignados
Creación de proporcionados explícitamente cuando se automáticamente
contenedor cree el espacio de tabla. por el DB2.

Cambio de El cambio de tamaño automático de El cambio de


tamaño de espacios de tabla está desactivado tamaño automático
contenedor (AUTORESIZE NO) de forma de espacios de
predeterminada. tabla está activado
(AUTORESIZE
YES) de forma
Almacenamiento
Recurso Almacenamiento no automático automático

predeterminada.

El tamaño inicial
del espacio de
tabla se puede
El tamaño inicial del espacio de tabla no se especificar usando
puede especificar usando la cláusula la cláusula
Tamaño inicial INITIALSIZE. INITIALSIZE.

Las operaciones de
contenedor no se
pueden llevar a
cabo porque el
Las operaciones de contenedor pueden DB2 está en
llevarse a cabo usando el enunciado controla la
Modificación ALTER TABLESPACE (ADD, DROP, administración de
de contenedor BEGIN NEW STRIPE SET, y demás). espacio.

No se puede
utilizar una
operación de
restauración
dirigida para
redefinir los
contenedores
asociados al
espacio de tabla,
porque el DB2
Facilidad de Se puede utilizar una operación de controla la
administració restauración dirigida para redefinir los administración de
n contenedores asociados al espacio de tabla. espacio.

La principal razón para la introducción del modelo de almacenamiento


automático era simplificar la administración de espacios de tabla DMW
mientras se conservaban las características de desempeño. Habrá situaciones
en las que el DBA deba definir todas las características de los espacios de
tabla que se están usando, pero muchas aplicaciones se beneficiarán de la
administración reducida requerida con Almacenamiento Automático.
Resumen del modelo de almacenamiento DB2
Hemos cubierto bastante terreno en esta sección. Vamos a resumir lo que
hemos aprendido sobre las bases de datos DB2.
 Una base de datos es una colección de objetos, lo cual incluye tablas,
índices, vistas y objetos extensos.
 Estos objetos se almacenan en espacios de tabla, que a su vez están
formadas por contenedores.
 Los espacios de tabla pueden ser administrados por el sistema operativo
(SMS) o por el DB2 (DMS, Almacenamiento Automático).
 Usted decide qué tipo de espacio de tabla utilizar principalmente con
base en factores de desempeño y mantenimiento.
Ahora que usted es experto(a) en los diferentes tipos de espacios de tabla, es
hora de que cree su primera base de datos. La siguiente sección le mostrará
cómo.
CREANDO SU PRIMERA BASE DE DATOS
First Steps
Como parte del proceso de instalación del DB2, el panel First Steps se muestra
permitiéndole al usuario generar un número de bases de datos de muestra con
las cuales trabajar:
Figura 2. Panel First Steps del DB2

Seleccionar la opción Database Creation mostrará un menú adicional para


permitirle crear la base de datos SAMPLE, de muestra.
Figura 3. Panel Create Database
La mayoría de usuarios desearán crear la base de datos SAMPLE y usarla
para explorar los recursos del DB2. Este panel puede invocarse seleccionando
First Steps desde la carpeta Setup Tools en el grupo Program del DB2 (en
entornos Windows). Adicionalmente, emitir el comando db2sampl desde un
prompt de línea de comandos también generará la base de datos SAMPLE.
En cuanto el botón SAMPLE haya sido seleccionado, aparecerá un panel
adicional para determinar dónde se creará la base de datos SAMPLE.
Figura 4. Panel de creación de base de datos SAMPLE
Cuando esté creando la base de datos SAMPLE, se recomienda que
seleccione la opción XML and SQL objects and data . Esta opción generará la
base de datos en formato UTF-8 (Unicode) lo cual le permitirá manipular
objetos XML. Si usted no selecciona la opción XML, no podrá añadir objetos
XML a su base de datos SAMPLE.
Para más información sobre la herramienta First Steps, consulte los primeros
tutoriales de esta serie.
Pasemos a crear una base de datos DB2 sin usar una GUI.
Mi primera base de datos real
Crear una base de datos DB2 desde una línea de comandos es relativamente
simple. Para crear una base de datos usted debe invocar el DB2 Command
Line Processor (CLP). Esto se puede lograr seleccionando Command Line
Processor de la carpeta Command Line Tools en el DB2 Program Group (ver la
siguiente figura), o ejecutando el comando db2cmd db2 desde una línea de
comandos del sistema operativo. (Para más información sobre el Command
Line Processor, consulte el primer tutorial de esta serie).
Figura 5. Seleccione Command Line Processor

La sintaxis para crear una base de datos DB2 es la siguiente:


1 CREATE DATABASE MY1STDB
"¿Eso es todo?" se preguntará... ¡Eso es todo! El único elemento que se
requiere como parte del comando CREATE DATABASE es el nombre de la
base de datos. Las reglas para el nombre de la base de datos son:
 El nombre de la base de datos puede contener los siguientes caracteres:
a-z, A-Z, 0-9, @, # y $.
 El primer caracter debe ser un caracter alfabético, @, # o $; no puede
ser un número n i las secuencias de letras SYS, DBM ni IBM.
 Un nombre de base de datos o alias de base de datos es una cadena de
caracteres única que contiene entre uno y ocho letras, números o caracteres de
teclado del conjunto descrito arriba.
Desde luego, existen muchas otras opciones disponibles para usted; no solo
necesita ingresar un nombre. Vamos a examinar lo que en realidad ha pasado
como resultado de este comando.
¿Qué fue lo que creó DB2?
Cuando usted emitió el comando CREATE DATABASE, DB2 creó un número
de archivos. Estos archivos incluyen archivos de registro, información de
configuración, archivos de historial y tres espacios de tabla. Estos espacios de
tabla son:
 SYSCATSPACE: Aquí es donde se mantiene el catálogo de sistema
DB2, el cual hace seguimiento de los metadatos asociados con objetos DB2.
 TEMPSPACE1: Es un área de trabajo temporal donde DB2 puede poner
resultados inmediatos.
 USERSPACE1: Es un lugar donde residen todos los objetos de usuario
(tablas, índices) de forma predeterminada.
Todos estos archivos se ubican en el directorio DB2 que se encuentra en su
unidad predeterminada. La unidad predeterminada normalmente se encuentra
en el volumen en el que haya instalado el producto DB2.
Para aplicaciones simples, esta configuración predeterminada puede ser
suficiente para sus necesidades. No obstante, tal vez usted desee cambiar la
ubicación de sus archivos de base de datos, o cambiar la forma en la que el
DB2 administra estos objetos. Luego exploraremos más detalladamente el
comando CREATE DATABASE.
Un anuncio especial para las personas que están migrando desde DB2 Versión
8: Antes del DB2 9, un comando CREATE DATABASE creará espacios de
tabla SMS para todos los objetos listados arriba. En DB2 9, todos los espacios
de tabla serán definidos como espacios de tabla de Almacenamiento
Automático (DMS).
El comando CREATE DATABASE
La sintaxis completa del comando DB2 CREATE DATABASE puede encontrarse
en la Referencia de Comandos DB2, pero el siguiente diagrama ilustra la
mayoría de opciones en las que un DBA estaría interesado.
Listado 1. Comando CREATE DATABASE
1 >>-CREATE--+-DATABASE-+-database-name-+----------------------+-->
2            '-DB-------'               '-| Database options |-'
Listado 2. Opciones de base de datos
1 Create Database options:
2   
3 |--+----------------------------+------------------------------->
   '-AUTOMATIC STORAGE--NO|YES--'
4 >--+---------------------------------------------+-------------->
5    |     .-,---------.                           |
6
7
8    |     V           |                           |
9    '-ON----+-path--+-+--+----------------------+-'
10            '-drive-'    '-DBPATH ON--+-path--+-'
11                                      '-drive-'
>--+-----------------------+------------------------------------>
12    '-ALIAS--database-alias-'
13 >--+----------------------------------------------+------------->
14    '-USING CODESET--codeset--TERRITORY--territory-'
15 >--+-----------------------------------+------------------------>
16    |                .-SYSTEM---------. |
   '-COLLATE USING--+-COMPATIBILITY--+-'
17
                    +-IDENTITY-------+
18                     +-IDENTITY_16BIT-+
19                     +-UCA400_NO------+
20                     +-UCA400_LSK-----+
21                     +-UCA400_LTH-----+
                    '-NLSCHAR--------'
22
  
23
>--+---------------------------------------+-------------------->
24    '-CATALOG TABLESPACE--| tblspace-defn |-'
25 >--+------------------------------------+----------------------->
26    '-USER TABLESPACE--| tblspace-defn |-'
27 >--+-----------------------------------------+------------------>
28    '-TEMPORARY TABLESPACE--| tblspace-defn |-'
29
30
Listado 3. Definición de espacio de tabla
1 tblspace-defn:
2   
3 |--MANAGED BY--------------------------------------------------->
4   
                      .-,------------------.
5                       V                    |
6 >--+-SYSTEM USING--(----'container-string'-+--)--------------------------------+-->
7    |                    .-,-----------------------------------------------.    |
8    |                    V                                                 |    |
9    +-DATABASE USING--(----+-FILE---+--'container-string'--number-of-pages-+--)-+
   |                      '-DEVICE-'                                           |
10    '-AUTOMATIC STORAGE---------------------------------------------------------'
11   
12 >--+-----------------------------+------------------------------>
13    '-EXTENTSIZE--number-of-pages-'
14 >--+-------------------------------+---------------------------->
15    '-PREFETCHSIZE--number-of-pages-'
>--+---------------------+--+---------------------------------+->
16    '-AUTORESIZE--+-NO--+-'  '-INITIALSIZE--integer--+-K|M|G-+-'
17                  '-YES-'                           
18 >--+------------------------------------+----------------------->
19    '-INCREASESIZE--integer--+-PERCENT-+-'
20                             '-+-K|M|G-'
>--+-------------------------------+----------------------------|
21
   '-MAXSIZE--+-NONE-------------+-'
22               '-integer--+-K|M|G-'
23
24
25
26
En las siguientes secciones usted aprenderá cuáles son estas diferentes
opciones y cómo puede usarlas.
Ubicación de base de datos
Uno de los parámetros del comando CREATE DATABASE es la opción ON
path/drive . Esta opción le dice al DB2 dónde desea crear usted la base de datos.
Si la ruta no es especificada, la base de datos es creada en el valor
predeterminado de ruta de base de datos especificado en las configuraciones
del parámetro Database Manager (DFTDBPATH ).
Figura 6. Pantalla de configuración DBM

Por ejemplo, el siguiente comando CREATE DATABASE pone la base de datos en


el directorio TEST en la unidad D: de un sistema operativo Windows:
1 CREATE DATABASE MYDB ON D:\TEST
Seleccionar almacenamiento automático (el predeterminado) permite al DBA
configurar la base de datos con rutas de almacenamiento que puedan ser
usadas para la creación de todo el contenedor de espacio de tabla. En lugar de
que el DBA tenga que codificar explícitamente la ubicación y el tamaño de los
espacios de tabla, el sistema los asignará automáticamente. Por ejemplo, el
siguiente enunciado de creación de base de datos configurará almacenamiento
automático para todos los espacios de tabla de la base de datos.
Listado 4. Enunciado de creación de base de datos
1 CREATE DATABASE TEST
2     AUTOMATIC STORAGE ON
    /db2/storagepath001,
3     /db2/storagepath002,
4     /db2/storagepath003
5
6     AUTORESIZE YES
    INITIALSIZE 300 M
7     INCREASESIZE 75 M
8     MAXSIZE NONE
9
Después de la opción AUTOMATED STORAGE ON se muestran tres
directorios de archivos (rutas). Estas tres rutas son las ubicaciones donde
residen los contenedores de un espacio de tabla. El resto de las opciones son:
 AUTORESIZE YES
En el evento en que a un espacio de tabla se le agote el espacio, el sistema
extenderá automáticamente el tamaño de los contenedores.
 INITIALSIZE 300 M
Cualquier espacio de tabla definido sin tamaño inicial se predeterminará a 300
MB de tamaño. Los contenedores serán cada uno de 100 MB de tamaño
(existen tres rutas de almacenamiento).
 INCREASESIZE 75 M (o %)
En el evento en que al espacio de tabla se le agote el espacio, el espacio total
del espacio de tabla será aumentado en 75 M de tamaño. También se puede
especificar un porcentaje, en cuyo caso el espacio de tabla se aumentará en
tamaño como un porcentaje de su tamaño actual.
 MAXSIZE NONE
El tamaño máximo del espacio de tabla será ilimitado. Si el DBA desea poner
un límite a cuánto almacenamiento puede tener un espacio de tabla, pueden
hacerlo especificando un valor máximo.
Cuando un espacio de tabla se define usando AUTOMATIC STORAGE, no se
necesita suministrar ningún parámetro adicional:
1 CREATE TABLESPACE TEST MANAGED BY AUTOMATIC STORAGE;
Cualquiera de los parámetros asociados con un espacio de tabla pueden
ingresarse en este comando; no obstante, el uso de almacenamiento
automático puede simplificar considerablemente la rutina de mantenimiento de
espacios de tabla. Los espacios de tabla asociados con tablas grandes críticas
de producción probablemente requerirán más intervención del DBA.
Cuando se está creando un espacio de tabla en una base de datos que no esté
habilitada para almacenamiento automático, se debe especificar la cláusula
MANAGED BY SYSTEM o MANAGED BY DATABASE. Usar estas cláusulas
da como resultado la creación de un espacio de tabla tipo espacio administrado
por sistema (SMS) o un espacio de tabla tipo espacio administrado por base de
datos (DMS), respectivamente. En ambos casos se debe proporcionar una lista
de contenedores.
Si una base de datos está habilitada para almacenamiento automático, existe
otra opción. Se puede especificar la cláusula MANAGED BY AUTOMATIC
STORAGE, o se puede omitir la cláusula MANAGED BY completamente (lo
cual implica almacenamiento automático). En este caso no se suministran
definiciones de contenedor porque el DB2 asigna los contenedores
automáticamente.
Páginas de código y órdenes de clasificación
Una página de código de caracteres está asociada con todos los tipos de datos
de caracter DB2 (CHAR, VARCHAR, CLOB, DBCLOB). Se puede pensar en
una página de código como una tabla de referencia usada para convertir datos
alfanuméricos en los datos binarios que están almacenados en la base de
datos. Una base de datos DB2 solo puede usar una página de código. La
página de código se establece durante el comando CREATE DATABASE
usando las opciones CODESET y TERRITORY. La página de códigos puede usar
un byte individual para representar un caracter alfanumérico (un solo byte
puede representar 256 elementos únicos) o múltiples bytes.
los idiomas como el inglés contienen relativamente pocos caracteres únicos;
por lo tanto, una página de código de byte individual es suficiente para
almacenar datos. Idiomas como el japonés requieren más de 256 elementos
para representar todos sus caracteres únicos; por lo tanto requieren páginas de
códigos multi-bytes (normalmente páginas de doble byte).
De forma predeterminada, el orden de clasificación de una base de datos se
define de acuerdo al conjunto de códigos usado en el comando CREATE
DATABASE. Si usted especifica la opción COLLATE USING SYSTEM, los valores
de los datos son comparados con base en el TERRITORY especificado por la
base de datos. Si se usa la opción COLLATE USING IDENTITY , todos los valores
se comparan usando su representación binaria de forma byte por byte.
La Guía de Administración DB2 lista los diferentes códigos de página que hay
disponibles cuando se crea una base de datos. en la mayoría de las instancias,
un DBA dejará este valor predeterminado en el mismo que la página de
códigos del sistema operativo en el que se ejecutará la base de datos.
Un aviso especial para aquellas aplicaciones que requieran del uso de datos
XML. Actualmente el DB2 solo soporta columnas XML en una base de datos
que haya sido definida como Unicode (UTF-8). Si una base de datos no ha sido
creada con soporte Unicode, esta no podrá hacer que se creen columnas XML
en su interior.
Definiciones de espacio de tabla
Cada uno de nuestros tres espacios de tabla (SYSCATSPACE, TEMPSPACE1,
USERSPACE1)es creado automáticamente en el directorio predeterminado
(palabra clave ON) a menos que usted especifique su ubicación. Para cada
espacio de tabla el DBA puede especificar las características del sistema de
archivos que el espacio de tabla debe usar.
Los tres espacios de tabla se definen usando la siguiente sintaxis:
Listado 5. Definiciones de espacio de tabla
1 >--+---------------------------------------+-------------------->
2    '-CATALOG TABLESPACE--| tblspace-defn |-'
3    
4 >--+------------------------------------+----------------------->
5    '-USER TABLESPACE--| tblspace-defn |-'
6    
7 >--+-----------------------------------------+------------------>
   '-TEMPORARY TABLESPACE--| tblspace-defn |-'
8
Si se omite cualquiera de estas palabras clave, DB2 utilizará los valores
predeterminados para generar espacios de tabla. La definición de espacios de
tabla sigue estas opciones y tiene la siguiente sintaxis:
Listado 6. Opciones de definición de espacio de tabla
1 |--MANAGED BY--------------------------------------------------->
2    
3                       .-,------------------.
                      V                    |
4 >--+-SYSTEM USING--(----'container-string'-+--)--------------------------------+-->
5    |                    .-,-----------------------------------------------.    |
6    |                    V                                                 |    |
7
8    '-DATABASE USING--(----+-FILE---+--'container-string'--number-of-pages-+--)-'
9                           '-DEVICE-'
10    
>--+-----------------------------+------------------------------>
11    '-EXTENTSIZE--number-of-pages-'
12    
13 >--+-------------------------------+---------------------------->
14    '-PREFETCHSIZE--number-of-pages-'
15
Note que la anterior sintaxis no incluye las opciones asociadas con las bases
de datos de Almacenamiento Automático.
Observemos esta sintaxis detalladamente. La opción MANAGED BY le dice al
DB2 que genere estos espacios de tabla y que determine cómo se administrará
el espacio. Los espacios de tabla SMS usan la palabra claveSYSTEM USING,
así:
1 SYSTEM USING ('container string')
Para un espacio de tabla SMS, container string identifica uno o más
contenedores que pertenecerán al espacio de tabla y dentro de los cuales se
almacenarán los datos del espacio de tabla. Cada cadena de caracteres de
contenedor puede ser un nombre de directorio absoluto o relativo. El nombre
de directorio, si no es absoluto, es relativo al directorio de base de datos. Si
algún componente del nombre del directorio no existe, este es creado por el
gestor de base de datos. El formato de la cadena de caracteres del contenedor
depende del sistema operativo.
Los espacios de tabla DMS están definidos con la palabra clave DATABASE
USING:
1 DATABASE USING ( FILE/DEVICE 'container string' number of pages )
Para un espacio de tabla DMS, la cadena de caracteres del contenedor
identifica uno o más contenedores que pertenecerán al espacio de tabla y
dentro de los cuales se almacenarán los datos del espacio de tabla. El tipo del
contenedor ( FILE ni DEVICE ) y su tamaño (en páginas PAGESIZE ) son
especificados. El tamaño también puede ser especificado como un valor entero
seguido por K (por kilobytes), M (por megabytes) o G (por gigabytes). Usted
puede especificar una mezcla de contenedores FILE y DEVICE.
Para un contenedor FILE, la cadena de caracteres de contenedor debe ser un
nombre de archivo absoluto o relativo. El nombre de archivo, si no es absoluto,
es relativo al directorio de base de datos. Si algún componente del nombre del
directorio no existe, este es creado por el gestor de base de datos. Si el archivo
no existe, será creado e inicializado con el tamaño especificado por el gestor
de base de datos. Para un contenedor DEVICE, la cadena de caracteres de
contenedor debe ser un nombre de archivo y el dispositivo ya debe existir.
una nota importante: Todos los contenedores deben ser únicos a lo largo de
todas las bases de datos; un contenedor solo puede pertenecer a un espacio
de tabla.
1 EXTENTSIZE  número de páginas
EXTENSIZE especifica el número de páginas PAGESIZE que la base de datos
escribirá en un contenedor antes de pasar al siguiente contenedor. El
valor EXTENSIZE también puede ser especificado como un valor entero seguido
por K, M, o G. El gestor de base de datos hace ciclos repetidamente por los
contenedores a medida que los datos son almacenados.
1 PREFETCHSIZE número de páginas
PREFETCHSIZE especifica el número de páginas PAGESIZE que se leerán del
espacio de tabla cuando la pre-captura de datos se lleva a cabo. El valor del
tamaño de pre-captura también puede ser especificado como un valor entero
seguido por K, M, o G.
La pre-captura lee datos que necesita una consulta antes de que sean
referenciados por la consulta, de manera que la consulta no necesita esperar
que el sistema subyacente efectúe operaciones de E/S.
Comando CREATE DATABASE de muestra
El siguiente es un ejemplo de un comando CREATE DATABASE que utiliza
muchas de las opciones que hemos discutido en paneles anteriores.
Listado 7. Comando CREATE DATABASE
1
2 ( 1) CREATE DATABASE MY1STDB
3 ( 2)  DFT_EXTENT_SZ 4
( 3)  CATALOG TABLESPACE MANAGED BY DATABASE USING
4 ( 4)   (FILE 'C:\CAT\CATALOG.DAT' 2000, FILE 'D:\CAT\CATALOG.DAT' 2000)
5 ( 5)    EXTENTSIZE 8
6 ( 6)   PREFETCHSIZE 16
7 ( 7) TEMPORARY TABLESPACE MANAGED BY SYSTEM USING
8 ( 8)  ('C:\TEMPTS','D:\TEMPTS')
( 9) USER TABLESPACE MANAGED BY DATABASE USING
9 (10)   (FILE 'C:\TS\USERTS.DAT' 121)
10 (11)   EXTENTSIZE 24
11 (12)   PREFETCHSIZE 48
12
Observemos cada línea con más detalle:
1. CREATE DATABASE: Este enunciado define el nombre de base de datos
que estamos creando.
2. DFT_EXTENT_SZ 4: Este parámetro le dice al DB2 que el tamaño
predeterminado es 4 páginas, a menos que se especifique otra cosa
explícitamente.
3. CATALOG TABLEPSACE MANAGED BY DATABASE USING: El espacio de
catálogo DB2 será administrado por la base de datos.
4. FILE 'C:\....': La ubicación del espacio de tabla se dividirá entre dos
archivos, cada uno con 2.000 páginas de espacio.
5. EXTENTSIZE 8: El EXTENTSIZE será de 8 páginas.
6. PREFETCHSIZE 16: Durante el procesamiento de consulta se leerán 16
páginas de una sola vez.
7. TEMPORARY TABLESPACE MANAGED BY SYSTEM USING : El espacio temporal
usado por el DB2 será manejado por el sistema operativo.
8. 'C:\TEMPTS' ...: El espacio temporal se dividirá entre dos archivos, cuyo
tamaño se ajusta automáticamente durante la ejecución del DB2.
9. USER TABLESPACE MANAGED BY DATABASE USING: El espacio de usuario
(donde se ubican las tablas reales) será administrado por el DB2 directamente.
10. FILE 'C:\TS\...': solo hay un contenedor para este espacio y consiste de 121
páginas.
11. EXTENTSIZE 24: El EXTENTSIZE para la tabla USER será de 24 páginas.
12. PREFETCHSIZE 48: Las consultas pre-capturarán 48 páginas a la vez.
Resumen de creación de base de datos
Esta sección le proporcionó algo de experiencia sobre cómo crear una base de
datos DB2. en la mayoría de los casos, los valores predeterminados del
comando CREATE DATABASE le proporcionarán una base de datos que usted
utilizará para desarrollo y pruebas.
En cuanto usted decida poner una base de datos en producción, necesitará
esforzarse más en la ubicación de datos y en las definiciones de espacio de
tabla usadas por el DB2. Aunque esto puede necesitar más planificación, el
resultado final será una base de datos que es más fácil de administrar con un
mejor desempeño potencial.
CATALOGANDO SU BASE DE DATOS DB2
¿Por qué catalogar una base de datos?
El DB2 cataloga las bases de datos automáticamente cuando son creadas.
Cataloga una entrada para la base de datos en el directorio de base de datos
local y otra entrada en el directorio de base de datos de sistema. Si la base de
datos es creada desde un cliente remoto (o para un cliente que se esté
ejecutando desde una instancia diferente en la misma máquina), también se
hace una entrada en el directorio de base de datos en la instancia de cliente.
Entonces, ¿por qué se debe catalogar una base de datos? Sin esta
información, ¡las aplicaciones no pueden conectarse a una base de datos! El
DB2 tiene múltiples directorios que se utilizan para acceder a bases de datos.
Estos directorios le permiten al DB2 encontrar bases de datos que conozca,
estén estas en el sistema local o en un sistema remoto. El directorio de base de
datos de sistema contiene una lista e indicaciones de apuntador sobre dónde
se pueden encontrar cada una de las bases de datos. El directorio de nodo
contiene información relacionada con cómo y dónde se pueden encontrar los
sistemas o instancias. Para poner una entrada en cualquiera de estos
directorios, se utiliza un comando CATALOG. Para eliminar una entrada, se
usa un comando UNCATALOG.
El comando CATALOG
El comando CATALOG se diagrama a continuación.
Listado 8. comando CATALOG
1
2 >-CATALOG--+-DATABASE-+--database-name--+-----------+---------->
3            '-DB-------'                 '-AS--alias-'
4   
5 >--+-------------------+---------------------------------------->
   +-ON--+-path--+-----+
6    |     '-drive-'     |
7    '-AT NODE--nodename-'
8   
9 >--+--------------------------------------------------------------+-->
10    '-AUTHENTICATION--+-SERVER-----------------------------------+-'
11                      +-CLIENT-----------------------------------+
                     +-SERVER_ENCRYPT---------------------------+
12
                     +-KERBEROS TARGET PRINCIPAL--principalname-+
13                      +-DATA_ENCRYPT-----------------------------+
14                      '-GSSPLUGIN--------------------------------'
15   
16 >--+------------------------+---------------------------------->
17    '-WITH--"comment-string"-'
18
Catalogar una base de datos es algo relativamente sencillo. Normalmente este
paso no se requiere cuando usted ha creado una base de datos. No obstante,
es posible que usted necesite hacerlo si previamente ha descatalogado la base
de datos, si desea configurar un ALIAS (nombre alterno) para esta base de
datos, o si necesita acceder a esta base de datos desde un cliente.
Catalogando en el cliente
Un usuario que necesite conectarse a una base de datos DB2 debe catalogar
la base de datos en una estación de trabajo local. Para hacerlo, el usuario debe
usar el comando CATALOG o el DB2 Configuration Assistant (CA). El CA le
permite mantener una lista de bases de datos a las cuales sus aplicaciones
pueden conectarse. Este cataloga nodos y bases de datos mientras escuda al
usuario de las complejidades inherentes a estas tareas. (Para más información
sobre el Configuration Assistant, vea el primer tutorial de esta serie.)
Existen tres formas de catalogar una base de datos en un cliente:
 Configuración automática usando descubrimiento
 Configuración automática usando perfiles de acceso
 Configuración manual
Todos estos métodos se describen en este tutorial. Desde la perspectiva del
cliente, catalogar bases de datos usando un perfil o el descubrimiento es la
forma más fácil de hacerlo. La configuración manual requiere de conocer la
ubicación de la base de datos y su características, con el fin de ejecutar el
comando exitosamente.
Para usar cualquiera de las configuraciones automáticas, el DBA debe generar
perfiles para sus usuarios o establecer servicios de descubrimiento dentro de la
base de datos DB2. En este tutorial no entraremos en detalles sobre la
creación de ninguna de estas facilidades, pero le animamos a que lea el
manual de administración dB2 para más detalles sobre estos recursos.
Configuración automatizada usando descubrimiento
Si usted usa este tipo de configuración automática, no necesitará proporcionar
ninguna información de comunicaciones detallada para permitir que el cliente
DB2 contacte al servidor DB2.
Para añadir una base de datos a su sistema usando descubrimiento, necesitará
llevar a cabo los siguientes pasos. (Note que un DB2 Administration Server
(DAS) se debe estar ejecutando y activado para que el recurso de
descubrimiento del CA retorne información sobre sistemas DB2 locales).
1. Inicie el CA. Puede hacerlo desde el menú Inicio en Windows, o
mediante el comando db2ca en Windows o en UNIX.
2. En la barra de menú CA, bajo Selected, seleccione Add Database
Using Wizard.
3. Marque el botón de selección Search the Network y haga clic en Next.
4. Haga doble clic en la carpeta contigua a Known Systems para listar
todos los sistemas que se conozcan para su cliente.
5. Haga clic en el signo de suma ( + ) que está junto a System para obtener
una lista de las instancias y bases de datos que contiene. Seleccione la base
de datos que desee añadir y luego haga clic en Next.
6. Ingrese un nombre de alias de la base de datos local en el campo
Database Alias. También puede ingresar un comentario que describa esta base
de datos en el campo Comment si lo desea.
7. Si está planeando usar ODBC, registre esta base de datos como una
fuente de datos ODBC. ODBC ya debe estar instalado para efectuar esta
operación.
8. Haga clic en Finish.
Ahora usted está listo(a) para usar la base de datos que acaba de añadir.
Configuración automática usando perfiles de acceso
Los perfiles de acceso son otro método automatizado para configurar un cliente
DB2 para que acceda a servidores remotos DB2 y a sus bases de datos. Un
perfil de acceso contiene la información que un cliente necesita para catalogar
bases de datos en un servidor DB2.
Así como con el descubrimiento, cuando se usan perfiles de acceso, usted no
necesitará proporcionar ninguna información detallada de comunicaciones para
permitir que el cliente DB2 contacte al servidor DB2.
Existen dos tipos de perfiles de acceso:
 Los perfiles de acceso de servidor son creados desde servidores DB2.
Estos contienen información sobre todas las instancias y bases de datos que el
servidor DB2 ha catalogado.
 Los perfiles de acceso de cliente son utilizados para duplicar las bases
de datos catalogadas y/o las configuraciones de cliente (DBM CFG, CLI/ODBC)
desde un cliente hacia otro.
Ambos tipos de perfiles se pueden exportar desde un sistema DB2 y luego ser
importados hacia otro.
Normalmente usted usará perfiles de acceso para configurar un gran número
de clientes. El DB2 Control Center puede usarse para exportar y luego importar
un sistema de perfil de acceso a servidor. (Para más sobre el Control Center,
vea el primer tutorial de esta serie.) Un perfil de acceso de cliente es exportado,
luego es importado usando el Configuration Assistant (CA).
Si usted tiene un gran número de clientes para configurar, también debe
considerar el uso de LDAP (el Lightweight Directory Access Protocol). El LDAP
le permite almacenar información de catálogo en una ubicación centralizada.
Cada cliente solo necesita saber la ubicación centralizada para poder
conectarse a cualquier base de datos que esté a disposición en la red. Vea la
Guía de Administración DB2 para más detalles sobre LDAP.
Configuración manual
También es posible configurar manualmente una conexión de base de datos.
Para hacer esto, usted necesita conocer los detalles de la configuración de
comunicaciones entre el cliente y el servidor.
Usted puede usar una configuración manual para sus bases de datos host; use
descubrimiento para conectarse mediante un servidor DB2 Connect; o use esa
información para una conexión directa desde su cliente como se describió en
secciones previas. Hay dos formas para configurar conexiones manualmente:
 Usar la opción Manual del CA. En este caso, a usted se le consulta
mediante una interfaz GUI para todos los valores que necesite ingresar.
 Usar los comandos CATALOG NODE/DB. En este caso usted debe
conocer la sintaxis de los comandos e ingresar comandos desde una interfaz
de línea de comandos.
En cualquier caso, usted puede usar la configuración manual para explotar
algunas de las opciones avanzadas que no están disponibles usando métodos
automatizados (por ejemplo, usted podría seleccionar la ubicación donde se
lleva a cabo la autenticación).
El método de línea de comandos CATALOG NODE/DB es el más complicad de
los dos, pero incluye una ventaja: usted puede guardar los pasos de
configuración en scripts de manera que la configuración se pueda volver a
hacer si se necesita.
Usando el CA para catalogar una base de datos
En las siguientes secciones, usted verá los pasos requeridos para catalogar
manualmente una base de datos usando el Configuration Assistant.
Antes de proceder, usted necesita conocer la siguiente información:
 Uno de los protocolos soportados por la instancia de servidor que
contiene la base de datos
 La información de conexión de protocolo requerida para configurar la
conexión hacia la instancia de servidor
 El nombre de servidor
 El nombre de la base de datos en el servidor remoto
La pantalla CA inicial es invocada seleccionando el Configuration Assistant de
la carpeta DB2.
Figura 7. Seleccione Configuration Assistant

En cuanto usted haya seleccionado este programa, aparecerá la siguiente


pantalla:
Figura 8. Asistente de configuración

La sección superior de esta pantalla le proporciona al usuario una lista de


bases de datos que están catalogadas actualmente en el sistema. Existen
varios elementos de menú aquí que permiten a un usuario configurar las
conexiones de base de datos, pero la opción en la que estaría interesado el
DBA es el botón Add Database Using Wizard en el menú Selected :
Figura 9. Añadir base de datos usando el Asistente
Seleccionar Add inicia el Add Database Wizard.
Las siguientes secciones describen cada paso requerido para la configuración
del cliente.
CA: ¿Qué método utilizar?
El primer panel del asistente CCA le pregunta cuál método le gustaría utilizar
para catalogar la base de datos.
Figura 10. Configurando una conexión

El asistente proporciona al usuario tres formas posibles de catalogar una base


de datos:
 Usar un perfil
 Buscar en la red
 Configurar una conexión manualmente
La opción en la que estamos interesados es en la configuración manual. (Como
describieron las secciones previas, usar un perfil o buscar en la red son
métodos mucho más fáciles para un usuario que desee catalogar una base de
datos en un cliente).
Ahora que usted ha seleccionado la opción de configuración manual, usted
necesita seleccionar el protocolo de comunicación que desee.
CA: Protocolo de comunicación
En el siguiente panel usted puede seleccionar el protocolo que desee usar para
conectarse a la base de datos. El contenido del recuadro Protocol Parameters
cambia de acuerdo al protocolo. Aquí están los protocolos que usted puede
elegir, junto con algunos de sus parámetros:
 TCP/IP: Nombre de host/dirección IP de servidor, numero de puerto
 NetBIOS: Nombre de estación de trabajo de servidor, número de
adaptador
 Named Pipe: Nombre de computadora de servidor, instancia
 APPC/APPN: Nombre de destino simbólico de servidor
 LOCAL: Base de datos local en esta máquina
Todos los protocolos que soporta el DB2 están listados aquí. Si usted ha
seleccionado APPC, sus opciones de sistema operativo serán: OS/390 o z/OS,
OS/400, VM, o VSE. Los servidores DB2 en Windows y UNIX y no aceptan
conexiones de cliente entrantes usando APPC. Sin embargo, los clientes DB2
todavía pueden conectarse a sistemas host usando APPS si tiene DB2
Connect instalado.
Si selecciona TCP/IP, sus opciones son: basado en LAN, OS/390 o z/OS,
OS/400, o VM.
Usted debe verificar que la máquina esté correctamente configurada en la red
antes de hacer clic en Finish.
Figura 11. Seleccione un protocolo de comunicación

CA: Detalles de comunicación


en este punto, usted puede ingresar los detalles de comunicaciones de la base
de datos que desee catalogar. Esta pantalla será diferente para cada protocolo
de comunicaciones. El ejemplo mostrado aquí es para una base de datos que
se encuentra en la misma máquina que el cliente (local)(local).
Figura 12. Seleccione una base de datos local
CA: Detalles de base de datos
Ahora usted ingresa los detalles de la base de datos que desee catalogar.
Ingrese el nombre de la base de datos (como se conoce en el servidor) en el
campo Database Name. Usted puede aceptar el mismo nombre del alias local
para la base de datos, o cambiar el alias por un nombre de su elección. Usted
también puede ingresar una descripción, si desea.
Figura 13. Ingrese un nombre de base de datos

CA: Configuraciones ODBC


Usted puede registrar la base de datos como una fuente de datos ODBC. De
forma predeterminada, la casilla que indica que usted desea hacer esto está
marcada, como puede ver en la siguiente figura. Usted puede optimizar las
configuraciones ODBC para una aplicación particular seleccionando esa
aplicación desde el menú Optimize for Application .
Figura 14. Registro ODBC

Si usted planea ejecutar aplicaciones Windows contra esta base de datos, debe
estar familiarizado(a) con los diferentes parámetros de optimización disponibles
en este entorno.
CA: Opciones de nodo, sistema y seguridad
Hay tres paneles adicionales que se muestran como parte del Configuration
Assistant. Las Security Options se muestran para cualquier tipo de base de
datos, pero los panelesNode y System solo se muestran para bases de datos
remotas.
1. Información de nodo: Usted debe llenar la información de nodo si
planea usar el Control Center, pues esto afectará la conducta de esta
herramienta. Los nombres de instancia y de sistema son dados por los valores
de DB2SYSTEM y DB2INSTANCE en el servidor. Usted también debe seleccionar el
sistema operativo del sistema remoto.
Figura 15. Ingrese información de nodo
2. Información de sistema: Usted necesita proporcionar la información de
sistema para decirle al DB2 el sistema, host y sistema operativo del sistema
remoto en el que reside la base de datos.
Figura 16. Información del sistema de suministro

3. Información de seguridad: Aquí usted puede especificar dónde se


lleva a cabo la autenticación de usuario (en el servidor, que es lo
predeterminado; o en un host o un OS/400). Usted también puede usar la
seguridad SOCKS para conexiones TCP/IP, lo cual le permitirá acceder a
bases de datos remotas por fuera de su firewall. (Para más sobre seguridad
DB2, consulte el segundo tutorial de esta serie.)
Figura 17. Ingrese seguridad de información
CA: Operación de catálogo exitosa
En cuanto usted hace clic en Finish en la pantalla de CCA Catalog, el DB2
intentará catalogar la base de datos. Si esto tiene éxito, aparecerá la siguiente
ventana:
Figura 18. Pantalla de confirmación de adición de base de datos

En este punto usted puede comprobar la comunicación para asegurarse de que


el cliente puede comunicarse con la base de datos. Si la prueba es exitosa,
ahora usted puede usar una aplicación para acceder a la base de datos DB2.
Figura 19. Prueba de conexión
Resumen de catálogo
Catalogar una base de datos DB2 normalmente no se requiere en el servidor
donde fue creada. No obstante, para acceder a la base de datos desde un
cliente, ese cliente primero debe catalogar la base de datos localmente, para
que las aplicaciones puedan acceder a ella.
El comando CATALOG puede usarse para catalogar una base de datos, pero
el Configuration Assistant (CA) es una herramienta mucho más fácil de usar y
permite el descubrimiento y catalogación automática de bases de datos.
Como alternativa a catalogar bases de datos en cada cliente, un DBA también
podría usar servicios LDAP para crear un repositorio central de información de
base de datos.
MANIPULANDO OBJETOS DB2 CON EL CONTROL
CENTER
Usando el Control Center
El Control Center es el punto central de administración del DB2. El Control
Center proporciona al usuario las herramientas necesarias para efectuar tareas
típicas de administración de base de datos. Este permite un acceso fácil a otras
herramientas de administración de servidor, proporciona un panorama claro de
todo el sistema, permite la administración remota de base de datos y
proporciona asistencia paso a paso para tareas complejas.
Pero, ¿por qué pasamos por todas esas dificultades de aprender cómo crear
bases de datos desde una línea de comandos? Aunque el Control Center
facilita su vida, en ocasiones usted deseará crear scripts que creen objetos
automáticamente o que invoquen mantenimiento de base de datos. El Control
Center puede ayudarle a generar, administrar y programar esos scripts, pero
todos ellos se ejecutan como comandos DB2. Y en algunos casos, el Control
Center puede no estar en el sistema operativo en el que usted esté trabajando,
así que usted no tendrá alternativa más que usar comandos DB2.
El Control Center se invoca desde la carpeta General Administration en el
grupo de programa DB2:
Figura 20. Inicie el Control Center
La pantalla que aparece será similar a la siguiente figura:
Figura 21. Control Center principal

El objeto Systems representa las máquinas tanto local como remota. Para
mostrar todos los sistemas DB2 que su sistema ha catalogado, expanda el
árbol de objetos haciendo clic en el signo de suma ( + ) contiguo a Systems. La
porción izquierda de la pantalla lista sistemas DB2 disponibles (locales y
remotos). En la figura, El sistema LOCAL contiene una instancia DB2, DB2,
donde está ubicada la base de datos de muestra SAMPLE. Cuando Tables
está resaltada, el en Contents Pane se muestran los detalles sobre cada
sistema. Un número de las tablas existentes en la base de datos SAMPLE se
muestran en la figura de arriba.
Los principales componentes del Control Center son:
 Menu Bar: Se usa para acceder a funciones del Control Center y a
ayuda on-line.
 Tool Bar: Se usa para acceder a otras herramientas administrativas.
 Objects Pane: Se muestra del lado izquierdo de la ventana Control
Center. Contiene todos los objetos que pueden ser manejados desde el Control
Center, así como su relación entre sí.
 Contents Pane: Este se encuentra al lado derecho de la ventana del
Centro de control y contiene los objetos que pertenecen o corresponden al
objeto seleccionado en el Objects Pane.
 Contents Pane Toolbar: Estos íconos se usan para ajustar la vista de
los objetos y la información en el Contents Pane. Estas funciones también se
pueden seleccionar desde el menú View.
 Details Pane: El Details Pane muestra información detallada sobre el
objeto seleccionado.
Hover Help también está disponible en el Control Center, proporcionando una
corta descripción para cada ícono de la barra de herramientas a medida que
usted mueve el puntero del mouse sobre ese ícono.
Creando y manipulando bases de datos
El Control Center puede usarse para crear y administrar sus bases de datos.
¿Recuerda el comando CREATE DATABASE que utilizó antes para crear su
primera base de datos? En los siguientes paneles usted verá cómo va a hacer
lo mismo con el Control Center.
Al lado izquierdo del Control Center (el Objects Pane), ponga se mouse sobre
la palabra clave Database y haga clic derecho. Esto abrirá un menú de las
opciones que están disponibles para bases de datos. En este caso, usted
seleccionará Create Database > Standard..., como se muestra en la siguiente
figura:
Figura 22. Creando una nueva base de datos

En cuanto usted haya seleccionado esta opción, DB2 presentará una serie de
paneles que usted necesitará llenar para crear una base de datos. A
continuación verá cómo utilizar estos asistentes para simplificar algunas de las
tareas DBA comunes.
Asistente Create Database: Nombre de base de datos
El Create Database Wizard le llevará por una serie de pasos para generar una
base de datos. La primera pantalla le pregunta el nombre de la base de datos,
la unidad predeterminada en la que desea que se cree (si no especifica nada
más), y el nombre de alias. Además, usted puede añadir un comentario sobre
el contenido de la base de datos.
Algunas notas sobre este primer panel. Si usted desea usar columnas XML en
la base de datos, esto debe definirse como UTF-8 (Activar la base de datos
para XML). Adicionalmente, el Almacenamiento Automático es el
predeterminado para una base de datos en DB2 9. Si usted desea cambiar este
predeterminado, debe seleccionar I want to manage my storage manually.
Figura 23. Nombre de base de datos

Asistente Create Database: User/catalog/temp tables


Los siguientes tres paneles del asistente le solicitan que ingrese información
sobre cómo le gustaría que se crearan el usuario, el catálogo y el espacio de
tabla temporal. Si usted selecciona la opción Low Maintenance, el asistente
creará un espacio de tabla SMS para usted. Si selecciona High Performance,
necesitará especificar los dispositivos y sistemas de archivos que usted planea
usar para este espacio de tabla.
Figura 24. Asignación de espacio de base de datos
Para cualquiera de las opciones usted puede especificar los contenedores
(archivos, dispositivos) que desee asignar al espacio de tabla. Si hace clic en el
botón Add, se mostrará un panel adicional para permitirle definir los
contenedores que se están utilizando.
Figura 25. Contenedores de base de datos
Si usted no especifica contenedores o archivos para sus espacios de tabla, el
DB2 automáticamente generará uno para usted en la unidad predeterminada
que usted especificó antes.
Asistente Create Database: Opciones de desempeño
Hay dos parámetros de desempeño que usted puede
configurar: EXTENTSIZE y PREFETCHSIZE.
Figura 26. Optimización de base de datos

Observemos a cada uno de ellos:


 EXTENTSIZE: Un extent es una unidad de espacio dentro de un
contenedor de un espacio de tabla. Los objetos de base de datos (excepto los
LOB y varchars extensos) se almacenan en páginasdentro del DB2. Estas
páginas están agrupadas en extents. El tamaño de extent está definido a nivel
de espacio de tabla. En cuanto se ha establecido el tamaño de extent para el
espacio de tabla, no se podrá alterar. El parámetro de configuración de base de
datos DFT_EXTENT_SZEspecifica el tamaño predeterminado de extent para todos
los espacios de tabla de la base de datos. Este valor puede variar desde 2
hasta 256 páginas; así, el tamaño absoluto puede variar de 8 KB a 1024 KB
para páginas de 4 KB, o de 16 KB a 2048 KB para páginas de 8 KB. Esta figura
se puede alterar usando el parámetro EXTENTSIZE en el enunciado CREATE
TABLESPACE .
Si usted va a utilizar agrupación en clúster multi-dimensional en el diseño de
sus tablas (MDC), el tamaño de extent se convertirá en una decisión de diseño
crítica. Las tablas MDC asignarán un extent a cada nueva conjunto de
dimensión que se cree. Si el tamaño de extent es demasiado grande, entonces
existe la posibilidad de que gran parte del extent quede vacío (para conjuntos
de dimensión con pocos registros). Para más información sobre el MDC y su
impacto sobreEXTENTSIZE, consulte la Guía de Administración DB2.
 PREFETCHSIZE: La pre-captura secuencial es la capacidad del gestor de
base de datos para anticipar una consulta, leyendo las páginas antes de que
esas páginas sean referenciadas efectivamente. Esta recuperación asíncrona
puede reducir los tiempos de ejecución significativamente. Usted puede
controlar qué tan agresivamente se lleva a cabo la pre-captura, cambiando el
parámetro PREFETCHSIZE en el enunciado CREATE TABLESPACE . De forma
predeterminada este valor es DFT_PREFETCH_SZ que es el parámetro de
configuración. Este valor representa cuántas páginas serán leídas al mismo
tiempo cuando el DB2 active una solicitud de pre-captura. Al establecer este
valor en un múltiplo del tamaño de extent, se pueden leer múltiples extent en
paralelo. Esta función es incluso más efectiva cuando los contenedores del
espacio de tabla están en discos separados.
Los valores predeterminados para estos parámetros son adecuados para
muchas aplicaciones, pero tal vez usted desee experimentar
con PREFETCHSIZE más altos, para aplicaciones que efectúen consultas o que
analicen grandes cantidades de datos.
Asistente Create Database: Página de código y orden de clasificación
Las siguientes opciones que usted encontrará como parte de la creación de
base de datos son aquellas que incluyen páginas de código y órdenes de
clasificación.
Figura 27. Orden de clasificación y página de código

Cuando una aplicación DB2 está vinculada a una base de datos DB2, la
aplicación y la base de datos son comparadas. Si los códigos de página no son
iguales, se intentará la conversión de página de código para cada enunciado
SQL. Si usted está usando una página de código diferente a la de la base de
datos a la que usted está accediendo, es importante garantizar que las páginas
de código sean compatibles y que se pueda lograr la conversión.
De forma predeterminada, el orden de clasificación de una base de datos se
define de acuerdo al conjunto de códigos usado en el comando CREATE
DATABASE . Si usted especifica la opción COLLATE USING SYSTEM, los valores de
los datos son comparados con base en el TERRITORY especificado por la base
de datos. Si se usa la opción COLLATE USING IDENTITY , todos los valores se
comparan usando su representación binaria de forma byte por byte. Cuando
necesite almacenar datos en su formato nativo (binario), evite el uso de tipos
de datos con páginas de código. Generalmente es una ventaja usar
aplicaciones y páginas de códigos idénticas para evitar el proceso de
conversión de página de códigos.
Asistente Create Database: Resumen de creación
Una vez que todos los parámetros hayan sido ingresados al sistema, el
asistente Create Database le presentará una pantalla de resumen con todas las
selecciones que usted haya realizado.
Figura 28. Página de resumen del asistente

Un recurso extremadamente útil de esta página de resumen es su botón Show


Command . Si usted lo presiona, verá el comando DB2 que se utilizará para
crear la base de datos, como se muestra en la siguiente figura.
Figura 29. Show Command

Usted puede guardar este comando para una ejecución futura o copiarlo y
pegarlo en un script que usted pueda estar desarrollando. Si usted está
satisfecho con los parámetros que ha ingresado en el sistema, haga clic en el
botón Finish para crear la base de datos.
Resumen del Control Center
El Control Center del DB2 es una herramienta poderosa que facilita en extremo
el mantenimiento rutinario de base de datos. Existe una variedad de asistentes
disponibles para ayudarle a crear y a modificar muchos de los objetos de base
de datos.
Usted también puede usar el Control Center para generar comandos DB2 para
uso posterior en scripts o programas. Este comando le permite desarrollar el
comando que desee usar sin ejecutarlo efectivamente.
CREANDO Y ACCEDIENDO A OBJETOS DB2 BÁSICOS
Más trucos del Control Center
Aunque el Control Center en realidad es útil para la creación de bases de
datos, este tiene una gran cantidad de funcionalidades adicionales que usted
puede usar para crear, modificar o eliminar casi cualquier objeto de base de
datos. Observemos qué otras cosas contiene el Control Center.
Figura 30. Control Center

Al lado izquierdo de la pantalla tenemos el Objects Pane. Si usted desea crear


un objeto nuevo, ponga su mouse sobre el tipo de objeto (tabla) y haga clic
derecho sobre él. Para la mayoría de los objetos, esto presentará un menú de
opciones, incluyendo una para la creación del objeto.
Figura 31. Creación de nueva tabla
Como DBA, usted debe familiarizarse con estos botones Create. Inicialmente,
estos asistentes pueden ser extremadamente útiles para determinar cómo se
generan los comandos DB2. Aprovechar el botón Show Command puede ser
una gran herramienta de aprendizaje. ¡Incluso DBA experimentados no se
avergüenzan de usar el Control Center para generar comandos usados con
frecuencia!
Modificación de objetos existentes
Los nuevos objetos se crean haciendo clic derecho en el nombre del objeto del
Objects Pane. Si usted necesita modificar o eliminar un objeto, necesitará
mostrarlo en el Contents Pane al lado derecho del Control Center.
Figura 32. Modificación en el Control Center

en el panel que se muestra en la figura de arriba, las tablas que se encuentran


en la base de datos SAMPLE se listan en el Contents Pane. Ahora que estas
tablas están en pantalla, usted puede modificarlas. Haga clic derecho sobre el
objeto que desee modificar. Verá el siguiente menú:
Figura 33. Menú de Modificación
Existen numerosas acciones que se pueden llevar a cabo contra los objetos de
tabla. Por ejemplo, usted puede ver los contenidos de muestra de la tabla,
alterar la tabla, o reorganizarla.
Los dos comandos que son de interés para los DBA son los comandos Show
Related y Generate DDL. Show Related mostrará todos los objetos de base de
datos, como índices o espacios de tabla, que se relacionan con esta tabla. El
comando Generate DDL realizará ingeniería inversa a la definición de esta
tabla, de manera que usted puede crear nuevamenteel diseño de tabla en el
evento de una falla. (Desde luego, usted siempre puede hacer copia de
seguridad de su base de datos, ¿correcto?)
Details Pane
El Control Center también tiene un Details Pane el cual proporciona más
detalles sobre un elemento seleccionado en el Object Pane. Este recurso es
particularmente útil porque le proporciona una vista rápida de la definición de
tabla. Por ejemplo, cuando una tabla es seleccionada, el Details Pane mostrará
el esquema de tabla (la definición de columna) junto con las opciones para
mostrar el contenido de tabla, la consulta de tabla o mostrará los objetos
relacionados.
Figura 34. Details pane
Si se selecciona un tipo de objeto diferente, el Details Pane mostrará las
opciones de manipulación que se ajustan al tipo de objeto seleccionado.
EMPAQUETAMIENTO
Resumen
El DB2 Control Center también puede ser usado para modificar objetos que
existan dentro de la base de datos. Para cada tipo de objeto a usted se le
presentan varias opciones que definen lo que pueden cambiar.
La mayoría de acciones que un DBA realiza desde el Control Center pueden
ser capturadas y guardadas para usarlas en un script. Esto, junto con los
asistentes de comandos, puede simplificar el mantenimiento de la base de
datos que lo que es escribir los comandos.
En la ayuda on-line que se suministra con la herramienta se puede encontrar
información adicional sobre el Control Center del DB2. Adicionalmente, la Guía
de Administración DB2 y la Referencia de Comandos DB2 contienen rica
información sobre recursos de base de datos, funciones y sobre cómo diseñar
una base de datos para mejor desempeño.

También podría gustarte