Move Data Between Databases

Dear All,
I have 2 databases one of them in Egypt and the other in USA.
I want to transfer data of one schema between the 2 databases.
I currently use export and import utility to do this action but the size of data is very large so I want an automatic way to do this action.
what can I use to solve this problem?
can I use advanced replication or dataguard or what.
if I use advanced replication data will be transferred through a database link over the internet which will be a very slow operation.
what can I do,please help.

Hello Airtifa,
The main reasons to use a VPN would be
a) dedicated connection, so more reliable
b) no or little need to encrypt data, as data doesn't travel across the public Internet
It should have a positive effect on performance, though you may be suffering from high latency in the network.
What I'm trying to say is:
there is not much to tune in a sqlnet connection of whatever type (database links are just ordinary connections), apart from the Session Data Unit, which should be a multiple of the MTU of the network card (so the card doesn't have to fragment packets).
You are really at the mercy of the (bandwith of the) connection.
If the connection is slow, the link will be slow.
If the connection is fast, the link shouldn't pose extra problems.
Database links aren't slow. Networks can be.
Also not using the array interface in an efficient way can be a killer.
Sybrand Bakker
Senior Oracle DBA

Similar Messages

  • XWRITE to move data between databases - what about block creation?

    Hi, all.
    We have this Essbase script calculating data in one database, and in the end saving data in another database in the same application.
    Data transfer is performed by the XWRITE function.
    Problem is that the Entity dimension, which is common to both databases, is constantly updated.
    Block creation in source is taken care of, but I am a little conserned that data in some cases will not be saved to the target database because there are no active blocks.
    I have two questions regarding block creation in this respect:
    1) Does the XWRITE command create new blocks in the target database?
    2) If I put SET CREATEONMISSINGBLK ON in the script in the source database, will blocks then be created in the target database as well?
    By the way: It's version 11.1.2.1
    Best regards,
    Ann-Margareth

    @XWRITE creates blocks at the target. There is no need to use SET CREATENONMISSINGBLK ON on the source database.

  • Best way to move LOB between database

    I am using Oracle 10.2.0.4. Please share your experience what is the best to move LOBs between databases. Lob size is 40 gb. I have tried using data pump, and parallel insert with nologging but it is taking almost 1 hour to transfer 1 gb.
    Thanks for any suggestion.

    N Gasparotto wrote:
    For data pump I am using impdp over network_link .Would be much more efficient to copy the file accross the network and then run impdp locally. Did you also tried also parallel impdp ?
    Nicolas.Thank I will be trying your suggestion to move the copy. Currently do to space issue I cannot try it but I have already requested for the designated mount point.
    I tried using parallel hint. Our sever had 8 cpu so I tried parallel 16. Although current parallelism was 16 ,
    worker parallelism was 1. They were only 2 workers and other worker was always waiting. In other words, the two workers did not execute simultaneously. So, I guess data pump did not run parallely.
    Should not more than one worker be executing simultaneously for it to run parallel? I did not understand what worker parallelism meant?

  • Transforming the Raster Data between Databases

    Hi
    I have a Requirement to Import and Export The Raster Data Between Data bases .. Could Any Body Give Me Hint...
    Rajanikanthc

    NedimAT pointed you to the 10g manual. If your database is 11g, please check it out from the 11g manual, Section 3.21 Transferring GeoRaster Data Between Databases:
    http://download.oracle.com/docs/cd/E11882_01/appdev.112/e11827/geor_operations.htm#CIHECFGC
    Depending on your requirements and the source and target database environments, you may also consider using Transportable Tablespace to transfer the raster data, particularly when you want to transfer only part of the database based on queries or cropping areas. Check section 3.22:
    http://download.oracle.com/docs/cd/E11882_01/appdev.112/e11827/geor_operations.htm#CHDGEGHB
    hope this helps
    Jeffrey

  • Move Data Between 2 xfaForms

    Assume I have process with 2 xfaForm variables, Form A (a PDF) and Form B (a PDF). A user fills out Form A. I want to populate values in Form B with the data from Form A.
    When I try to assign a value (using SetValue) directly from form A to form B, it doesn't seem to work. That is ...
    Location: /process_data/form_B/object/data/xdp/datasets/data/FormB/Value1
    Expression: /process_data/form_A/object/data/xdp/datasets/data/FormA/Value1
    It does work however when I use a temporary XML variable, say xml_data. That is, I move the data from Form A to xml_data, and the move the data from xml_data to Form B.
    Why would this be? What is wrong with directly moving data between my xfaForms? What am I missing?

    Hi Brad Steele,
    I'm new in ES, n have experienced the same problem that u had sometime ago of trying to pass values from FormA to FormB, can you please help me out on this one

  • Best way to move date between LabVIEW 7.1 and 2010

    We have a large LabVIEW based control and data acquisition system that for reasons beyond the scope of this post is at and needs to stay at LabVIEW version 7.1 for the forseeable future...  We are soon to add a camera diagnostic to this system that, again for reasons beyond the scope of this post, needs to be written in LabVIEW 2010...  The 2010 piece of code will run and need to receive some information such as shot number, when to trigger, etc. from the 7.1 side of the system...  Then after a shot has occurred and a camera image has been acquired, the 2010 code will do some on the fly processing of this image and within a few seconds will need to send back some results data to the 7.1 side... 
    The 7.1 code uses a tag engine approach to sharing data among different codes running on different machines...  I think now that more modern versions of LabVIEW use a shared variable approach...  But I need to communicate as I've described above between the two versions, 7.1 and 2010 (or it could be 2011 if that would offer some advantage)... 
    I'm new at this moving of data between versions like this so if something could offer some advice, especially if there is some tutorial information on this topic, that would be much appreciated...  Thanks in advance for any help that you might be able to offer...  thanks...  bob...

    It really depends if your tag engine like communication approach is a home brown solution or something like the LabVIEW DSC engine. If homebrown and well written you should be able to reuse the client library part of it in newer LabVIEW versions without to many hassles. If it is LabVIEW DSC it may be a bit more complicated since the only means to share DSC tags in version 7.1 was as far as I can remember their proprietary TCP/IP tag interface, which was replaced in newer versions with he shared variable engine.
    Rolf Kalbermatter
    CIT Engineering Netherlands
    a division of Test & Measurement Solutions

  • Cann't move data between two internal table in Unicode program

    Hello expert,
    I import a program from old sap system to new system, but syntax error occurred --- ' L_T_S776[] = T_DATA_RECORDS[]. ',
    it is said ' internal table L_T_S776 and T_DATA_RECORDS are not mutually convertible, in unicode program, two internal tables must have the same structure layout'.
    The coding is:
    DATA: L_T_S776 LIKE S776 OCCURS 0 WITH HEADER LINE.
    DATA: L_T_S777 LIKE S777 OCCURS 0 WITH HEADER LINE.
    FIELD-SYMBOLS: <F_S776> TYPE S776.
    FIELD-SYMBOLS: <F_S777> TYPE S777.
    IF NOT ZCL_USEREXIT=>IS_ACTIVE( PROJN = 11 EXITN = 34 ) IS INITIAL.
      CASE I_RMCP2-SCTYP.
        WHEN 'Z776'.
          L_T_S776[] = T_DATA_RECORDS[].
          LOOP AT L_T_S776 ASSIGNING <F_S776>.
            <F_S776>-ZZCUSER = SY-UNAME.
            <F_S776>-ZZCDATE = SY-DATUM.
            <F_S776>-ZZCTIME = SY-TIMLO.
          ENDLOOP.
         T_DATA_RECORDS[] = L_T_S776[].
        WHEN OTHERS.
      ENDCASE.
    internal table T_DATA_RECORDS is defined to like INDX.
    this program is in function module EXIT_SAPMMCP6_011, it is a user_exit.
    I also confuse the meaning of this part of coding, could anybody help me?
    reward if got useful reply, thank you.
    H.B

    Hi,
    The structure are different thats why you getting this error. But there must be some fields common to which you want to move data. So you change in that way.
    And there will be no impact whatsoever because of such change.
    Regards,
    Atish

  • How to move users between databases

    Hi everyone,
    I am looking for a way to move a database with one schema holding data and around 50 users without objects to another machine.
    I will move the schema with data by using Data Pump. But what's the best way to copy the users with passwords and grants?
    Thanks in advance

    932139 wrote:
    Hi everyone,
    I am looking for a way to move a database with one schema holding data and around 50 users without objects to another machine.
    I will move the schema with data by using Data Pump. But what's the best way to copy the users with passwords and grants?
    which metric measures "best" for you?
    http://www.orafaq.com/forum/m/120560/42800/?srch=cr_user_like#msg_120560

  • Transferring Data between Databases with Character Sets UTF08 and US7ASCII

    Hi,
    I am trying to transfer data from Oracle 10g (character set :UTF08) to Oracle 8i ( character set: US7ASCII). I have tried the transfer using the DBLinks and found that there is no way the data could be transferred from 10g to Oracle 8i.
    The last option available is to use staging database for transfer. The staging database would be Oracle 10g only but the character set would be US7ASCII. I am expecting that since the character set is US7ASCII, this would be able to get compatible with Oracle 8i (US7ASCII). Secondly, Transfer from 10g to staging 10g should also work, since staging 10g would support UTF08 character set.
    Kindly tell me if this option would work or if there is any other way around.
    Thanks
    Nitin
    Message was edited by:
    Nits
    Message was edited by:
    Nits
    Message was edited by:
    Nits

    You possibly have a fundamental problem,which is more important than any technical issues. If your UTF8 (Unicode) database stores non-english characters you will lose these characters when transferring.
    Werner

  • Move data between tables

    I use SQL*Loader to load data into a interface table where I do some data cleaning.
    Is there a easy way of moving the data from the interface table to a target table inside the same database, keeping in mind that the target table already contains data.
    I normally export the data from the interface table, create a data and control file and use SQL*Loader again, but this seems like such a long way, surely there should be a easier way??
    Thank you in advance

    It's not a problem that the target table contains more columns, you can either do ...
    insert into my_target (col1, col2, col3, col4,col5)
    select col_a, col_b, 'my_default_value',null, sysdate
    from my_source;
    ... or ...
    insert into my_target (col1, col2)
    select co;l_a, col_b
    from my_source;
    The second statement will automatically put NULL into columns not listed after my_target, the first statement allows you to specify NULL explicitly or specify some static or dynamic default value.
    I guess you have to find out why it's taking so long to insert the values. My guess would be that you have indexes on the table that are slowing things up. You may find it beneficial to drop the indexes, load the new data, rebuild the indexes.
    You could also add the APPEND hint to the insert ...
    insert /*+ append */ into my_target ...
    ... which might speed things up a little. Also check that your pctfree value for the table is set very low (0) and pctused is very high (99) if you are not going to be updating these rows in future -- this will pack more rows into each block.
    Another option is to partition your target table, and use the EXCHANGE PARTITION mechanism to get data into it.

  • Best way to move data between instances

    I currently have a procedure that updates our data tables between instances... I would normally do a clone but since developers use this instance to do their work in, it's not a viable option.
    The past few times, I've scheduled the procedure to run via the Oracle Scheduler and it's bombed... This time, it updated 72/433 tables. I'm going to try and run it manually to see if it bombs again, but does anyone have any recommendations?
    Oracle 11.1.0.6 on AIX 6.1
    Non-Rac | All instances on same host
    Any help or ideas would be great!

    You can try EXP/IMP to do this and is the easiest method
    --SVMG                                                                                                                                                                                           

  • How to move data between two similar tables?

    Hi All,
    I have two tables with almost the same columns. Table A has 50 columns, Table B has 51 columns, which are defined exactly the same except one more column as LOAD_TIME.
    Is there any easy way for me to move the data from Table A to B? the Extra column LOAD_TIME will be set as current system time. All I want is to avoid list all 50 column names. The following SQL has error ORA-00923 error.
    INSERT INTO TB_B
    SELECT *, sysdate from TB_A;
    Thanks,

    939569 wrote:
    Hi All,
    I have two tables with almost the same columns. Table A has 50 columns, Table B has 51 columns, which are defined exactly the same except one more column as LOAD_TIME.
    Is there any easy way for me to move the data from Table A to B? the Extra column LOAD_TIME will be set as current system time. All I want is to avoid list all 50 column names. The following SQL has error ORA-00923 error.
    INSERT INTO TB_B
    SELECT *, sysdate from TB_A;
    Thanks,You could create a view based on TB_A.
    However i don't understand why you feel the need to avoid specifying the columns. That's a better way to code.
    Granted, i also don't understand why you'd have 2 copies of the same data, the only differentiation being when you copied the data from the source to the redundant table.
    Cheers,

  • Copying data between databases

    Hi Gurus,
    Is there any way to copy data from one DB to another DB, other than COPY command ?
    My reqt is this. I want to copy data from one DB to another one periodically (weekly basis). I'm trying to create a USER JOB for this and call a PL/SQL proc in the JOB. As COPY is a SQL/PLUS command, I think I can't use it in a DB procedure. Any help is appreciated. Thanks a lot.

    Hi,
    Thanks for the reply. It works now.
    It was my fault while creating the database link. The SQL*NET version was NET8 and I created the DB link with 'USING t:XXX:XXXX'. So the link was using SQL*NET old version and I was getting ora-6401 (Invalid Driver Designation). Now I recreated the link private DB link) and it works fine.
    Thanks for your help.

  • Move data between internal tables

    Hi,
    . Hi !!
    i want to get result GT_ITEM02 from GT_ITEM01.
    please help me with my sample source.
    GT_ITEM01
    WERKS MAKTL MENGE,
    ================================
    1100 100 100.00
    1100 100 50.00
    1100 200 10.00
    1200 100 200.00
    1200 100 50.00
    result GT_ITEM02
    ================================
    1100 100 150.00
    1100 200 10.00
    1200 100 250.00
    DATA: LV_PRDQTY LIKE MSEG-MENGE.
    LOOP AT GT_ITEM01 WHERE BWART = '101' OR BWART = '102'.
    AT NEW MATKL.
    LV_PRDQTY = LV_PRDQTY + GT_ITEM01-MENGE.
    ENDAT.
    ENDLOOP.
    MOVE-CORRESPONDING GT_ITEM01 TO GT_ITEM02.
    MOVE LV_PRDQTY TO GT_ITEM02-MENGE1.
    Cheers....
    Edited by: Alvaro Tejada Galindo on Feb 22, 2008 4:13 PM

    Hi Mukesh,
    Use the following code.
    sort GT_ITEM01 by WERKS MAKTL.
    loop at GT_ITEM01.
    at end of MAKTL.
    sum.
    MOVE-CORRESPONDING GT_ITEM01 TO GT_ITEM02
    endat.
    endloop.
    Regards,
    Yellappa.

  • Calculate/Export data between databases

    Hi All,
    I am stuck up with the below issue.
    I have two databases, one is Pdatabase and other is Edatabase.
    I have the below 2 members in both databases
    ABC
    XYZ
    My requirement is I want to calculate the ABC (Pdatabase member) where the value should be the SUM of ABC+XYZ of Edatabase members.
    Is there a way to use a report script to get the SUM of ABC+XYZ from Edatabase and load it into my Pdatabase.
    Output should be as below:
    ABC (member of Pdatabase) = ABC+XYZ (members from Edatabase).
    Aany Idea??

    I would suggest to go with the calculation and not report script and rules file as such complexity is not required for this requirement.
    Yes, you can have a member formula. Just tag the member as dynamic calc and give it a go with location alias and your member combination where the data resides.
    If you are going with report script and then a rules file, write a report script in source database with member combination for which ABC and XYZ data resides followed by rules file in target database where you add up these two accounts in ABC.
    Regards,
    YoGesH

Maybe you are looking for