Oracle migration to mysql

hello all,
i have to migrate an oracle database to mysql under linux(redhat6.2).
is there any possibility to do that?
what do i have to do?
bouali

using dg4odbc gateway you need a full refresh for the mview to collect actual data from MySQL db.

Similar Messages

  • Problems while migrating from mySql DB to oracle DB

    Hi All,
    I'm using sql developer tool to migrate from MySql DB to oracle DB. I followed the below steps.
    1) I've created oracle and mysql connections successfully.
    2) I've captured Mysql data and I'm able to see the captured model in ' Captured Models ' window. After that right clicked on the captured model and selected ' Set Data Mapping'. Selected ' apply ' button without changing anything. After that I've right clicked on the captured model and selected ' Convert to Oracle Model ' . It has shown the converting process. After some time it has shown conversion completed successfully.
    But converted model is not visible in ' Converted Models ' window.
    Can anyone kindly assist on how to migrate from MySql Db to Oracle DB?
    Thanks,
    Saty.

    Hi,
    We did mysql to oracle migration some time back and played with workbench tool and many other softwares available.
    However our experience was not so good with these tools, each tool had its own limitation and was not able to migrate 100% data. Even the speed of migration was too slow which would have violated our production SLAs.
    So after spending a month with these tools we finally decided to create our own scripts for data migration. We used tools like TOAD and SQL Yok to create the DDL for the tables and other DB objects.
    For the data migration we downloaded the mysql data in flat files and used sql loader to upload the same data in oracle. Even if this was a time consuming activity but this resulted in 100% data migration with no record getting failed and the time taken for this activity was around 6 Hrs in comparison to time of 24-28 Hrs that the workbench tool took.
    Amar

  • Out of memory error in migrating from mysql to oracle

    Hi,
    I'm trying migrate from mysql to oracle9i. The hardware and software requirements are matching or even much higher than mentioned in the documentation. I have installed OMWB is properly(hope so). When I try to migrate the desired database from mysql to oracle, the repository, the Oracle model are created successfully. But while migrating data, say for around 35000 rows insertion everything works pretty fine. But after sometime, the migration stops and no error or anything appears in the screen.And in the Errorlog I get "OutOfMemoryError".
    I tried to migrate single table also. But I still get this problem after sometime. The tables may contain from 10 - 130000 rows...
    I even tried to change the %JRE..% memory value to 64M or 128M in the omwb.bat file and the O/s is Microsoft Windows XP, RAM 256MB.
    Any help is much appreciated.
    Thanks in advance.

    Hi Viji,
    did the message in the error.log provide any extra information? For example, was the OutOfMemory error prefixed with a string
    like "cannot create new native thread" ? My suggestion to workaround the problem would have been to increase the JVM heap size to 128
    but this appears to have been unsuccessful for you. Can you send a mail to the Migration Workbench support services
    ([email protected]) explaining the problem, and attach the full error.log file please ? (please also copy me on the mail).
    In the meantime, you can workaround this by migrating the schema only (there is a switch on step 3 of the migration wizard asking:
    "Do you want to migrate the table data to Oracle?" - just select the "No" option). When the schema has migrated, you can then use the
    offline data loading facility to migrate the data. This uses data extraction scripts and SDQL*Loader to migrate the data to the target
    Oracle database.You can learn more about the offline data loading facility from the plugins referenceguide (from the Help menu in
    the Migration Workbench).
    I hope this helps,
    Tom.

  • MySQL to Oracle Migration Issue - Unknown character set index for field.

    Hi,
    Looking for help..!!!
    Migrating mySQL - version 4 database to Oracle 10g using oracle migration work bench. It went well until the last step. But, during the data migration, OMWB has given the following error:
    +++++++++++
    Unable to migrate data from source table gets.sales_order_01 to destination table gets_ora.sales_order_oracle10: gets_ora.sales_order_oracle10; Unknown character set index for filed "12596" received from ser.
    +++++++++++
    Log file shows:
    java.sql.SQLException: Unknown character set index for field '12596' received from server.
         at com.mysql.jdbc.Connection.getCharsetNameForIndex(Connection.java:1692)
         at com.mysql.jdbc.Field.<init>(Field.java:161)
         at com.mysql.jdbc.MysqlIO.unpackField(MysqlIO.java:510)
         at com.mysql.jdbc.MysqlIO.getResultSet(MysqlIO.java:285)
         at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:1326)
         at com.mysql.jdbc.MysqlIO.sqlQuery(MysqlIO.java:1225)
         at com.mysql.jdbc.Connection.execSQL(Connection.java:2278)
         at com.mysql.jdbc.Connection.execSQL(Connection.java:2225)
         at com.mysql.jdbc.Statement.executeQuery(Statement.java:1163)
         at oracle.mtg.migrationServer.LoadTableData._migrateTableData(LoadTableData.java:563)
         at oracle.mtg.migrationServer.LoadTableData.run(LoadTableData.java:326)
         at oracle.mtg.migration.WorkerThread.run(Worker.java:268)
    I appreciate your help in this regards.
    Regards,
    K

    Hi K,
    Whats the default character set of you MySQL and Oracle Databases.
    What version of JDBC driver are you using?
    Is there any unicode characters used in your data?
    Have you tried offline data move?
    Thanks
    Dermot.
    Message was edited by:
    dooneill

  • Migration from MySQL 5 to Oracle 10g

    Hi All,
    I'm currently trying to migrate a MySQL database to Oracle and have encountered a few issues, it appears to work fine for most of the tables, with a few errors occurring in the logs for other tables, but they look to be related to connection issues that I am encountering. Both the MySQL and Oracle Database are installed locally on my machine. Below is the exception. Any ideas why the migration would be working perfectly and then encountering the below problems?
    Any help would be greatly appreciated. Thanks in advance. Also, should anyone need any further information regarding my system setup etc. don't hesitate to ask.
    java.sql.SQLException MESSAGE: Communication link failure: java.io.EOFException, underlying cause: null ** BEGIN NESTED EXCEPTION ** java.io.EOFException STACKTRACE: java.io.EOFException at com.mysql.jdbc.MysqlIO.readFully(MysqlIO.java:1395) at com.mysql.jdbc.MysqlIO.reuseAndReadPacket(MysqlIO.java:1571) at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:1930) at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:1907) at com.mysql.jdbc.MysqlIO.nextRow(MysqlIO.java:998) at com.mysql.jdbc.MysqlIO.getResultSet(MysqlIO.java:305) at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:1326) at com.mysql.jdbc.MysqlIO.sqlQuery(MysqlIO.java:1225) at com.mysql.jdbc.Connection.execSQL(Connection.java:2278) at com.mysql.jdbc.Connection.execSQL(Connection.java:2225) at com.mysql.jdbc.Statement.executeQuery(Statement.java:1163) at oracle.dbtools.migration.datamove.online.DataMoveDrone.doDataMove(DataMoveDrone.java:359) at oracle.dbtools.migration.datamove.online.DataMoveDrone.run(DataMoveDrone.java:230) at java.lang.Thread.run(Thread.java:595) ** END NESTED EXCEPTION ** STACKTRACE: java.sql.SQLException: Communication link failure: java.io.EOFException, underlying cause: null ** BEGIN NESTED EXCEPTION ** java.io.EOFException STACKTRACE: java.io.EOFException at com.mysql.jdbc.MysqlIO.readFully(MysqlIO.java:1395) at com.mysql.jdbc.MysqlIO.reuseAndReadPacket(MysqlIO.java:1571) at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:1930) at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:1907) at com.mysql.jdbc.MysqlIO.nextRow(MysqlIO.java:998) at com.mysql.jdbc.MysqlIO.getResultSet(MysqlIO.java:305) at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:1326) at com.mysql.jdbc.MysqlIO.sqlQuery(MysqlIO.java:1225) at com.mysql.jdbc.Connection.execSQL(Connection.java:2278) at com.mysql.jdbc.Connection.execSQL(Connection.java:2225) at com.mysql.jdbc.Statement.executeQuery(Statement.java:1163) at oracle.dbtools.migration.datamove.online.DataMoveDrone.doDataMove(DataMoveDrone.java:359) at oracle.dbtools.migration.datamove.online.DataMoveDrone.run(DataMoveDrone.java:230) at java.lang.Thread.run(Thread.java:595) ** END NESTED EXCEPTION **
    Kindest regards,
    Harry

    Hi,
    Unfortunately now I am receiving a slightly different error, relating to the connection being closed due to a seemingly bad response from the MySQL server, where it expected a larger value than received. I have updated the Third Party JDBC drivers to the latest available.
    The connection appears to drop and stop the data migration process, and it appears that this has stopped sooner than my previous attempt. Any help/advice would be greatly welcomed. I'll continue to investigate this on the web, but would assume this is the best possible resource for resolving these kind of problems.
    Below is the stack trace received in the migration logs:
    It is a particularly large one (sorry)
    Failed to move data: No operations allowed after connection closed.Connection was implicitly closed due to underlying exception/error: ** BEGIN NESTED EXCEPTION ** com.mysql.jdbc.CommunicationsException MESSAGE: Communications link failure due to underlying exception: ** BEGIN NESTED EXCEPTION ** java.io.EOFException MESSAGE: Can not read response from server. Expected to read 23,493 bytes, read 9,268 bytes before connection was unexpectedly lost. STACKTRACE: java.io.EOFException: Can not read response from server. Expected to read 23,493 bytes, read 9,268 bytes before connection was unexpectedly lost. at com.mysql.jdbc.MysqlIO.readFully(MysqlIO.java:1997) at com.mysql.jdbc.MysqlIO.reuseAndReadPacket(MysqlIO.java:2464) at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:2916) at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:885) at com.mysql.jdbc.MysqlIO.nextRow(MysqlIO.java:1360) at com.mysql.jdbc.MysqlIO.readSingleRowSet(MysqlIO.java:2369) at com.mysql.jdbc.MysqlIO.getResultSet(MysqlIO.java:451) at com.mysql.jdbc.MysqlIO.readResultsForQueryOrUpdate(MysqlIO.java:2076) at com.mysql.jdbc.MysqlIO.readAllResults(MysqlIO.java:1451) at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:1787) at com.mysql.jdbc.Connection.execSQL(Connection.java:3277) at com.mysql.jdbc.Connection.execSQL(Connection.java:3206) at com.mysql.jdbc.Statement.executeQuery(Statement.java:1232) at oracle.dbtools.migration.datamove.online.DataMoveDrone.doDataMove(DataMoveDrone.java:359) at oracle.dbtools.migration.datamove.online.DataMoveDrone.run(DataMoveDrone.java:230) at java.lang.Thread.run(Thread.java:595) ** END NESTED EXCEPTION ** Last packet sent to the server was 88935 ms ago. STACKTRACE: com.mysql.jdbc.CommunicationsException: Communications link failure due to underlying exception: ** BEGIN NESTED EXCEPTION ** java.io.EOFException MESSAGE: Can not read response from server. Expected to read 23,493 bytes, read 9,268 bytes before connection was unexpectedly lost. STACKTRACE: java.io.EOFException: Can not read response from server. Expected to read 23,493 bytes, read 9,268 bytes before connection was unexpectedly lost. at com.mysql.jdbc.MysqlIO.readFully(MysqlIO.java:1997) at com.mysql.jdbc.MysqlIO.reuseAndReadPacket(MysqlIO.java:2464) at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:2916) at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:885) at com.mysql.jdbc.MysqlIO.nextRow(MysqlIO.java:1360) at com.mysql.jdbc.MysqlIO.readSingleRowSet(MysqlIO.java:2369) at com.mysql.jdbc.MysqlIO.getResultSet(MysqlIO.java:451) at com.mysql.jdbc.MysqlIO.readResultsForQueryOrUpdate(MysqlIO.java:2076) at com.mysql.jdbc.MysqlIO.readAllResults(MysqlIO.java:1451) at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:1787) at com.mysql.jdbc.Connection.execSQL(Connection.java:3277) at com.mysql.jdbc.Connection.execSQL(Connection.java:3206) at com.mysql.jdbc.Statement.executeQuery(Statement.java:1232) at oracle.dbtools.migration.datamove.online.DataMoveDrone.doDataMove(DataMoveDrone.java:359) at oracle.dbtools.migration.datamove.online.DataMoveDrone.run(DataMoveDrone.java:230) at java.lang.Thread.run(Thread.java:595) ** END NESTED EXCEPTION ** Last packet sent to the server was 88935 ms ago. at com.mysql.jdbc.MysqlIO.reuseAndReadPacket(MysqlIO.java:2622) at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:2916) at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:885) at com.mysql.jdbc.MysqlIO.nextRow(MysqlIO.java:1360) at com.mysql.jdbc.MysqlIO.readSingleRowSet(MysqlIO.java:2369) at com.mysql.jdbc.MysqlIO.getResultSet(MysqlIO.java:451) at com.mysql.jdbc.MysqlIO.readResultsForQueryOrUpdate(MysqlIO.java:2076) at com.mysql.jdbc.MysqlIO.readAllResults(MysqlIO.java:1451) at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:1787) at com.mysql.jdbc.Connection.execSQL(Connection.java:3277) at com.mysql.jdbc.Connection.execSQL(Connection.java:3206) at com.mysql.jdbc.Statement.executeQuery(Statement.java:1232) at oracle.dbtools.migration.datamove.online.DataMoveDrone.doDataMove(DataMoveDrone.java:359) at oracle.dbtools.migration.datamove.online.DataMoveDrone.run(DataMoveDrone.java:230) at java.lang.Thread.run(Thread.java:595) ** END NESTED EXCEPTION **
    Failed to get source row count. Proceeding with unknown (No operations allowed after connection closed.Connection was implicitly closed due to underlying exception/error: ** BEGIN NESTED EXCEPTION ** com.mysql.jdbc.CommunicationsException MESSAGE: Communications link failure due to underlying exception: ** BEGIN NESTED EXCEPTION ** java.io.EOFException MESSAGE: Can not read response from server. Expected to read 23,493 bytes, read 9,268 bytes before connection was unexpectedly lost. STACKTRACE: java.io.EOFException: Can not read response from server. Expected to read 23,493 bytes, read 9,268 bytes before connection was unexpectedly lost. at com.mysql.jdbc.MysqlIO.readFully(MysqlIO.java:1997) at com.mysql.jdbc.MysqlIO.reuseAndReadPacket(MysqlIO.java:2464) at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:2916) at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:885) at com.mysql.jdbc.MysqlIO.nextRow(MysqlIO.java:1360) at com.mysql.jdbc.MysqlIO.readSingleRowSet(MysqlIO.java:2369) at com.mysql.jdbc.MysqlIO.getResultSet(MysqlIO.java:451) at com.mysql.jdbc.MysqlIO.readResultsForQueryOrUpdate(MysqlIO.java:2076) at com.mysql.jdbc.MysqlIO.readAllResults(MysqlIO.java:1451) at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:1787) at com.mysql.jdbc.Connection.execSQL(Connection.java:3277) at com.mysql.jdbc.Connection.execSQL(Connection.java:3206) at com.mysql.jdbc.Statement.executeQuery(Statement.java:1232) at oracle.dbtools.migration.datamove.online.DataMoveDrone.doDataMove(DataMoveDrone.java:359) at oracle.dbtools.migration.datamove.online.DataMoveDrone.run(DataMoveDrone.java:230) at java.lang.Thread.run(Thread.java:595) ** END NESTED EXCEPTION ** Last packet sent to the server was 88935 ms ago. STACKTRACE: com.mysql.jdbc.CommunicationsException: Communications link failure due to underlying exception: ** BEGIN NESTED EXCEPTION ** java.io.EOFException MESSAGE: Can not read response from server. Expected to read 23,493 bytes, read 9,268 bytes before connection was unexpectedly lost. STACKTRACE: java.io.EOFException: Can not read response from server. Expected to read 23,493 bytes, read 9,268 bytes before connection was unexpectedly lost. at com.mysql.jdbc.MysqlIO.readFully(MysqlIO.java:1997) at com.mysql.jdbc.MysqlIO.reuseAndReadPacket(MysqlIO.java:2464) at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:2916) at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:885) at com.mysql.jdbc.MysqlIO.nextRow(MysqlIO.java:1360) at com.mysql.jdbc.MysqlIO.readSingleRowSet(MysqlIO.java:2369) at com.mysql.jdbc.MysqlIO.getResultSet(MysqlIO.java:451) at com.mysql.jdbc.MysqlIO.readResultsForQueryOrUpdate(MysqlIO.java:2076) at com.mysql.jdbc.MysqlIO.readAllResults(MysqlIO.java:1451) at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:1787) at com.mysql.jdbc.Connection.execSQL(Connection.java:3277) at com.mysql.jdbc.Connection.execSQL(Connection.java:3206) at com.mysql.jdbc.Statement.executeQuery(Statement.java:1232) at oracle.dbtools.migration.datamove.online.DataMoveDrone.doDataMove(DataMoveDrone.java:359) at oracle.dbtools.migration.datamove.online.DataMoveDrone.run(DataMoveDrone.java:230) at java.lang.Thread.run(Thread.java:595) ** END NESTED EXCEPTION ** Last packet sent to the server was 88935 ms ago. at com.mysql.jdbc.MysqlIO.reuseAndReadPacket(MysqlIO.java:2622) at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:2916) at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:885) at com.mysql.jdbc.MysqlIO.nextRow(MysqlIO.java:1360) at com.mysql.jdbc.MysqlIO.readSingleRowSet(MysqlIO.java:2369) at com.mysql.jdbc.MysqlIO.getResultSet(MysqlIO.java:451) at com.mysql.jdbc.MysqlIO.readResultsForQueryOrUpdate(MysqlIO.java:2076) at com.mysql.jdbc.MysqlIO.readAllResults(MysqlIO.java:1451) at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:1787) at com.mysql.jdbc.Connection.execSQL(Connection.java:3277) at com.mysql.jdbc.Connection.execSQL(Connection.java:3206) at com.mysql.jdbc.Statement.executeQuery(Statement.java:1232) at oracle.dbtools.migration.datamove.online.DataMoveDrone.doDataMove(DataMoveDrone.java:359) at oracle.dbtools.migration.datamove.online.DataMoveDrone.run(DataMoveDrone.java:230) at java.lang.Thread.run(Thread.java:595) ** END NESTED EXCEPTION ** )
    == 2nd Stack Trace received further down in the logs before the process bombs out altogether from the lack of response from the MySQL database ==
    Failed to move data: Communications link failure due to underlying exception: ** BEGIN NESTED EXCEPTION ** java.io.EOFException MESSAGE: Can not read response from server. Expected to read 23,493 bytes, read 9,268 bytes before connection was unexpectedly lost. STACKTRACE: java.io.EOFException: Can not read response from server. Expected to read 23,493 bytes, read 9,268 bytes before connection was unexpectedly lost. at com.mysql.jdbc.MysqlIO.readFully(MysqlIO.java:1997) at com.mysql.jdbc.MysqlIO.reuseAndReadPacket(MysqlIO.java:2464) at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:2916) at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:885) at com.mysql.jdbc.MysqlIO.nextRow(MysqlIO.java:1360) at com.mysql.jdbc.MysqlIO.readSingleRowSet(MysqlIO.java:2369) at com.mysql.jdbc.MysqlIO.getResultSet(MysqlIO.java:451) at com.mysql.jdbc.MysqlIO.readResultsForQueryOrUpdate(MysqlIO.java:2076) at com.mysql.jdbc.MysqlIO.readAllResults(MysqlIO.java:1451) at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:1787) at com.mysql.jdbc.Connection.execSQL(Connection.java:3277) at com.mysql.jdbc.Connection.execSQL(Connection.java:3206) at com.mysql.jdbc.Statement.executeQuery(Statement.java:1232) at oracle.dbtools.migration.datamove.online.DataMoveDrone.doDataMove(DataMoveDrone.java:359) at oracle.dbtools.migration.datamove.online.DataMoveDrone.run(DataMoveDrone.java:230) at java.lang.Thread.run(Thread.java:595) ** END NESTED EXCEPTION ** Last packet sent to the server was 88935 ms ago.
    Thanking you in advance.
    Kindest regards,
    Harry

  • DB Migration from MYSQL to ORACLE Using Offline Capture

    Hi
    Am doing a database migration from MySQL to Oracle using SQL Developer (version 2.1.1.64). So far, I've successfully captured the MySQL database and converted it to the Oracle Model. However, when generating offline scripts to create the converted model schema into Oracle DDL scripts it managed to generate SQL to create: 1) User 2) Sequences 3) Tables 4) Triggers and 5) constraints.
    It has created the SQL to add the primary key constraints and index constraints. Although it did the foreign key constraints in the SQL, the foreign key constraints seems to have missed the cascading options for the foreign key constraint. I.e. theres no reference of whether the foreign key constraint will restrict on delete or cascade etc.
    We have a foreign keys in the MySql database that have different cascading options and these have not being ported over into the migration SQL. Therefore, all the foreign keys generated in the SQL by default are cascade to restrict on delete.
    Does 'Generate Oracle DDL' not take into account a foreign key's on delete cascading option?
    Any help or information would be greatly appreciated.
    Thanks

    Hello,
    that reminded me for the following thread:
    Migration Microsoft SQL Sever 2005 to Oracle 11g cascade on delete problem
    That is a similar issue, isn't it?
    I opened a bug for that, and it will be fixed in SQL Developer 3.1 (not in any 3.0 Early Adopter version). If you hit the same issue, there is no other way then using the workaround as used in the mentioned thread.
    Regards
    Wolfgang

  • Whether using Oracle after migrating from MySQL be easy or not?

    Though oracle is tough secured one, I don't know exactly the complexity of using Oracle database. Using MySQL 4.1.22 in my website https://www.puntercalls.com/ . Though the site is based on providing share market tips, it deals with a huge amount of stock market data and in much more real time basis hand-to-hand with NSE and BSE info which means a tough security is the utmost demand of the time.
    My question is whether using Oracle after migrating from MySQL be easy or not. You can check my site at https://www.puntercalls.com/ for different real time data updation parts.
    Kind suggestions are greatly appreciated in advance!
    Edited by: 968684 on Oct 31, 2012 7:04 AM

    Hi,
    As you are really asking about how to setup and use securioty features in an Oracle database it woul db ebetter to raise the question in this forum -
    Forum: Database Security - General
    Database Security - General
    They will have more knowledge about Oracle security features and which it would be best for you to use.
    Regards,
    Mike

  • How to migrate the MySQL data to Oracle 9i DB??

    I want to migrate the Mysql database to Oracle 9i database. I make the Mysql datameta to the oracle db.
    Can you help me ? how to do ??
    Pls

    Hi Lei,
    You could also use the Oracle Migration Workbench which is available for FREE from OTN http://otn.oracle.com/tech/migration/workbench/content.html
    Regards,
    Blair.

  • How to migrate Oracle database to MySql server

    Hi ,
    I am on a project that include migration of oracle databases to MySql database ,which include the Data warehouse servers also.
    Please Help me ,what is the steps to migrate the oracle database to MySql database , what need to care w.r.t to objects .
    if any link helps me ,Please let me know.

    Hi,
    This forum is for help with migrating from non-Oracle databases to Oracle. If you need help migrating from Oracle to MySQL then contact MySQL. You could try the MYSQL forum here -
    http://forums.mysql.com/
    Regards,
    Mike

  • Migrating from MySQL to Oracle 11gR2 containing accented characters

    Hello Gurus,
    I am going to migrate a MySQL database that contains accented characters. The collation of the tables holding these data is utf8_unicode_ci.
    I used SQLDeveloper to generate data migration scripts. After a test migration run, the web pages displays "?" instead of the accented character.
    I am currently tracing where the problem is.
    From what I have read, mysqldump uses utf8 as the default character set, so I assume the accented characters in <tablename>.txt files are in tact.
    Could the problem be on sqlldr? Has anyone come across this problem?
    I really would appreciate any help.
    Thanks

    Hi Srini, thanks for the reply.
    here is the result of select * from nls_database_parameters;
    PARAMETER VALUE
    NLS_LANGUAGE AMERICAN
    NLS_TERRITORY AMERICA
    NLS_CURRENCY $
    NLS_ISO_CURRENCY AMERICA
    NLS_NUMERIC_CHARACTERS .,
    NLS_CHARACTERSET AL32UTF8
    NLS_CALENDAR GREGORIAN
    NLS_DATE_FORMAT DD-MON-RR
    NLS_DATE_LANGUAGE AMERICAN
    NLS_SORT BINARY
    NLS_TIME_FORMAT HH.MI.SSXFF AM
    NLS_TIMESTAMP_FORMAT DD-MON-RR HH.MI.SSXFF AM
    NLS_TIME_TZ_FORMAT HH.MI.SSXFF AM TZR
    NLS_TIMESTAMP_TZ_FORMAT DD-MON-RR HH.MI.SSXFF AM TZR
    NLS_DUAL_CURRENCY $
    NLS_COMP BINARY
    NLS_LENGTH_SEMANTICS BYTE
    NLS_NCHAR_CONV_EXCP FALSE
    NLS_NCHAR_CHARACTERSET AL16UTF16
    NLS_RDBMS_VERSION 11.2.0.1.0

  • What should i do with an Oracle 11g Database, MySQL database and a dump file.

    I just joining to a new work field, almost about a database and i know "NOTHING" about this field.
    My company has a system that running by Oracle Database, the problem is that Oracle Database will cost a lot of money when my company expands.
    So the quest is converting Oracle Database to MySQL database.
    Of course i cant try to convert it in the main Database, so i create one Oracle 11g Database on my LocalHost, and it already actived in " Localhost:1158 " etc.
    I have another Sever test that already set up MySQL database, and a dump file from the system.
    So I want to ask these 2 questions :
    1. How to create an new Oracle Database from that dump file ?
    2. Is it alright if i use tool to convert Oracle Database into MySql, or i should do it manually ?
    Thanks alot.

    I just joining to a new work field, almost about a database and i know "NOTHING" about this field.
    My company has a system that running by Oracle Database, the problem is that Oracle Database will cost a lot of money when my company expands.
    So the quest is converting Oracle Database to MySQL database.
    I predict that converting to MySQL will cost your company more as it expands. As you expand managing contention becomes more important - Oracle does this for you. I do not think MySQL does, so you'll have to write more code to deal with this, costing the company money. A big part of making application scalable and reliable is to use stored procedures, how good are MySQL's compared to PL/SQL's. What other features are there that MySQL has that will benefit your company that Oracle doesn't. What do you need to think about as your company expands that need to be taken care of in the database. I would have thought a migration from MySQL to Oracle would be more common to deal with expansion.
    As you know "NOTHING" you need to think about what each database can give you for the next 10 years to cope with you businesses potential requirements, and extimate how much it will cost to implement these requirements, then make the decision

  • Error: java.util.NoSuchElementException while migrating from Mysql

    Hello All,
    I am trying to migrate a Mysql DB to oracle 10g, the following are the steps that I'm following:
    1. - Create an Oracle user named MIGRATIONS and grant it at least RESOURCE, CREATE SESSION, and CREATE VIEW privileges
    2. - Create a database connection named Migration_Repository that connects to the MIGRATIONS user.
    3. - Right-click the Migration_Repository connection, select Manage Migration Repository, and create the repository
    4. - Create an Oracle user whose schema is to be used as the destination for the objects to be migrated
    5. - Create and open an Oracle connection for the schema that I created.
    6. - Create and open a database connection for mysql DB
    7. - Capture the source schema objects to be migrated
    8. - Convert the captured objects to Oracle-format objects.
    9.- When I try to hit "GENERATE" to create the SQL*Plus script, it gets to Sequence 40 and it stops, as soon as I click close. I get the following error message:
    java.util.NoSuchElementException
    I have not been able to find answers in regards to this error, any help would be greatly appreciated.
    David Waizer

    Hi David,
    Are you migrating a MySQL 4.1 instance? There is a known problem with 4.1 (3, 4.0 and 5.0 are ok, this is unique to 4.1). The fix has been committed but will not be available until our next release.
    If this is the case, your options are to move your db to a 5.0 instance, or wait until out next release.
    Regards,
    Dermot.

  • Migration to MySQL

    Dear Friends, We are currently using Oracle 8.1.6 version for our 2 E-Commerce sites. Our company wants to start two more E-Commerce sites. So, We wanted to migrate the existing Oracle databse to MySQL as our new MySQL database is also expected to have similar tables and other database objects.
    Is there any Migration Tool available for it? Also, are there any free Migration Tools for it? Please help me. Also, Is MySQL a good database for an
    E-Commerce site. I have seen that it does'nt have many feautures like views, stored procedures, triggers and even sub-queries. We are planning to use MySQL 3.23.53 version as it's a stable version that can be used in a production site. Also the MySQL 4.0 has some features and it's a Beta version. Please help me?

    Please post your question in the Migration forum.. Database and Application Migrations
    Thanks,
    OTN Team

  • Migration from MySQL - connection problem

    I've just installed OMWB 1.3.1 for WINDOWS and created repository in ORACLE 8.0.5 DB.
    When I enter Source Database Details in Capture Wizard and push Next button nothing is happened. In OMWB log-file I've found the following message among many others:
    Exception occurred during event dispatching:
    java.lang.NoClassDefFoundError: org/gjt/mm/mysql/Driver
    at java.util.Vector.<init>(Vector.java:128)
    The directory C:\Oracle\oracle81\Omwb\drivers\
    is empty while in CLASSPATH env variable I've found the following item:
    C:\Oracle\oracle81\Omwb\drivers\mm.mysql.jdbc-1.2a
    If anybody could help me to solve this problem, please let me know.
    Thank you in advance.
    null

    Hi Vladimir,
    I send you a message from the Migration Workbench team that solved my problem. I hope this will resolve yours too.
    Bye,
    Pierfrancesco
    Hi Pierfrancesco
    MySQL 3.22, 3.23 Requirements
    In order to migrate from MySQL to Oracle, you must install the MM MySQL JDBC
    driver release 1.2a on the same system as the Migration Workbench. You can
    obtain this by downloading the MM MySQL JDBC driver from the WorldServer Web
    site at:
    http://www.worldserver.com/mm.mysql
    Copy and unzip the mm.mysql.jdbc-1.2a.zip file to your
    %ORACLE_HOME%\Omwb\drivers directory. This automatically creates a new
    directory called
    mm.mysql.jdbc-1.2a within the drivers directory.
    Can you please verify that you have this driver extracted to the above
    specified directory. Another check you can do is see whether all the files in
    the zip
    have extracted.
    Please refer to the Release notes which you have access to by selection the Help
    drop down menu in the Workbench.
    I hope this helps
    Best regards
    Oracle Migration Workbench Support
    null

  • Migration from MySql to Derby

    I am currently migrating from MySql to Derby.
    I have been developing a MRPII package for a while now and whilst my classes worked with MySql I am finding difficulty with implementing them using Derby.
    I have developed a GUI interface for MRPII functions and use a Database Interface class to connect to the database.
    The Database Interface class gives me the capability of reading and writing from a database.
    I extend this capability to sub classes ie part, customers, suppliers, work orders.
    The problem I have is with the ' "+standardCost+" ' type statements. In MySql, the database engine recognises that the standard cost variable is a double though using Derby I get the following Errors.
    SQL Exception: Columns of type 'DOUBLE' cannot hold values of type 'CHAR'. In Save Data error code30000
    SQL Exception: Columns of type 'DOUBLE' cannot hold values of type 'CHAR'. In Save Data error code30000
    Executed statement INSERT INTO stock VALUES('BUDGET500','A1', '100.0','50.0','1.0','100.0')
    Executed statement INSERT INTO part VALUES('BUDGET500', 'PENTIUM','76.0', '86.0','EACH','MP','7','33')
    The only solution I see is giving each subclass of Database Interface the individual capability within that class to connect to the database and use prepared statements.
    Does anyone know if Derby has the capability of processing the updates using a similar format as shown in my code.
    package delta.databaseInterface;
    import delta.databaseInterface.DatabaseInterface;
    public class Part extends DatabaseInterface{
         private String partNumber;
         private String partType;
         private String description;
         private double standardCost;
         private double sellingPrice;
         private String stockLocation;
         private double quantityOnHand;
         private String unitOfMeasure;
         private double minimumStock;
         private double minimumOrderQuantity;
         private int leadTime;
         private double avaliableStock;
                         private int commodityCode;
         public void setPartNumber(String pn){
              this.partNumber = pn.toUpperCase();
         public void setDescription(String ds){
              this.description = ds.toUpperCase();
         public void setStandardCost(double sc){
              this.standardCost = sc;
         public void setSellingPrice(double sp){
              this.sellingPrice = sp;
         public void setQuantityOnHand(double qt){
              this.quantityOnHand = qt;
              this.avaliableStock = qt;
         public void setStockLocation(String sl){
              this.stockLocation = sl.toUpperCase();
         public void setUnitOfMeasure(String uom){
              this.unitOfMeasure = uom.toUpperCase();
         public void setTypeOfPart(String top){
              this.partType = top.toUpperCase();
         public void setMinimumStock(double ms){
              this.minimumStock= ms;
         public void setMinimumOrderQuantity(double moq){
              this.minimumOrderQuantity = moq;
         public void setLeadTime(int lt){
              this.leadTime = lt;
                         public void setCommodityCode(int cc){
              this.commodityCode = cc;
         public void insertIntoPartDatabase(){
           super.setDatabase("mrpii");
                           super.setUpdate( "INSERT INTO part VALUES('"+partNumber+"', '"+description+"','"+standardCost+"'," +
           " '"+sellingPrice+"','"+unitOfMeasure+"','"+partType+"','"+leadTime+"','"+commodityCode+"')");
                             super.saveData();       
         public void insertIntoStockDatabase(){
            super.setDatabase("mrpii");
            super.setUpdate("INSERT INTO stock VALUES('"+partNumber+"','"+stockLocation+"',"+
    " '"+quantityOnHand+"','"+minimumStock+"','"+minimumOrderQuantity+"','"+avaliableStock+"')");
                    super.saveData();
         public void changePartDetails(){
            super.setDatabase("mrpii");
            super.setUpdate( "UPDATE part SET description = '"+description+"',unitOfMeasure = '"+unitOfMeasure+"',"+
              "partType = '"+partType+"' WHERE partNumber = '"+partNumber+"' ");
            super.saveData();
         public void adjustStock(){
              super.setDatabase("mrpii");
              super.setUpdate( "UPDATE stock SET stockLocation = '"+stockLocation+"',"+
              "avaliableStock = (('"+quantityOnHand+"' - qtyOnHand ) + avaliableStock), "+
              " qtyOnHand = '"+quantityOnHand+"' WHERE partNumber = '"+partNumber+"' ");
              super.saveData();
         public void insertAllocation(String allocationID, double quantity){
              super.setDatabase("mrpii");
              super.setQuery("INSERT INTO allocations VALUES('"+partNumber+"','"+quantity+"',"+
                 " '"+allocationID+"')");
              super.saveData();
         public void reduceAvaliable(double allocated){
              super.setDatabase("mrpii");
              super.setUpdate( "UPDATE stock SET avaliableStock = (avaliableStock - '"+allocated+"') WHERE " +
              "partNumber = '"+partNumber+"' ");
              super.saveData();
         public void increaseAvaliable(double allocated){
              super.setDatabase("mrpii");
              super.setUpdate( "UPDATE stock SET avaliableStock = (avaliableStock - '"+allocated+"') WHERE " +
              "partNumber = '"+partNumber+"' ");
              super.saveData();
    }Any help would be deeply appreciated
    Thanks
    Jim

    I am currently migrating from MySql to Derby. Dear God, why?I am using the embedded functionality.
    >
    I have been developing a MRPII package for a whilenow
    MRP as in "manufacturing resource planning"?Yes
    >
    and whilst my classes worked with MySql I am
    finding difficulty with implementing them using
    Derby.That suggests that your Java code relies too heavily
    on MySQL features. You didn't make your code
    portable enough.
    I have developed a GUI interface for MRPIIfunctions
    and use a Database Interface class to connect tothe
    database.
    The Database Interface class gives me thecapability
    of reading and writing from a database.
    I extend this capability to sub classes ie part,
    customers, suppliers, work orders.
    The problem I have is with the ' "+standardCost+"'
    type statements. In MySql, the database engine
    recognises that the standard cost variable is a
    double though using Derby I get the following
    Errors.Right - you're counting on something that might not
    be true for all databases. MySQL appears to be doing
    an implicit conversion from string to double. Bad
    idea.
    SQL Exception: Columns of type 'DOUBLE' cannothold
    values of type 'CHAR'. In Save Data errorcode30000
    SQL Exception: Columns of type 'DOUBLE' cannothold
    values of type 'CHAR'. In Save Data errorcode30000
    Executed statement INSERT INTO stock
    VALUES('BUDGET500','A1',
    '100.0','50.0','1.0','100.0')
    Executed statement INSERT INTO part
    VALUES('BUDGET500', 'PENTIUM','76.0',
    '86.0','EACH','MP','7','33')Do you use PreparedStatements to escape strings and
    dates for you? If not, you're in for a bumpy ride.
    The only solution I see is giving each subclass of
    Database Interface the individual capabilitywithin
    that class to connect to the database and use
    prepared statements.I would not have a single database interface. Each
    class has its own requirements. How can a single
    class know about all of them? Better to break your
    persistence layer into several interaces, one per
    persistent class.That is what I thought
    >
    Does anyone know if Derby has the capability of
    processing the updates using a similar format as
    shown in my code.I think your code is in trouble, Jim.Probably so, thought a redesign is not so much of a problem now as I am a bit more experienced than when I started out.
    >
    You don't use prepared statements, which would help
    with your portability issues.
    You have SQL embedded in the objects. I'd move it
    out into a separate persistence layer.
    You might want to read about Hibernate, an
    object/relational mapping layer. You've got objects
    and tables. Hibernate tools or Middlegen can
    generate the XML mapping files for you. Once you
    have those, you'll find that Hibernate will make
    porting to another database a lot easier. It can be
    as easy as changing configuration files.
    I'd also look into Spring. It has some great
    plumbing to help you deal with databases and lots of
    other stuff.
    %My main class is as follows;
    package delta.databaseInterface;
    * @author James Charles
    import java.sql.SQLException;
    import java.sql.Connection;
    import java.sql.DriverManager;
    import java.sql.Statement;
    import java.sql.ResultSet;
    import java.sql.ResultSetMetaData;
    import java.util.Vector;
    import javax.swing.JTable;
    public class DatabaseInterface{
         private String database;
         private String query;
                         private String update;
                private String[][] results = new String[0][0];
         private int columnCount = 0;
         private int rowCount = 0;
         private boolean resultsExist = false;
         Object data[][];
         private JTable table;
         public void setDatabase(String database){
              this.database = database;
         public void setQuery(String query){
              this.query = query;
                public void setUpdate(String update){
              this.update= update;
            public void saveData(){
              try{
              Class.forName("org.apache.derby.jdbc.EmbeddedDriver").newInstance();
              String sourceURL = new String("jdbc:derby:" + this.database);
              Connection databaseConnection = DriverManager.getConnection(sourceURL);
              Statement statement = databaseConnection.createStatement();
              statement. executeUpdate(this.update);
                    databaseConnection.close();
              } // end of try
              catch(ClassNotFoundException cnfe){
                   System.err.println(cnfe);
              catch(SQLException sqle){
                   System.err.println(sqle + " In Save Data error code" + sqle.getErrorCode());
                             System.out.println("Executed statement " + this.query);
                    catch(InstantiationException ie){
                        System.err.println(ie);
             catch(IllegalAccessException iae){
                        System.err.println(iae);
         public String getDatabase(){
              return this.database;
         public String getQuery(){
              return this.query;
         public void setResults(){           
         try{
              Class.forName("org.apache.derby.jdbc.EmbeddedDriver").newInstance();
              String sourceURL = new String("jdbc:derby:" + this.database);
              Connection databaseConnection = DriverManager.getConnection(sourceURL);
              Statement statement = databaseConnection.createStatement();
              ResultSet thisResult = statement.executeQuery(this.query);
                    databaseConnection.commit();
              System.out.println("Executed statement");
              convertToArray(thisResult);
              databaseConnection.close();
         } // end of try
         catch(ClassNotFoundException cnfe){
              System.err.println(cnfe);
         catch(SQLException sqle){
              System.err.println(sqle);
         catch(InstantiationException ie){
                        System.err.println(ie);
             catch(IllegalAccessException iae){
                        System.err.println(iae);
         public void convertToArray(ResultSet resultsIn) throws SQLException{
              this.resultsExist = false;
              String[] columnNames = new String[0];
              Vector dataRows = new Vector();
              ResultSetMetaData metadata = resultsIn.getMetaData();
              this.columnCount = metadata.getColumnCount();
              columnNames = new String[this.columnCount];
              for(int i = 0; i < this.columnCount; i++)
                   columnNames[i] = metadata.getColumnLabel(i+1);
              String[] rowData = new String[this.columnCount]; // Stores one row
              while(resultsIn.next()){ // For each row...
                   rowData = new String[this.columnCount]; // create array to hold thedata
                        for(int i = 0; i < this.columnCount; i++)// For each column
                        rowData[i] = resultsIn.getString(i+1); // retrieve the data item
                        dataRows.addElement(rowData); // Store the row in the vector
              this.results= new String[dataRows.size()][this.columnCount];
              this.data= new Object[dataRows.size()][this.columnCount];
              for(int column = 0; column < this.columnCount; column++)
                   for(int row = 0; row < dataRows.size(); row++){
              this.results[row][column] = ((String[])(dataRows.elementAt(row)))[column];
              this.data[row][column] = ((String[])(dataRows.elementAt(row)))[column];
              this.rowCount = dataRows.size();
              try{
                   if  (results[0][0].equals(null)){ this.resultsExist = false;} //ckecks results
                        else {this.resultsExist = true;}
                   catch (ArrayIndexOutOfBoundsException e){
                   System.out.println(e + "in catch");
                   this.resultsExist = false;
                   System.out.println("Value of exists in catch = " + this.resultsExist);
         }// end of set results
         public JTable getTable(Object[] columnNames) {
              table = new JTable(data, columnNames);
              return table;
         public int getColumnCount(){
              return this.columnCount;
         public int getRowCount(){
              return this.rowCount;
         public String getData(int row, int column){
              return this.results[row][column];
         public boolean doResultsExist(){
              return this.resultsExist;
    } // end of database InterfaceI developed this code about a year ago and maybe it is time to simplify it.
    With MySql I could create an instance of Database Interface or use one of its subclasses and perform any function on the database by calling its methods.
    maybe it is time for a redesign!
    thanks
    jim

Maybe you are looking for