Adquisición de la conexión de base de datos para programas de utilidad y tareas Ant
Los programas de utilidad de y las tareas Ant se actualizan para hacer referencia a una sola clase a fin de configurar la adquisición de una conexión de base de datos. Este método de conexión de base de datos unificada garantiza que cada programa de utilidad y tarea Ant pueda hacer referencia a esta clase para adquirir una conexión de base de datos, independientemente del controlador JDBC que una base de datos utiliza.
- Programa de utilidad CDFGenerator
- Gestor de configuración
- Carga de datos, programa de utilidad
- Script de mandatos del programa de utilidad de limpieza de base de datos
- Programa de utilidad encryptChallengeAnswer
- Programa de utilidad Exportar estadísticas de marketing
- Programa de utilidad Importar estadísticas de marketing
- Propagación del índice de búsqueda
- Migración
- SegmentCopy
- programa de utilidad setdbtype
- seourlkeywordgen, programa de utilidad
- Programa de utilidad stagingcopy
- Programa de utilidad stagingprop
- updatedb utilidad
De forma predeterminada, puede especificar los parámetros de conexión para una base de datos desde la línea de mandatos, o bien el programa de utilidad puede construir los parámetros. Con este método de conexión unificada, estas opciones para especificar la base de datos para utilizarla con un programa de utilidad no se modifican. Puede seguir registrando todas las conexiones de base de datos que un programa de utilidad realiza. Para establecer dónde se deben crear los archivos de registro, utilice el elemento logoutput
como subelemento de la configuración database-type
. Con esta configuración de registro, el archivo de registro registra las especificaciones de la base de datos que son de entrada para establecer una conexión de base de datos para un programa de utilidad. Una vez que se haya recopilado un conjunto de parámetros de entrada, puede revisar los parámetros especificados y configurar potencialmente las alteraciones temporales para controlar cómo conectar los programas de utilidad a la base de datos. Por ejemplo, puede alterar temporalmente la especificación de base de datos para asegurarse de que los programas de utilidad sólo utilizan un URL JDBC específico.
Puede configurar la clase AllDBConnector para utilizar un Oracle Wallet con el objetivo de autenticar las credenciales de un usuario y conectarse a una base de datos Oracle. Mediante la configuración de la clase AllDBConnector para autenticar a los usuarios con un Oracle Wallet, puede hacer que el proceso de conexión de base de datos sea más seguro para los programas de utilidad de . Para obtener más información sobre esta configuración, consulte Configuración de conexión de base de datos Oracle para programas de utilidad para autenticar usuarios con Oracle Wallet.
Configuración de la adquisición de conexión de la base de datos
- WCDE_installdir\xml\config\alldbconnector.xml
- WCDE_installdir\xml\config\alldbconnector.xsd
Las propiedades de configuración de conexión de base de datos están establecidas como elementos de par nombre-valor dentro del archivo de configuración XML alldbconnector.xml. Estas propiedades están establecidas como propiedades globales y como parte de las configuraciones de tipo de base de datos específicas. Cuando se establece una conexión de base de datos, la conexión utiliza los valores de configuración para el identificador de entrada de base de datos específico. Si no existe ninguna configuración para este identificador, la conexión utiliza las propiedades de configuración global.
<alldbconnector>
<db2 />
<oracle />
<derby />
<iseries />
<iseries_toolbox />
</alldbconnector>
<drivertype> (0 or 1 time) (only under the <oracle> element)
<jdbcdriver> (0 or 1 time)
<jdbcurl> (0 or 1 time)
<logoutput> (0 or 1 time)
<property> (0 or more times)
<override> (0 or more times)
Donde drivertype
El tipo de controlador Oracle que un programa de utilidad utiliza para establecer una conexión de base de datos. Un programa de utilidad utiliza este elemento de configuración cuando la especificación de entrada de una base de datos tiene el formato siguiente,
Oserver:port/service
server:port:sid
Si se establece este elemento se controla si el programa de utilidad utiliza el controlador Oraclethin
uoci
. Los programas de utilidad solo utilizan este elemento cuando se especifica el elemento en el elemento<oracle>
. El elementodrivertype
no admite la inclusión de un subelemento. Para configurar este elemento, utilice los atributos de elemento siguientes:- valor
- Necesario. El tipo de clase de controlador Oracle que se utilizará. El valor predeterminado es
'thin'
. El otro valor aceptado es'oci'
. - enabled
- Opcional. Habilita el elemento
drivertype
. Puede establecer uno de los valores siguientes para este elemento:- sí
- Habilita el elemento. El valor predeterminado.
- No
- Inhabilita el elemento.
- jdbcdriver
- La clase de controlador que un programa de utilidad utiliza para establecer una conexión de base de datos. Utilice este elemento para especificar una clase de controlador diferente para un programa de utilidad que se utilizará para establecer una conexión de base de datos. El elemento
jdbcdriver
no admite la inclusión de un subelemento. Para configurar este elemento, utilice los atributos de elemento siguientes:- valor
- Necesario. El nombre completo del controlador JDBC. No incluya el sufijo
.class
en este nombre. - habilitado
- Opcional. Habilita el elemento
jdbcdriver
. Puede establecer uno de los valores siguientes para este elemento:- sí
- Habilita el elemento. El valor predeterminado.
- No
- Inhabilita el elemento.
- jdbcurl
- El URL JDBC que un programa de utilidad utiliza para adquirir una conexión de base de datos. El elemento
jdbcurl
no admite la inclusión de un subelemento. No utilice este elemento como un subelemento directo de un elemento de tipo de base de datos, como<oracle>
o<db2>
. Si no utiliza este elemento como un subelemento en este nivel, el elemento fuerza a todas las conexiones de base de datos a conectarse a la misma base de datos. Puede que este comportamiento no sea el correcto para todos los programas de utilidad, tales como el programa de utilidad stagingprop. Si desea utilizar este elemento, incluya el elemento como un subelemento dentro de un elementooverride
. Para configurar este elemento, utilice los atributos de elemento siguientes:- valor
- Necesario. La vía de acceso del URL JDBC que un programa de utilidad utiliza para adquirir una conexión de base de datos.
- habilitado
- Opcional. Habilita el elemento
jdbcurl
. Puede establecer uno de los valores siguientes para este elemento:- sí
- Habilita el elemento. El valor predeterminado.
- No
- Inhabilita el elemento.
jdbcurl
. Esta configuración garantiza que todos los programas de utilidad en una base de datos DB2 para Linux, UNIX y Windows se conectan a la base de datos'mall'
en el servidor'localhost'
.<alldbconnector> <db2> <property name="currentSchema" value="MYSCHEMA" /> <property name="currentQueryOptimization" value="0" enabled="no" /> <logoutput value="standardout" /> <jdbcurl value="jdbc:db2://localhost:50000/mall" /> </db2> <oracle /> <derby /> <iseries /> <iseries_toolbox /> </alldbconnector>
- logoutput
- Especifica una corriente de salida donde todos los diagnósticos registrados por la clase pueden generar la salida en un archivo de registro. El elemento
logoutput
no admite la inclusión de un subelemento. Para configurar este elemento, utilice los atributos de elemento siguientes:- valor
- Necesario. La vía de acceso donde un programa de utilidad crea el registro de diagnóstico. Los valores aceptados para este elemento son
stdout
,standardout
o una vía de acceso de archivo absoluta. Las vías de acceso absolutas hacen que el programa de utilidad ignore el elementologoutput
. Los fragmentos de código siguientes muestran el valor de una vía de acceso absoluta para el elementologoutput
:<!-- for windows --> <logoutput value="f:\some_directory\db2-connection-diagnostics.log" enabled="no" /> <!-- for non-windows --> <logoutput value="/some_directory/db2-connection-diagnostics.log" enabled="no" />
- habilitado
- Opcional. Habilita el elemento
logoutput
. Puede establecer uno de los valores siguientes para este elemento:- sí
- Habilita el elemento. El valor predeterminado.
- No
- Inhabilita el elemento.
logoutput
para que tenga un valor establecido enstandardout
. El valorstandardout
garantiza que todos los diagnósticos para cualquier conexión que esté establecida en una base de datos DB2 para Linux, UNIX y Windows se imprimirá en la corriente de salida estándar.<alldbconnector> <db2> <property name="currentSchema" value="MYSCHEMA" /> <property name="currentQueryOptimization" value="0" enabled="no" /> <logoutput value="standardout" /> </db2> <oracle /> <derby /> <iseries /> <iseries_toolbox /> </alldbconnector>
- property
- Utilice este elemento para especificar más propiedades de configuración de pares nombre-valor antes de que el programa de utilidad que efectúa la llamada adquiera las propiedades de conexión. Si el atributo
enabled
no está establecido enyes
, el programa de utilidad que efectúa la llamada ignora la propiedad. El elementoproperty
no admite la inclusión de un subelemento. Para configurar este elemento, utilice los atributos de elemento siguientes:- name
- Necesario. El nombre de la propiedad.
- valor
- Necesario. El valor correspondiente para la propiedad.
- tipo
- Opcional. El tipo de datos del valor de la propiedad. El valor predeterminado es
java.lang.String
. Otros valores aceptables sonjava.lang.Integer
yjava.lang.Boolean
. - habilitado
- Opcional. Habilita el elemento
property
. Puede establecer cualquiera de los valores siguientes para este elemento:- sí
- Habilita el elemento. El valor predeterminado.
- No
- Inhabilita el elemento.
- scope
- Indica si la propiedad es una propiedad system o una propiedad connection.
- sistema
- La propiedad es una propiedad del sistema.
- connection
- La propiedad es una propiedad connection. El valor predeterminado.
Por ejemplo, para configurar la clase AllDBConnector y autenticar a los usuarios con un Oracle Wallet cuando se utiliza el tipo de controlador de Oracle Thin, debe establecer una propiedad
oracle.net.tns.admin
como una propiedad del sistema. Al establecer esta propiedad como una propiedad del sistema, el controlador Thin de Oracle puede recuperar entradas de TNS del archivo de configuración tnsnames.ora para el cliente de la base de datos.tnsnames.ora La clase AllDBConnector y el Oracle Wallet necesitan estas entradas para autenticar a los usuarios y establecer una conexión de base de datos.
property
. Estas propiedades garantizan que las conexiones a una base de datos DB2 para Linux, UNIX y Windows que un programa de utilidad solicita tienen el valorMYSCHEMA
establecido para la propiedadcurrentSchema
. La propiedadcurrentQueryOptimization
no está habilitada, por consiguiente, el programa de utilidad llamante ignora esta propiedad.<alldbconnector> <db2> <property name="currentSchema" value="MYSCHEMA" /> <property name="currentQueryOptimization" value="0" enabled="no" /> </db2> <oracle /> <derby /> <iseries /> <iseries_toolbox /> </alldbconnector>
- ignoreUserPass
- Indica que el nombre de usuario y la contraseña que ha especificado un usuario se va a eliminar del proceso de conexión de la base de datos cuando un programa de utilidad está realizando la conexión a una base de datos. Incluya este elemento cuando configure la clase AllDBConnector para autenticar usuarios con un proceso diferente.
Por ejemplo, utilice este elemento cuando configure la clase AllDBConnector para autenticar a los usuarios con un Oracle Wallet. Cuando configure la clase para autenticar a los usuarios con un Oracle Wallet, el nombre de usuario y la contraseña que se incluyen en el programa de utilidad de línea de mandatos ya no son necesarios.
- security
- Indica que la clase AllDBConnector necesita realizar una llamada a la API
Security.addProvider(...)
para recuperar un proveedor de seguridad especificado, autenticar el acceso del usuario y establecer una conexión de base de datos. Para configurar este elemento, utilice el atributo de elemento siguiente:- providername
- El nombre completo del proveedor de seguridad. Si las clases de proveedor de seguridad no están incluidas en ningún archivo JAR que la clase AllDBConnector carga de forma predeterminada, debe configurar la clase AllDBConnector para cargar los archivo JAR del proveedor de seguridad utilizando el elemento
jar
.Por ejemplo, para configurar la clase AllDBConnector para autenticar a los usuarios con un Oracle Wallet, debe especificar el proveedor de seguridad de Oracle adecuado.
<security providername="oracle.security.pki.OraclePKIProvider" />
- jar
- Indica que el proceso de conexión de base de datos es utilizar la clase AllDBConnector para intentar cargar un archivo JAR especificado que es necesario para establecer correctamente una conexión de base de datos.AllDBConnector Al cargar archivos JAR, AllDBConnector garantiza que todas las clases que son necesarias para establecer una conexión de base de datos están disponibles en la clase del otro. Para configurar este elemento, utilice el atributo de elemento siguiente:
- path
- La vía de acceso del sistema de archivos del archivo JAR que la clase AllDBConnector va a cargar.
Por ejemplo, para configurar la clase AllDBConnector para autenticar a los usuarios con un Oracle Wallet, debe cargar archivos JAR de Oracle. El fragmento de código siguiente muestra cómo configurar la clase AllDBConnector para cargar estos archivos JAR:
<jar path="c:\oracle\product\11.2.0\dbhome_1\jlib\oraclepki.jar" /> <jar path="c:\oracle\product\11.2.0\dbhome_1\jlib\osdt_cert.jar" /> <jar path="c:\oracle\product\11.2.0\dbhome_1\jlib\osdt_core.jar" />
- override
- Proporciona la posibilidad de alterar temporalmente los parámetros de conexión de entrada especificados. El elemento
override
acepta los mismos subelementos que los elementos de tipo de base de datos padre, excepto que el elementooverride
no puede incluir un subelementooverride
anidado.Para configurar este elemento, utilice los atributos de elemento siguientes:- identifier
- Necesario. Nombre identificativo para la configuración de alteración temporal. Asegúrese de que el identificador sea exclusivo entre las configuraciones de alteración temporal en el archivo de configuración. Cuando un parámetro de entrada especificado coincide con el identificador de una configuración de alteración temporal, los valores de alteración temporal se utilizan para sustituir los parámetros de entrada especificados.
- habilitado
- Opcional. Habilita la configuración
override
. Puede establecer cualquiera de los valores siguientes para este elemento:- sí
- Habilita el elemento. El valor predeterminado.
- No
- Inhabilita el elemento.
- includeusers
- Controla si
override
se aplica únicamente a usuarios específicos. Utilice una lista separada por comas para incluir a varios usuarios. - excludeusers
- Controla si la configuración
override
se aplica a usuarios específicos. Utilice una lista separada por comas para excluir a varios usuarios.
Nota: Si el elementooverride
no incluye los atributosincludeusers
oexcludeusers
, el elementooverride
se aplica a todos los usuarios cuando el valoroverride
de la configuraciónidentifier
coincide con la especificación de base de datos que un usuario incluye en el mandato para ejecutar un programa de utilidad.Si varios elementos override están configurados con el mismo identificador, se utilizan las reglas siguientes para determinar qué configuración se utilizará:override
- Si existen varios elementos override con los mismos atributos, se utiliza la configuración del primer elemento.
override
- Si existen varios elementos override con diferentes atributos, se utiliza la configuración del primer elemento que coincide con las condiciones siguientes.
override
Estas condiciones se comprueban en orden:- La configuración
override
incluye el usuario que intenta establecer una conexión de base de datos en los atributosincludeusers
. - La configuración
override
no incluye los atributosincludeusers
oexcludeusers
. - La configuración
override
tiene un atributoexcludeusers
que no tiene el usuario especificado.
ignoreuserpass
está incluido en una de las alteraciones temporales, el elemento se aplica después de que se determine la configuraciónoverride
adecuada que se utilizará. - La configuración
El fragmento de código siguiente especifica una configuración de alteración temporal:
Esta configuración altera temporalmente las propiedades de conexión para que todas las conexiones a una base de datos DB2 para Linux, UNIX y Windows utilicen los parámetros siguientes:<alldbconnector> <db2> <property name="currentSchema" value="MYSCHEMA" /> <property name="currentQueryOptimization" value="0" enabled="no" /> <logoutput value="standardout" /> <jdbcurl value="jdbc:db2://localhost:50000/mall" /> <override identifier="prodmall"> <jdbcurl value="jdbc:db2://prodserver:50000/mall" /> <property name="currentSchema" value="PRODSCMA" /> </override> </db2> <oracle /> <derby /> <iseries /> <iseries_toolbox /> </alldbconnector>
- El valor
MYSCHEMA
de la propiedadcurrentSchema
. - El valor
jdbc:db2://localhost:50000/mall
de la propiedadjdbcurl
.
prodmall
, la configuración de alteración temporal garantiza que no se aplique ningún elementoproperty
ojdbcurl
del tipo de base de datos principal. En su lugar, el programa de utilidad llamante utiliza el valorjdbc:db2://prodserver:50000/mall
para el elementojdbcurl
, y el valorPRODSCMA
se utiliza para el elementocurrentSchema
. La configuración de alteración temporal no altera temporalmente el valor del elementologoutput
en la configuración de nivel de tipo de base de datos. Si incluye un elementologoutput
dentro de la configuración de alteración temporal. El programa de utilidad llamante crea un registro de diagnóstico en las vías de acceso establecidas en cada elementologoutput
.
Alteraciones temporales de propiedades de configuración.
-sourcedb
y -destdb
:-sourcedb mall
-sourcedb localhost:50000/mall
-sourcedb jdbc:db2://localhost:50000/mall
Para configurar alteraciones temporales para estos parámetros, utilice los valores de parámetro 'mall'
, 'localhost:5000/mall'
y 'jdbc:db2://localhost:50000/mall'
como valor para los elementos del identificador de elementos de configuración de alteración temporal. Dentro de la configuración de alteración temporal, puede establecer parámetros de conexión personalizados o un URL JDBC diferente. Si la alteración temporal no existe o no contiene un elemento de URL JDBC, el programa de utilidad construye el URL JDBC de los parámetros de entrada especificados. Sin embargo, si el URL JDBC existe en un elemento de alteración temporal aplicable, el programa de utilidad stagingprop utiliza el URL JDBC configurado en lugar de construir un URL a partir de los parámetros de entrada.jdbc
.- Instalar un cliente de 32 bits
- Utilizar un servidor de base de datos de 32 bits
- Utilizar una JVM de 64 bits