Antes de configurar una tarea de Data Transfer Service (DTS) con un origen o destino Oracle, complete los siguientes pasos:
Consulte las versiones compatibles, arquitecturas y límites de su entorno Oracle.
Configure la base de datos Oracle. Este paso es obligatorio solo para tareas incrementales con origen Oracle.
Límites de la base de datos
Oracle autogestionado como origen
| Restricción | Detalles |
|---|---|
| Versiones compatibles | 10g, 11g, 12c, 18c, 19c |
| Arquitecturas compatibles | Nodo único y Real Application Clusters (RAC). No agregue ni elimine nodos de una base de datos RAC mientras se ejecuta una tarea de DTS, ya que esto provoca un error en la tarea.<br><br>Las arquitecturas Container Database (CDB) y no CDB son compatibles con las versiones 12c y posteriores. Una sola tarea solo puede migrar una Pluggable Database (PDB). |
| Datos compatibles | Tablas comunes, índices (incluidos los basados en funciones), tipos de datos y conjuntos de caracteres. Para consultar los tipos de datos y conjuntos de caracteres compatibles, consulte Appendix.<br><br>Operaciones compatibles: eliminación y actualización en cascada, operaciones de Data Manipulation Language (DML) en particiones y subparticiones, análisis sintáctico de registros de transacciones distribuidas, reversiones totales y parciales de transacciones, objetos nulos como empty_blob() y empty_clob(), columnas virtuales, datos con Hybrid Columnar Compression (HCC) y asignación con distinción entre mayúsculas y minúsculas para nombres de atributos (nombres de tablas y columnas).<br><br>Las tareas de migración completa admiten columnas invisibles, pero las tareas de sincronización incremental no.<br><br>No se admiten operaciones de Data Definition Language (DDL) en tablas particionadas, aunque la tarea continúa ejecutándose. |
| Ancho de banda de red | 100 Mb/s o superior |
| Tipos de conexión | Direcciones IP públicas y direcciones IP privadas.<br><br>Para RAC: SCAN IP, VIP de nodo único o IP física. No se admiten conexiones a la SCAN IP de un nodo RAC mediante línea dedicada.<br><br>Se admiten conexiones mediante líneas dedicadas y conexiones a bases de datos primarias y secundarias de Active Data Guard (ADG).<br> Nota Si la conexión de DTS apunta a una base de datos secundaria ADG y los archivos redo en línea no están archivados, la tarea de DTS experimentará latencia.<br><br>Amazon RDS for Oracle es compatible como origen. |
| Requisitos del negocio | Volumen máximo de registros: menos de 1 TB. Volumen promedio por hora: menos de 50 GB. Tráfico máximo: menos de 15 MB/s.<br> Importante De forma predeterminada, DTS extrae registros de toda la instancia de base de datos. Un alto volumen de cambios en objetos fuera del alcance de la migración también puede causar latencia en la tarea.<br><br>Evite estos patrones para prevenir latencia o fallos en la tarea:<br>- Actualizaciones masivas o cambios a gran escala en tipos de datos LOB (CLOB, BLOB, LONG); ejecútelos en lotes más pequeños<br>- Operaciones frecuentes de eliminación o actualización en tablas sin claves primarias<br>- Más de 10 sentencias DDL por segundo<br>- Transacciones únicas que generen más de 100 GB de registros (provoca fallo en la tarea) |
Operaciones y objetos no compatibles
Los siguientes elementos no son compatibles cuando se utiliza una base de datos Oracle autogestionada como origen:
resetlogs: no ejecute este comando mientras la tarea esté en ejecución (provoca fallo en la tarea).Operaciones DCL.
Triggers en tareas de sincronización incremental: deshabilite los triggers en la base de datos Oracle de destino.
Datos con restricciones de clave externa en tareas de sincronización incremental.
Datos importados mediante Oracle Data Pump en tareas de sincronización incremental.
Objetos con nombres superiores a 30 bytes.
Operaciones consecutivas de
RENAME TABLE(provoca fallo en la tarea).Tablas temporales globales: la tarea continúa, pero no migra estas tablas.
Tablas con funciones o expresiones en valores predeterminados (causa inconsistencia de datos).
Tablas externas.
Columnas calculadas y columnas cifradas.
Virtual Private Database (VPD).
Trabajos creados por
dbms_schedulerodbms_job.Cambios de nombre de esquema.
Tablas anidadas (provoca fallo en la tarea).
Vistas materializadas.
Operaciones DDL en atributos cuyos nombres contienen palabras clave o caracteres especiales.
Operaciones de cambio de ROWID:
split partition,table move,table shrink,move partition key(causan inconsistencia de datos o fallo en la tarea).Cifrado SSL para transferencia de datos.
Modo Oracle Label Security.
Desajuste de conjunto de caracteres:
DTS admite escenarios donde el conjunto de caracteres de escritura difiere del conjunto de caracteres de la base de datos. Si su conjunto de caracteres de escritura es distinto al de la base de datos, debe establecer el parámetro Actual Write Code (source.column.encoding).
Tablas sin clave primaria ni clave única:
La migración o sincronización desde tablas sin clave primaria ni clave única tiene dos efectos: la velocidad de escritura es lenta, lo que puede causar latencia en la tarea, y no se garantiza la consistencia de los datos, por lo que podrían aparecer datos duplicados en el destino.
Para tareas incrementales: Evite reversiones parciales de transacciones grandes y eliminaciones masivas dentro de transacciones grandes en el origen. Estas operaciones pueden provocar la pérdida de sentencias DELETE incrementales.
Nota sobre el formato de registros de Oracle: Oracle es una base de datos comercial y de código cerrado. Su formato de registros puede presentar problemas de análisis sintáctico inevitables durante la captura de datos modificados (CDC). Antes de habilitar la sincronización o migración incremental desde un origen Oracle en un entorno productivo, ejecute una prueba de concepto (POC) exhaustiva que cubra todos los tipos de cambios del negocio, modificaciones de esquema y cargas en horas pico. La lógica de negocio en su entorno productivo debe coincidir con lo probado durante la fase POC.
Impacto en el rendimiento: Durante la fase de migración completa, DTS consume recursos de lectura en la base de datos de origen; generalmente menos de 2 núcleos de CPU y 4 GB de memoria. Ejecute las tareas de migración fuera de las horas pico.
Amazon RDS for Oracle como origen
| Restricción | Detalles |
|---|---|
| Versiones compatibles | 10g, 11g, 12c, 18c, 19c |
| Arquitecturas compatibles | Nodo único y RAC. Para las versiones 12c, 18c y 19c, solo se admiten arquitecturas no CDB. |
| Datos compatibles | Igual que Oracle autogestionado. Consulte Oracle autogestionado como origen. |
| Ancho de banda de red | 100 Mb/s o superior |
| Tipos de conexión | Direcciones IP públicas, direcciones IP privadas y líneas dedicadas. Para RAC: SCAN IP, VIP de nodo único o IP física. No se admiten conexiones a la SCAN IP de un nodo RAC mediante línea dedicada.<br><br>Se admiten bases de datos primarias y secundarias ADG.<br> Nota Si la conexión de DTS apunta a una base de datos secundaria ADG y los archivos redo en línea no están archivados, la tarea de DTS experimentará latencia. |
| Requisitos del negocio | Mismos umbrales que para Oracle autogestionado: volumen máximo de registros inferior a 1 TB, volumen promedio por hora inferior a 50 GB y tráfico máximo inferior a 15 MB/s. Aplican los mismos límites de frecuencia DDL y las directrices para tipos de datos LOB. |
Otros límites |
Las operaciones y objetos no compatibles son los mismos que para Oracle autogestionado. Consulte Operaciones y objetos no compatibles. Esto incluye el requisito de configurar el parámetro Actual Write Code (source.column.encoding) si su conjunto de caracteres de escritura difiere del conjunto de caracteres de la base de datos.
Oracle como destino
|
Restricción |
Detalles |
|
Versiones compatibles |
10g, 11g, 12c, 18c, 19c |
|
Arquitecturas compatibles |
Nodo único y RAC. No agregue ni elimine nodos de una base de datos RAC mientras se ejecuta una tarea de DTS. Las arquitecturas CDB y no CDB son compatibles con las versiones 12c y posteriores. Una sola tarea solo puede migrar una PDB. |
|
Ancho de banda de red |
100 Mb/s o superior |
|
Tipos de conexión |
Direcciones IP públicas, direcciones IP privadas, líneas dedicadas y bases de datos primarias y secundarias ADG. Para RAC: SCAN IP, VIP de nodo único o IP física. No se admiten conexiones a la SCAN IP de un nodo RAC mediante línea dedicada. Amazon RDS for Oracle es compatible como destino. |
Límites adicionales para destinos Oracle
Almacenamiento: DTS realiza operaciones INSERT simultáneas durante la migración completa, lo que puede causar fragmentación de tablas. El almacenamiento utilizado por la base de datos de destino será mayor que el del origen una vez finalizada la tarea.
Manejo de VARCHAR y VARCHAR2: Oracle trata las cadenas vacías de tipo VARCHAR o VARCHAR2 como NULL. Al migrar desde una base de datos heterogénea hacia un destino Oracle, elimine las restricciones NOT NULL de los campos VARCHAR y VARCHAR2; de lo contrario, la tarea de DTS podría fallar.
Los campos VARCHAR y VARCHAR2 pueden almacenar un máximo de 4000 bytes. Si los datos no se escriben en estos tipos de campo, cambie el tipo de campo a CLOB y reinicie la tarea de DTS.
Impacto en el rendimiento: Durante la fase de migración completa, DTS consume recursos de red y escritura en el destino. Mantenga la carga de CPU tanto en la base de datos de origen como en la de destino por debajo del 30 %. Ejecute las tareas de migración fuera de las horas pico.
Configuración de la base de datos
Para tareas completas con origen Oracle, no se requiere ninguna configuración especial de la base de datos.
Para tareas incrementales con origen Oracle, debe habilitar el modo ARCHIVELOG y el registro suplementario para que DTS pueda capturar cambios mediante el análisis sintáctico de los registros de origen.
Para tareas con destino Oracle, no se requiere ninguna configuración especial de la base de datos.
Oracle autogestionado como origen
Habilitar el modo ARCHIVELOG
-
Compruebe si el modo ARCHIVELOG ya está habilitado.
El período de retención de registros archivados debe ser de como mínimo 3 días.
archive log list;Si Database log mode muestra Archive Mode, el modo ARCHIVELOG ya está habilitado. Salte a Enable supplemental logging.
-
Reinicie la base de datos.
ImportantePara evitar interrupciones en el servicio, realice este paso fuera de las horas pico.
shutdown immediate; startup mount; -
Habilite el modo ARCHIVELOG.
alter database archivelog; alter database open; -
Verifique la configuración.
archive log list;
Habilitar el registro suplementario
DTS admite dos modos de registro suplementario. Elija según sus necesidades:
|
Modo |
Ventaja |
Límite |
|
Nivel de base de datos |
Mejora la estabilidad de la tarea de DTS |
Utiliza más espacio en disco |
|
Nivel de tabla |
Ahorra espacio en disco en el origen |
Las tablas agregadas mediante DDL sin registro suplementario habilitado no se migran cuando la granularidad de la migración es a nivel de base de datos |
Habilitar el registro suplementario a nivel de base de datos
-
Compruebe si el registro suplementario a nivel de base de datos ya está habilitado.
SELECT supplemental_log_data_min, supplemental_log_data_pk, supplemental_log_data_ui FROM v$database;Si la salida es la siguiente, el registro suplementario ya está habilitado y no se requieren más pasos.
SUPPLEME SUP SUP -------- --- --- IMPLICIT YES YES -
Habilite el registro suplementario mínimo.
alter database add supplemental log data; -
Habilite el registro suplementario para claves primarias y claves únicas.
alter database add supplemental log data (primary key,unique index) columns; -
Verifique la configuración.
SELECT supplemental_log_data_min, supplemental_log_data_pk, supplemental_log_data_ui FROM v$database;
Habilitar el registro suplementario a nivel de tabla
-
Habilite el registro suplementario mínimo.
alter database add supplemental log data; -
Habilite el registro suplementario a nivel de tabla. Elija una de las siguientes opciones según la estructura de la tabla: Para tablas con clave primaria: Habilite el registro suplementario de clave primaria.
alter table <table_name> add supplemental log data (primary key) columns;Para tablas sin clave primaria: Habilite el registro suplementario de todas las columnas.
alter table <table_name> add supplemental log data (all) columns;
Amazon RDS for Oracle como origen
Habilitar el modo ARCHIVELOG
Consulte y establezca el período de retención de registros archivados. El período de retención debe ser de como mínimo 72 horas.
exec rdsadmin.rdsadmin_util.show_configuration;
exec rdsadmin.rdsadmin_util.set_configuration('archivelog retention hours', 72);
Habilitar el registro suplementario
Aplican los mismos dos modos que para Oracle autogestionado. Consulte la tabla comparativa anterior.
Habilitar el registro suplementario a nivel de base de datos
-
Compruebe si el registro suplementario a nivel de base de datos ya está habilitado.
SELECT supplemental_log_data_min, supplemental_log_data_pk, supplemental_log_data_ui FROM v$database;Si la salida muestra
IMPLICIT YES YES, el registro suplementario ya está habilitado. -
Habilite el modo de registro forzado.
exec rdsadmin.rdsadmin_util.force_logging(p_enable => true); -
Habilite el registro suplementario para claves primarias y claves únicas.
exec rdsadmin.rdsadmin_util.alter_supplemental_logging('ADD', 'PRIMARY KEY'); exec rdsadmin.rdsadmin_util.alter_supplemental_logging('ADD', 'UNIQUE');
Habilitar el registro suplementario a nivel de tabla
-
Habilite el registro suplementario de todas las columnas.
exec rdsadmin.rdsadmin_util.alter_supplemental_logging('ADD', 'ALL'); -
Habilite el registro suplementario de clave primaria.
exec rdsadmin.rdsadmin_util.alter_supplemental_logging('ADD', 'PRIMARY KEY');
Preparación de cuentas de base de datos
Oracle como origen
Cree una cuenta de base de datos y otorgue los permisos necesarios para que DTS recopile datos. Los permisos requeridos dependen del tipo de tarea:
|
Tipo de tarea |
Opción de permisos |
|
Tareas de esquema y completas |
Rol DBA o permisos detallados |
|
Tareas incrementales |
Se requieren permisos detallados |
Para tareas incrementales desde un origen Oracle no CDB, también puede otorgar el rol DBA en lugar de permisos detallados.
Otorgar el rol DBA
-- Create the account and grant permissions
create user rdsdt_dtsacct identified by rdsdt_dtsacct;
grant create session to rdsdt_dtsacct;
grant connect to rdsdt_dtsacct;
grant dba to rdsdt_dtsacct;
-- Verify the permissions
select * from user_tab_privs;
select granted_role from user_role_privs;
Permisos detallados para tareas de esquema y completas
-- Create the account and grant permissions
create user rdsdt_dtsacct identified by rdsdt_dtsacct;
grant create session to rdsdt_dtsacct;
grant connect to rdsdt_dtsacct;
grant select_catalog_role to rdsdt_dtsacct;
grant select any table to rdsdt_dtsacct;
-- Verify the permissions
select * from user_role_privs;
select * from user_sys_privs;
Permisos detallados para tareas incrementales
Otorgue permisos según su versión de Oracle.
Oracle 10g y 11g
-- Create the account and grant permissions
create user rdsdt_dtsacct identified by rdsdt_dtsacct;
grant create session to rdsdt_dtsacct;
grant connect to rdsdt_dtsacct;
grant select_catalog_role to rdsdt_dtsacct;
grant select any table to rdsdt_dtsacct;
grant select any transaction to rdsdt_dtsacct;
grant select on all_objects to rdsdt_dtsacct;
grant select on all_tab_cols to rdsdt_dtsacct;
grant select on dba_registry to rdsdt_dtsacct;
grant execute on sys.dbms_logmnr to rdsdt_dtsacct;
grant select on v_$log to rdsdt_dtsacct;
grant select on v_$logfile to rdsdt_dtsacct;
grant select on v_$standby_log to rdsdt_dtsacct;
-- Grant v_$standby_log if the Oracle database is an ADG secondary database
grant select on v_$archived_log to rdsdt_dtsacct;
grant select on v_$parameter to rdsdt_dtsacct;
grant select on v_$database to rdsdt_dtsacct;
grant select on v_$active_instances to rdsdt_dtsacct;
grant select on v_$instance to rdsdt_dtsacct;
grant select on v_$logmnr_contents to rdsdt_dtsacct;
grant select on sys.USER$ to rdsdt_dtsacct;
grant select on sys.OBJ$ to rdsdt_dtsacct;
grant select on sys.COL$ to rdsdt_dtsacct;
grant select on sys.IND$ to rdsdt_dtsacct;
grant select on sys.ICOL$ to rdsdt_dtsacct;
grant select on sys.CDEF$ to rdsdt_dtsacct;
grant select on sys.CCOL$ to rdsdt_dtsacct;
grant select on sys.TABPART$ to rdsdt_dtsacct;
grant select on sys.TABSUBPART$ to rdsdt_dtsacct;
grant select on sys.TABCOMPART$ to rdsdt_dtsacct;
-- Verify the permissions
select * from user_role_privs;
select * from user_sys_privs;
select * from user_tab_privs;
Oracle 12c a 19c (no CDB)
-- Create the account and grant permissions
create user rdsdt_dtsacct IDENTIFIED BY rdsdt_dtsacct;
grant create session to rdsdt_dtsacct;
grant connect to rdsdt_dtsacct;
grant select_catalog_role to rdsdt_dtsacct;
grant logmining to rdsdt_dtsacct;
grant execute_catalog_role to rdsdt_dtsacct;
grant select any table to rdsdt_dtsacct;
grant select any transaction to rdsdt_dtsacct;
grant select on all_objects to rdsdt_dtsacct;
grant select on all_tab_cols to rdsdt_dtsacct;
grant select on dba_registry to rdsdt_dtsacct;
grant execute on sys.dbms_logmnr to rdsdt_dtsacct;
grant select on v_$log to rdsdt_dtsacct;
grant select on v_$logfile to rdsdt_dtsacct;
grant select on v_$standby_log to rdsdt_dtsacct;
-- Grant v_$standby_log if the Oracle database is an ADG secondary database
grant select on v_$archived_log to rdsdt_dtsacct;
grant select on v_$parameter to rdsdt_dtsacct;
grant select on v_$database to rdsdt_dtsacct;
grant select on v_$active_instances to rdsdt_dtsacct;
grant select on v_$instance to rdsdt_dtsacct;
grant select on v_$logmnr_contents to rdsdt_dtsacct;
grant select on sys.USER$ to rdsdt_dtsacct;
grant select on sys.OBJ$ to rdsdt_dtsacct;
grant select on sys.COL$ to rdsdt_dtsacct;
grant select on sys.IND$ to rdsdt_dtsacct;
grant select on sys.ICOL$ to rdsdt_dtsacct;
grant select on sys.CDEF$ to rdsdt_dtsacct;
grant select on sys.CCOL$ to rdsdt_dtsacct;
grant select on sys.TABPART$ to rdsdt_dtsacct;
grant select on sys.TABSUBPART$ to rdsdt_dtsacct;
grant select on sys.TABCOMPART$ to rdsdt_dtsacct;
-- Verify the permissions
select * from user_role_privs;
select * from user_sys_privs;
select * from user_tab_privs;
Oracle 12c a 19c (CDB)
El nombre de la cuenta en la pluggable database (PDB) debe coincidir con el nombre de la cuenta en CDB$ROOT, excluyendo el prefijo C## para usuarios comunes.
-- Step 1: Switch to the PDB, create the account, and grant permissions
alter session set container = ORCLPDB1;
create user rdsdt_dtsacct identified by rdsdt_dtsacct;
grant create session to rdsdt_dtsacct;
grant connect to rdsdt_dtsacct;
grant select_catalog_role to rdsdt_dtsacct;
grant logmining TO rdsdt_dtsacct;
grant execute_catalog_role to rdsdt_dtsacct;
grant select any table to rdsdt_dtsacct;
grant select any transaction to rdsdt_dtsacct;
grant select on all_objects to rdsdt_dtsacct;
grant select on all_tab_cols to rdsdt_dtsacct;
grant select on dba_registry to rdsdt_dtsacct;
grant execute on sys.dbms_logmnr to rdsdt_dtsacct;
grant select on v_$pdbs to rdsdt_dtsacct;
grant select on v_$log to rdsdt_dtsacct;
grant select on v_$logfile to rdsdt_dtsacct;
grant select on v_$standby_log to rdsdt_dtsacct;
-- Grant v_$standby_log if the Oracle database is an ADG secondary database
grant select on v_$archived_log to rdsdt_dtsacct;
grant select on v_$parameter to rdsdt_dtsacct;
grant select on v_$database to rdsdt_dtsacct;
grant select on v_$active_instances to rdsdt_dtsacct;
grant select on v_$instance to rdsdt_dtsacct;
grant select on v_$logmnr_contents to rdsdt_dtsacct;
grant select on sys.USER$ to rdsdt_dtsacct;
grant select on sys.OBJ$ to rdsdt_dtsacct;
grant select on sys.COL$ to rdsdt_dtsacct;
grant select on sys.IND$ to rdsdt_dtsacct;
grant select on sys.ICOL$ to rdsdt_dtsacct;
grant select on sys.CDEF$ to rdsdt_dtsacct;
grant select on sys.CCOL$ to rdsdt_dtsacct;
grant select on sys.TABPART$ to rdsdt_dtsacct;
grant select on sys.TABSUBPART$ to rdsdt_dtsacct;
grant select on sys.TABCOMPART$ to rdsdt_dtsacct;
-- Step 2: Switch to CDB$ROOT and create the CDB-level account
alter session set container = CDB$ROOT;
-- This method requires modifying a default Oracle database parameter
alter session set "_ORACLE_SCRIPT"=true;
create user rdsdt_dtsacct identified by rdsdt_dtsacct;
grant create session to rdsdt_dtsacct;
grant connect to rdsdt_dtsacct;
grant logmining to rdsdt_dtsacct;
grant execute_catalog_role to rdsdt_dtsacct;
grant select on v_$logmnr_contents to rdsdt_dtsacct;
grant execute on sys.dbms_logmnr to rdsdt_dtsacct;
-- Verify the permissions
select * from user_role_privs;
select * from user_sys_privs;
select * from user_tab_privs;
Amazon RDS for Oracle (no CDB)
Utilice Oracle SQL Developer para otorgar permisos.
-- Create the account and grant permissions
create user rdsdt_dtsacct identified by rdsdt_dtsacct;
grant create session to rdsdt_dtsacct;
grant connect to rdsdt_dtsacct;
grant logmining to rdsdt_dtsacct;
grant execute_catalog_role to rdsdt_dtsacct;
grant select any table to rdsdt_dtsacct;
grant select any transaction to rdsdt_dtsacct;
exec rdsadmin.rdsadmin_util.grant_sys_object('V_$LOGMNR_LOGS','RDSDT_DTSACCT','SELECT');
exec rdsadmin.rdsadmin_util.grant_sys_object('ALL_OBJECTS','RDSDT_DTSACCT','SELECT');
exec rdsadmin.rdsadmin_util.grant_sys_object('ALL_TAB_COLS','RDSDT_DTSACCT','SELECT');
exec rdsadmin.rdsadmin_util.grant_sys_object('DBA_REGISTRY','RDSDT_DTSACCT','SELECT');
exec rdsadmin.rdsadmin_util.grant_sys_object('V_$LOG','RDSDT_DTSACCT','SELECT');
exec rdsadmin.rdsadmin_util.grant_sys_object('V_$LOGFILE','RDSDT_DTSACCT','SELECT');
exec rdsadmin.rdsadmin_util.grant_sys_object('V_$ARCHIVED_LOG','RDSDT_DTSACCT','SELECT');
exec rdsadmin.rdsadmin_util.grant_sys_object('V_$PARAMETER','RDSDT_DTSACCT','SELECT');
exec rdsadmin.rdsadmin_util.grant_sys_object('V_$DATABASE','RDSDT_DTSACCT','SELECT');
exec rdsadmin.rdsadmin_util.grant_sys_object('V_$ACTIVE_INSTANCES','RDSDT_DTSACCT','SELECT');
exec rdsadmin.rdsadmin_util.grant_sys_object('V_$INSTANCE','RDSDT_DTSACCT','SELECT');
exec rdsadmin.rdsadmin_util.grant_sys_object('V_$LOGMNR_CONTENTS','RDSDT_DTSACCT','SELECT');
exec rdsadmin.rdsadmin_util.grant_sys_object('DBMS_LOGMNR','RDSDT_DTSACCT','EXECUTE');
exec rdsadmin.rdsadmin_util.grant_sys_object('USER$','RDSDT_DTSACCT','SELECT');
exec rdsadmin.rdsadmin_util.grant_sys_object('OBJ$','RDSDT_DTSACCT','SELECT');
exec rdsadmin.rdsadmin_util.grant_sys_object('COL$','RDSDT_DTSACCT','SELECT');
exec rdsadmin.rdsadmin_util.grant_sys_object('IND$','RDSDT_DTSACCT','SELECT');
exec rdsadmin.rdsadmin_util.grant_sys_object('ICOL$','RDSDT_DTSACCT','SELECT');
exec rdsadmin.rdsadmin_util.grant_sys_object('CDEF$','RDSDT_DTSACCT','SELECT');
exec rdsadmin.rdsadmin_util.grant_sys_object('CCOL$','RDSDT_DTSACCT','SELECT');
exec rdsadmin.rdsadmin_util.grant_sys_object('TABPART$','RDSDT_DTSACCT','SELECT');
exec rdsadmin.rdsadmin_util.grant_sys_object('TABSUBPART$','RDSDT_DTSACCT','SELECT');
exec rdsadmin.rdsadmin_util.grant_sys_object('TABCOMPART$','RDSDT_DTSACCT','SELECT');
-- Verify the permissions
select * from user_role_privs;
select * from user_sys_privs;
select * from user_tab_privs;
Oracle como destino
Cree una cuenta de base de datos y otorgue los permisos que DTS necesita para escribir datos. El rol requerido depende del tipo de tarea:
|
Tipo de tarea |
Rol obligatorio |
|
Tareas de esquema |
Rol DBA |
|
Tareas completas e incrementales |
Rol resource |
Otorgar el rol DBA
-- Create the account and grant permissions
create user rdsdt_dtsacct identified by rdsdt_dtsacct;
grant create session to rdsdt_dtsacct;
grant connect to rdsdt_dtsacct;
grant dba to rdsdt_dtsacct;
-- Verify the permissions
select * from user_tab_privs;
select granted_role from user_role_privs;
Otorgar el rol resource
-- Create the account and grant permissions
create user rdsdt_dtsacct identified by rdsdt_dtsacct;
grant create session to rdsdt_dtsacct;
grant connect to rdsdt_dtsacct;
grant resource to rdsdt_dtsacct;
-- Verify the permissions
select * from user_tab_privs;
select granted_role from user_role_privs;
Pasos siguientes
Configure una tarea de DTS con un origen o destino Oracle. Consulte los temas de configuración correspondientes en Synchronization solutions o Migration solutions.
Apéndice
Tipos de datos
|
Compatible |
No compatible |
||
|
NUMBER, FLOAT, REAL, BINARY_FLOAT, CHAR [(size [BYTE |
CHAR])], NCHAR[(size)], VARCHAR2(size [BYTE |
CHAR]), NVARCHAR2(size), CLOB, NCLOB, LONG, DATE, RAW(size), LONG_RAW, BLOB, TIMESTAMP[fractional_seconds_precision], TIMESTAMP [(fractional_seconds_precision)] WITH TIME ZONE, TIMESTAMP [(fractional_seconds_precision)] WITH LOCAL TIME ZONE, INTERVAL YEAR [(year_precision)] TO MONTH, INTERVAL DAY [(day_precision)] TO SECOND [(fractional_seconds_precision)] XMLTYPE: se admite el modo de almacenamiento CLOB. No se admite el modo de almacenamiento BLOB. |
SDO_GEOMETRY, SDO_TOPO_GEOMETRY, SDO_GEORASTER, ROWID, UROWID, ANYTYPE, ANYDATA, ANYDATASET, VARRAY, tipos definidos por el usuario |
Conjuntos de caracteres
|
Compatible |
No compatible |
|
ASCII, ISO, UNICODE, US7ASCII, WE8HP, US8PC437, WE8EBCDIC285, WE8PC850, D7DEC, F7DEC, S7DEC, E7DEC, SF7ASCII, NDK7DEC, I7DEC, NL7DEC, CH7DEC, YUG7ASCII, SF7DEC, TR7DEC, IW7IS960, IN8ISCII, EE8ISO8859P2, SE8ISO8859P3, NEE8ISO8859P4, CL8ISO8859P5, AR8ISO8859P6, EL8ISO8859P7, IW8ISO8859P8, WE8ISO8859P9, NE8ISO8859P10, TH8TISASCII, BN8BSCII, VN8VN3, VN8MSWIN1258, WE8NEXTSTEP, AR8ASMO708PLUS, AR8EBCDICX, AR8XBASIC, EL8DEC, TR8DEC, WE8EBCDIC37, WE8EBCDIC37C, WE8EBCDIC500, WE8EBCDIC500C, WE8EBCDIC871, WE8EBCDIC284, EEC8EUROASCI, EEC8EUROPA3, LA8PASSPORT, BG8PC437S, EE8PC852, RU8PC866, RU8BESTA, IW8PC1507, RU8PC855, TR8PC857, CL8MACCYRILLIC, CL8MACCYRILLICS, WE8PC860, IS8PC861, EE8MSWIN1250, CL8MSWIN1251, ET8MSWIN923, BG8MSWIN, EL8MSWIN1253, IW8MSWIN1255, LT8MSWIN921, TR8MSWIN1254, WE8MSWIN1252, BLT8MSWIN1257, D8EBCDIC273, I8EBCDIC280, DK8EBCDIC277, S8EBCDIC278, F8EBCDIC297, IW8EBCDIC1086, N8PC865, BLT8CP921, LV8PC1117, LV8PC8LR, LV8RST104090, CL8KOI8R, BLT8PC775, F7SIEMENS9780X, E7SIEMENS9780X, S7SIEMENS9780X, DK7SIEMENS9780X, N7SIEMENS9780X, I7SIEMENS9780X, D7SIEMENS9780X, WE8GCOS7, EL8GCOS7, US8BS2000, D8BS2000, F8BS2000, E8BS2000, DK8BS2000, S8BS2000, WE8BS2000, WE8BS2000L5, CL8BS2000, WE8DG, WE8NCR4970, WE8ROMAN8, EE8MACCE, EE8MACCES, EE8MACCROATIAN, EE8MACCROATIANS, TR8MACTURKISH, TR8MACTURKISHS, IS8MACICELANDIC, IS8MACICELANDICS, EL8MACGREEK, EL8MACGREEKS, IW8MACHEBREW, IW8MACHEBREWS, US8ICL, WE8ICL, WE8ISOICLUK, WE8MACROMAN8, WE8MACROMAN8S, TH8MACTHAI, TH8MACTHAIS, HU8CWI2, EL8PC437S, EL8PC737, LT8PC772, LT8PC774, EL8PC869, EL8PC851, CDN8PC863, HU8ABMOD, AR8ASMO8X, AR8HPARABIC8T, AR8NAFITHA711, AR8NAFITHA711T, AR8SAKHR707, AR8SAKHR707T, AR8MUSSAD768, AR8MUSSAD768T, AR8ADOS710, AR8ADOS710T, AR8ADOS720, AR8ADOS720T, AR8APTEC715, AR8APTEC715T, AR8MSAWIN, AR8NAFITHA721, AR8NAFITHA721T, AR8SAKHR706, AR8ARABICMAC, AR8ARABICMACS, AR8ARABICMACT, LA8ISO6937, US8NOOP, WE8DEC, WE8DECTST, JA16VMS, JA16EUC, JA16EUCYEN, JA16EUCTILDE, JA16DBCS, JA16SJIS, JA16SJISTILDE, JA16SJISYEN, JA16EBCDIC930, JA16MACSJIS, KO16KSC5601, KO16DBCS, KO16KSCCS, KO16MSWIN949, ZHS16CGB231280, ZHS16MACCGB231280, ZHS16GBK, ZHS16DBCS, ZHS32GB18030, ZHT32EUC, ZHT32SOPS, ZHT16DBT, ZHT32TRIS, ZHT16DBCS, ZHT16BIG5, ZHT16CCDC, ZHT16MSWIN950, AL24UTFFSS, UTF8, UTFE, KO16TSTSET, JA16TSTSET2, JA16TSTSET, US16TSTFIXED, AL16UTF16LE, TH8TISEBCDIC, TH8TISEBCDICS, BLT8EBCDIC1112, BLT8EBCDIC1112S, CE8BS2000, CL8EBCDIC1025, CL8EBCDIC1025C, CL8EBCDIC1025R, CL8EBCDIC1025S, CL8EBCDIC1025X, CL8EBCDIC1158, CL8EBCDIC1158R, D8EBCDIC1141, DK8EBCDIC1142, EE8BS2000, EE8EBCDIC870, EE8EBCDIC870C, EE8EBCDIC870S, EL8EBCDIC423R, EL8EBCDIC875, EL8EBCDIC875S, EL8EBCDIC875R, F8EBCDIC1147, I8EBCDIC1144, WE8BS2000E, WE8EBCDIC1047, WE8EBCDIC1047E, WE8EBCDIC1140, WE8EBCDIC1140C, WE8EBCDIC1145, WE8EBCDIC1146, WE8EBCDIC1148, WE8EBCDIC1148C, AR8EBCDIC420S, IW8EBCDIC424, IW8EBCDIC424S, TR8EBCDIC1026, TR8EBCDIC1026S, ZHT16HKSCS, ZHT16HKSCS31, BLT8ISO8859P13, WE8ISO8859P1, WE8ISO8859P15, AR8MSWIN1256, S8EBCDIC1143, AZ8ISO8859P9E, CEL8ISO8859P14, CL8ISOIR111, CL8KOI8U, WE8PC858, WE8EBCDIC924, AL32UTF8, AL16UTF16 |
Otros conjuntos de caracteres |