Crear una base de datos DB2 en Linux o UNIX
Las geodatabases son conjuntos de tablas y procedimientos en una base de datos. Por lo tanto, se debe crear una base de datos antes de crear una geodatabase.
En DB2, ArcSDE requiere el uso de una tabla temporal global (DECLARE GLOBAL TEMPORARY TABLE). Según la documentación de DB2, para declarar tablas temporales globales se debe tener privilegios SYSADMIN o DBADM, o el privilegio USE en un espacio de tabla USER TEMPORARY. Se puede crear un espacio de tabla temporal de usuario a través del centro de control de DB2 o a partir de la línea de comandos con el comando CREATE USER TEMPORARY TABLESPACE. Asegúrese de crear un espacio de tabla temporal de usuario como espacio administrado por el sistema (SMS).
Aunque debe utilizar un SMS para los espacios de tabla temporales de usuario, debe utilizar espacios de tabla administrados por la base de datos (DMS) para almacenar los datos de usuario.
Existen varias opciones para el almacenamiento de espacios de tabla. Para obtener más información, consulte el tema "Espacios de tabla de almacenamiento automático" del Centro de información de DB2.
En los pasos que se presentan a continuación se muestra un ejemplo de secuencia de comandos para crear una base de datos DB2, para crear un espacio de tabla temporal de usuario y para cambiar el uso de todos los espacios de tabla a PUBLIC.
-
Cree una secuencia de comandos para crear la base de datos.
Nota:
El nombre de la base de datos utilizada para almacenar una geodatabase no puede incluir caracteres especiales.
A continuación se muestra una secuencia de comandos de ejemplo. Reemplace las variables como el nombre de la base de datos, los nombres de contraseña y los nombres de contenedor y rutas para que coincidan con la información necesaria en el sitio.
db2 -tvf <script.clp> FORCE APPLICATION ALL; DB2STOP; DB2START; CREATE DATABASE mysdedb USING CODESET UTF-8 TERRITORY US COLLATE USING SYSTEM USER TABLESPACE MANAGED BY DATABASE USING (FILE '/db2_data/mysdedb/sdetbsp' 51200); CONNECT TO mysdedb user db2admin using <your password>; CREATE REGULAR TABLESPACE regtbs PAGESIZE 4 K MANAGED BY DATABASE USING ( FILE '/db2_data/mysdedb/regtbs' 125000); CREATE LONG TABLESPACE lobtbs PAGESIZE 4 K MANAGED BY DATABASE USING ( FILE '/db2_data/mysdedb/lobtbs' 51200); CREATE USER TEMPORARY TABLESPACE sdespace PAGESIZE 4 K MANAGED BY SYSTEM USING ('/db2_data/mysdedb/sdespace' ); GRANT USE OF TABLESPACE regtbs TO PUBLIC; GRANT USE OF TABLESPACE lobtbs TO PUBLIC; GRANT USE OF TABLESPACE sdespace TO PUBLIC; GRANT DBADM ON DATABASE mysdedb TO USER SDE; UPDATE DATABASE CONFIGURATION FOR mysdedb USING APP_CTL_HEAP_SZ 2048; UPDATE DATABASE CONFIGURATION FOR mysdedb USING APPLHEAPSZ 2048; UPDATE DATABASE CONFIGURATION FOR mysdedb USING LOGPRIMARY 10; FORCE APPLICATION ALL; DB2STOP FORCE; DB2START;
-
Cree un espacio de tabla temporal de usuario como espacio administrado por el sistema (SMS).
Por ejemplo:
CREATE USER TEMPORARY TABLESPACE sdespace PAGESIZE 4 K MANAGED BY SYSTEM USING ('d:\db2_data\sdespace' ); COMMENT ON TABLESPACE sdespace IS '';
-
Cambie el uso de todos los espacios de tabla a PUBLIC.
GRANT USE OF TABLESPACE regtbs TO PUBLIC;
Después de crear la base de datos, deberá habilitarla espacialmente. Para obtener más información, consulte el tema Habilitar espacialmente una base de datos DB2.