Tenemos que migrar nuestra base de datos de MSSQL a Oracle y tenemos más de 100 procedimientos almacenados escritos en
PL/SQL
TSQL. Sé que es una posibilidad remota, pero ¿alguna vez alguien ha utilizado con éxito una herramienta de migración automática para hacer el trabajo? He visto algunas herramientas en la web, pero no tengo forma de juzgar su capacidad para manejar varios códigos. Cualquier experiencia personal en el asunto ayudaría.¿Herramienta de migración de TSQL a PL/SQL?
Respuesta
- SwisSQL - SQL Server to Oracle Migration Tool 3.5;
- tsql to pl sql;
- Convert SQL Server T-SQL to Oracle PL/SQL (syntax and equivalences);
Sin embargo, hay algunas optimizaciones que pueden ser necesarias para realizar después de la conversión. Por lo tanto, debería considerar revisar la conversión una vez que haya finalizado.
editar # 1
Otra herramienta interesante sería:
Spectral Core's Full Convert Enterprise
¿Tiene experiencia con alguno de ellos?
Desafortunadamente no. Acabo de realizar conversiones a SQL Server utilizando SSIS.
editar # 2
Parece que hay una herramienta más apropiada directamente de Oracle que iba a mejorar la confianza.
Directamente desde Oracle: Migrating from Microsoft SQL Server to Oracle
y el núcleo dispone de:
tecnología de migración desarrolladorSQL es compatible con las siguientes características básicas cuando se migra de Microsoft SQL Server:
- Convierte automáticamente los tipos de datos de columna a los tipos de datos Oracle apropiados.
- Resuelve automáticamente conflictos de nombres de objetos, como conflictos con palabras reservadas de Oracle.
- Analiza y transforma procedimientos almacenados de T-SQL, funciones, desencadenadores y vistas a Oracle PL/SQL.
- Ofrece capacidades avanzadas de personalización como la capacidad de cambiar las asignaciones de tipos de datos, eliminar y cambiar el nombre de los objetos.
- Genera informes sobre el estado de la migración.
- Genera los scripts DDL para la creación de la base de datos Oracle de destino.
- Genera secuencias de comandos para el movimiento de datos
Muestra mensajes informativos, de error y de advertencia sobre la migración en una ventana de progreso.
- Por lo tanto, le sugiero que observe todos los detalles que no se mencionan con anterioridad;
- Observe detenidamente los detalles de información proporcionados por la herramienta;
- Pruebe sus procedimientos almacenados después de convertirlos.
Si se echa un vistazo como lo que SQL Server no ofrece en comparación con Oracle, estos son puntos en los que me gustaría ver en primer lugar. Para conocer estas diferencias, siga el enlace 3. Convert SQL Server T-SQL to Oracle PL/SQL (syntax and equivalences)
arriba.
¿Tienes experiencia con alguno de ellos? ¿Qué tan cerca están de trabajar? ¿Encontraste algún error sutil que debería tener en cuenta? – gooli
Consulte mis ediciones para obtener respuestas. Sin embargo, 100 procedimientos almacenados no es mucho trabajo para hacer a mano, si se siente cómodo con Oracle PL/SQL. –
La traducción no es lo que me preocupa, es la prueba la que me intimida. Pero supongo que no hay forma de evitar eso. Probablemente vamos a escribir un conjunto de pruebas unitarias en Java que podrá ejecutarse tanto en Oracle como en SQL Server y actuará como una herramienta de regresión. Gracias por su exhaustiva respuesta e investigación. – gooli
En el pasado traté de hacer lo contrario, pero me temo que no hay una manera 100% confiable. Algunas características son exclusivas de cada RDBMS y no pueden ser replicadas por una herramienta (por ejemplo, campos de IDENTIDAD en SQL Server vs Sequences en Oracle). Teniendo en cuenta que, al final, tuve que revisar cada Procedimiento almacenado para asegurarme de que hace lo que se supone que debe hacer, me di cuenta de que era mejor planificar un puerto manual y aprender algo de PL/SQL mientras lo hacía.
Sugeriría hacerlo a mano. Primero, para mí, personalmente, un 100 no suena tan mal en absoluto. Apuesto a que su desarrollo sigue patrones, usando getutcdate() en lugar de current_timestamp, etc. Esto significa que probablemente haya algunos problemas muy repetitivos de los que usted y su equipo podrán aprender. Para mí, esto tendrá el beneficio adicional de enseñarte los matices/extensiones de PL/SQL, que probablemente necesitarás aprender para mantener/expandir el nuevo sistema.
¡Buena suerte!
Hacerlo a mano es la opción predeterminada con la que íbamos, pero pensé que vería si hubiera una manera más simple. Gracias. – gooli
- 1. ¿Hay alguna herramienta de migración de CVS a Git?
- 2. Herramienta de migración de datos de código abierto
- 3. ¿Herramienta para detectar código de copia/pegado en TSQL?
- 4. ¿Funciona el sur de Django (herramienta de migración) para innodb?
- 5. Migración de TFS a Redmine
- 6. Colecciones de concatenación en PLSQL
- 7. Seleccionar de PLSQL Matriz asociativa?
- 8. Reflexión en PLSQL?
- 9. Migración desde Winforms a WPF
- 10. Migración de PHP a Java
- 11. Migración de TFS a Git
- 12. Migración de Authlogic a Devise
- 13. Migración de PHP4 a PHP5
- 14. Herramienta para migrar de DB2 a MySQL
- 15. Migración EF a Oracle
- 16. MS Acceso a Oracle fácil Conversión/Migración
- 17. Migración de sitios de MediaWiki a Windows Sharepoint Services Wiki
- 18. Obtener lista de usuarios LDAP usando PLSQL
- 19. Migración de WebForms de ASP.NET a MVC
- 20. Migración de 'Controles' de VB.NET a C#
- 21. Guía de migración de Axis2 a CxF
- 22. Uso de la herramienta de migración EF4 con el primer enfoque de modelo
- 23. Significado del símbolo PLSQL "=>"
- 24. ¿Inconsistencia de TSQL Round()?
- 25. Convertir TSQL a MS-Access SQL
- 26. Migración de Webrat a Carpincho ... sin éxito
- 27. Migración de Oracle a SQL Server
- 28. Migración de Mercurial a la subversión
- 29. Migración de ExtJS 3.0 a 4.0
- 30. Migración de Hibernate 3.2.5 a 3.6
posible duplicado de [Microsoft SQL Server a Oracle Data Migration (Conversion) (Otro RDBMS está bien, también)] (http://stackoverflow.com/questions/1484814/microsoft-sql-server-to-oracle-data- migration-conversion-other-rdbms-ok-too) – APC
"Necesitamos migrar nuestra base de datos de MSSQL a Oracle y tenemos más de 100 procedimientos almacenados escritos en PL/SQL". Esto no tiene sentido. Si está convirtiendo de MSSQL a Oracle, seguramente sus procedimientos almacenados están escritos en T-SQL, y quiere que se conviertan a PL/SQL ...? – ObiWanKenobi
@ObiWan, gracias, arregló eso. – gooli