How to avoid data lost in Dataguard failover ?

Hi gurus,
We are implementing Dataguard with manual failover (Not with Fast Start feature)
How to avoid/minimize lost of data if the primary server goes down before the last log is sent ?
Thank you for your help,
xtanto

Most important the dataguard protection mode, you have 3 choices: Maximum Performance,Maximum Availability,Maximum Protection . If you are interested in no data loss choose Maximum Protection, that's the definition:
Maximum Protection
This protection mode ensures that zero data loss occurs if a primary database fails. To
provide this level of protection, the redo data needed to recover a transaction must be
written to both the online redo log and to at least one synchronized standby database
before the transaction commits. To ensure that data loss cannot occur, the primary
database will shut down, rather than continue processing transactions, if it cannot
write its redo stream to at least one synchronized standby database.
Because this data protection mode prioritizes data protection over primary database
availability, Oracle recommends that a minimum of two standby databases be used to
protect a primary database that runs in maximum protection mode to prevent a single
standby database failure from causing the primary database to shut down.
For details see the documentation for your unknown database version.
Werner

Similar Messages

  • How to avoid data repetation when using select statements with innerjoin

    how to avoid data repetation when using select statements with innerjoin.
    thanks in advance,
    satheesh

    you can use a query like this...
      SELECT DISTINCT
             frg~prc_group1                  "Product Group 1
             frg~prc_group2                  "Product Group 2
             frg~prc_group3                  "Product Group 3
             frg~prc_group4                  "Product Group 4
             frg~prc_group5                  "Product Group 5
             prc~product_id                  "Product ID
             txt~short_text                  "Product Description
    UP TO 10 ROWS
    INTO TABLE l_i_data
    FROM
    Joining CRMM_PR_SALESG and
    COMM_PR_FRG_ROD
    crmm_pr_salesg AS frg
    INNER JOIN comm_pr_frg_rod AS prd
    ON frgfrg_guid = prdfragment_guid
    Joining COMM_PRODUCT and
    COMM_PR_FRG_ROD
    INNER JOIN comm_product AS prc
    ON prdproduct_guid = prcproduct_guid
    Joining COMM_PRSHTEXT and
    COMM_PR_FRG_ROD
    INNER JOIN comm_prshtext AS txt
    ON prdproduct_guid = txtproduct_guid
    WHERE frg~prc_group1 IN r_zprc_group1
       AND frg~prc_group2 IN r_zprc_group2
       AND frg~prc_group3 IN r_zprc_group3
       AND frg~prc_group4 IN r_zprc_group4
       AND frg~prc_group5 IN r_zprc_group5.
    reward it it helps
    Edited by: Apan Kumar Motilal on Jun 24, 2008 1:57 PM

  • ALV List Output: How to avoid data statistics from printing in Background

    Hi,
    I am running an ALV list display in Background mode and the output is showing the data statistics first and then the actual output of the ALV...
    I dont want the data statistics to be printed..
    How to avoid that.. is there any to do it...

    Hi Neela
    If you are using the good old REUSE_ALV_GRID_DISPLAY function module, you should be able to suppress the List Info if SY-BATCH is 'X' using the IS_PRINT parameter.
      MOVE 'X' TO is_print-no_print_listinfos .
    Presumably there is a similar parameter using classes.
    Cheers
    Lyal

  • How to avoid data tab in webi report.

    Hi BO gurus,
    I need one clarification, while seeing the webi report(edit mode) we can see data tab left side of report. how can we avoid the data tab?
    I mean with out  data tab .
    Regards,
    Arjun

    Hi Arjun,
    Please find the above requirement available below:-
    BI 4.1 Web Intelligence GUI Customization - Business Intelligence (BusinessObjects) - SCN Wiki
    SAP KBA 1859784 - How to disable the Design and Data buttons in Web Intelligence in BI 4.1 also available for the same.
    Hope this helps.
    Regards,
    Manpreet

  • How to avoid data selection inside the loop?

    Hello Experts,
    I am working on one performance item and I have already applied some changes to the original version.
    Now, If I compare my new program with old program, I have good improvement in performance. I am checking if I can do anything on statements that are top on the below list. I think 40% for Modify statement is acceptable after my research (Below run is updating around 20M records which is real time volume for this application).
    As we can see 34% of run time to going for one SELECT query on custom table. Take a look at below high level flow of my program to understand above select query.
    1. Select data from ZABC
    2. Select data from Variant Table (Var1, Var2, Var3 etc.., 12 in real time)
    3. Loop Variant Table
    4. Select data from X, Y, Z table for Var<n>.
    5. Populate final internal table from ZABC, X, Y and Z table
    6. Modify ZTABLE with Final Internal table data
    7. End Loop on Variant Table
    As described in the flow of the program, ZABC table data is common for all the variants and need not to fetch multiple times. Hence I am doing it only once in my program. Below is that select query:
    select rrcty ryear rbukrs racct rcntr sum( amt1) as amt1  "Like I have 32 amount fields in original query
               from zabc
                into table i_zabc
                where ryear in r_year    " Two records in ranges with I and EQ
                and rvers = '001'
                and rrcty in r_rrcty        "Three records in ranges with I and EQ
                and rldnr = 'DT'
                group by rrcty ryear rbukrs racct rcntr
                order by rrcty ryear rbukrs racct rcntr.
    ZABC table is again having huge volume of data and we are fetching millions of records with above query. That is primary reason to take long time. May be that is okay as I am already using Indexes of this table. But, I am not comfortable with it as it can reach max. memory point and through run time error. Fetch Cursor is one reliable option that I can see here, but with that, I should move ZABC selection inside the variant loop which can cause fetching ZABC data 12 times (Let me know If I am missing anything here).
    Now, third statement in my trace results, with 10% of overall time is this:
    loop at i_abc assigning <fs_abc>. 
    loop at i_table assigning <fs_table> where low <= <fs_abc>-racct and high >= <fs_abc>-racct. 
    endloop. 
    endloop. 
    6 million executions with this complex WHERE condition is causing this statement to get 3rd position in trace results. I tried below two options which are, I think, taking even more time - (I am still monitoring these options)
    1) Removed WHERE condition on LOW, HIGH and applied filter inside the loop.
    2) Removed WHERE condition on HIGH only and applied filter inside the loop.
    Any suggestions on how to proceed with ZABC selection and I_TABLE loop.
    Let me know if you have any questions on above compose.

    Since I looked at this case before, let me try some quick suggestions:
    Is table ZABC related to table X, Y and/or Z and can the selection be limited by applying those 12 selection variants?
    If yes, try a join select involving these tables that could make your step 1 obsolete and replace steps 4 and 5.
    This might also get rid of the "loop inside loop" problem. Generally, make sure that the inner table is declared as a sorted table with a key that consists of the fields as used in the WHERE-condition of the inner loop. Use secondary keys for internal tables if your ABAP release permits and the task at hand warrants it.
    Finally, look at PACKAGE SIZE option for the (join) select to reduce memory consumption.
    Thomas

  • How to avoid data to be deleted - system message

    Hi........
    I have a user form. The date, user and document no will be automatically updated when the form is loaded. But suddenly when i click the navigation menu to go to previous or last record, It shows the following error msg.
    "Changes will cause the data to be deleted? Click OK to continue"
    I want to prevent this message.
    The system forms are not showing these kind of messages.But the user forms are only showing.
    Can any one help on this?
    ~
    B.Roseline Christina....

    hi roseline,
    You can force to change the form mode with
    oform.Mode=SAPbouiCOM.BoFormMode.fm_OK_MODE
    But I suggest that, when initially open, the form is in Find mode/OK mode. The filling of Date, number and user, you do it after the first time a user input anything on the form.
    This way you avoid that system message.
    Regards
    Edy

  • How to recover data lost with Boot Camp

    I was removing my boot camp partition when in the middle of it boot camp crashed. I went back into boot camp to check if the option to uninstall windows was still there, but it wasn't. I went to about this mac etc. and the storage didn't show my windows 7 partition but the data from the windows 7 partition was gone and My macintosh HD was missing the storage. Any Ideas on how to fix it? Sorry if my question doesn't make sense.

    I guess everyone has their own idea of what is easy. A backup, reformat, restore to me is an utter PITA. Once you have free space, that free space is still not usable by Mac OS. You have to expand the Mac OS volume to use it. Sometimes this can fail because of the weird way Apple has chosen to sequence the partitions, with the Recovery HD Partition located after the Mac OS partition, making Recovery HD in between Mac OS and Free space. Apple's diskutil resizevolume command will move Recovery HD around as part of a resize. The basic command is:
    diskutil resizevolume /dev/disk0s2 limits
    That will show minimum, current and maximum resize limits. If current doesn't equal maximum, then free space has not been incorporated into the Mac OS volume. You can sometimes fix this with:
    diskutil resizevolume /dev/disk0s2 R
    That will expand the Mac OS volume to maximum size. If it fails then it's worth reconstructing the HFS+ catalog with:
    fsck_hfs -r /dev/disk0s2
    That command requires the file system be unmounted so you'll need to boot off another volume - Recovery HD is fine.
    All of these are commands leverage features which the GUI doesn't offer access to.

  • How to avoid data repeated in report?

    Hi experts,
    I'm working on a report that needed
    plant,
    new material code,
    old material code,
    material type,
    special stock and
    (material status ne '01')
    select p~werks m~matnr m~bismt m~mtart s~sobkz
      into corresponding fields of table it_mat
      from ( ( MARC as p inner join MARA as m on p~matnr = m~matnr )
    inner join MSEG as s on s~matnr = p~matnr )
      where m~matnr in p_mcode
      and m~bismt in p_ocode
      and m~mtart in p_mtype
      and p~werks in p_plant
      and m~matkl in p_mgroup
      and p~mmsta ne '01'
      and s~sobkz in p_spec
      order by m~matnr.
      APPEND it_mat.
    This is my select stament ,
    and it's output layout the material code are all repeating twice or 3-5 times for the same data.
    Is there anyway to take out the repeated data?
    Please advice.
    Thank you in advanced.

    Hi,
    Use ,
    select pwerks mmatnr mbismt mmtart s~sobkz
      into corresponding fields of table it_mat
      from ( ( MARC as p inner join MARA as m on pmatnr = mmatnr )
    inner join MSEG as s on smatnr = pmatnr )
      where m~matnr in p_mcode
      and m~bismt in p_ocode
      and m~mtart in p_mtype
      and p~werks in p_plant
      and m~matkl in p_mgroup
      and p~mmsta ne '01'
      and s~sobkz in p_spec
      order by m~matnr  ASCENDING.
      DELETE ADJACENT DUPLICATES FROM it_mat.
    APPEND it_mat.
    it will delete all duplicates & repeated data.
    Regards
    Hema

  • How to avoid data loss when an action is perfomed ....

    hi,
    I am using a dynamic Tab. Each tab contains a seperate jsp page.( the jsp page is included for the corresponding tab). Each page can contain more than 25 fields. The problem is for example i will select some check box in the first tab and i will go the second tab and i will do some insert operations , when i came back to the first tab , the checkbox which i had selected or the text what i had entered should be there. If it can be solved by using AJAX, pls guide me.
    Tools i am using : jsp, struts.
    Looking forward to hear to solve this problem.

    hi....
    c through that when u eturn to tab.... set the form values to the page
    i mean if u r using a form bean for ur jsp. use name name atrribute of the sturts html tag. and give the form bean name to the name attribute i hope this would solve your problem
    thaks
    with rgards
    shekhar

  • How to avoid printing a blank page when there is 'no data' in the report.

    how to avoid printing a blank page when there is 'no data' in the report.

    try like this
    if@section:IND=1
    this template
    end ifsectionbreak
    if@section:IND=2
    this template
    end if

  • How can i connect iphone to itunes.. i want to restore because my finger mistakes that click Reset all content and setting.. so iphone are empty.. all foto and data lost, right.. how can i use my iphone again..

    how can i connect iphone to itunes.. i want to restore because my finger mistakes that click Reset all content and setting.. so iphone are empty.. all foto and data lost, right.. how can i use my iphone again.

    Yes, try to restore your iPhone from iTunes or iCloud backup.
    iOS: How to back up and restore your content
    http://support.apple.com/kb/HT1766
    Tell us the result if you will try.
    <Link Edited By Host>

  • I lost all personal data while installing maverick in external drive. How can I recover lost data?

    I lost all personal data while installing maverick in external drive. How can I recover lost data?

    If all your files are missing
    You may have logged in as a different user, such as Guest. Open the Users & Groups pane in System Preferences. Your name should be at the top of the user list, under Current User. See also this support article.   
    If files are missing from one folder
    Change the Finder view mode; for example, from icon view to list view, or vice versa.

  • How can avoid mandatory fields in data transfer

    hai
    please respond me
    how can avoid mandatory fields in data transfer like bdc

    hi,
    u have to pass values for mandatory fields in bdc method, u have to prepare u r bdc data such a way that all the mandatory fields are filled, other wise it will give error

  • Computer hard drive fried, all data lost, how can I get my music library off my ipod touch and saved agian to another computer? no downloaded songs, all were cd's I put on it

    computer hard drive fried, all data lost, how can I get my music library off and onto another computer? no downloads, just cd's I loaded on to it

    Syncing to a "New" Computer or replacing a "crashed" Hard Drive: Apple Support Communities

  • How to avoid Flickaring  When Adding data in Addon User Matrix

    Experts,
    I am  Adding Query Result in User Matrix  one by one. but there is lots of Flicker.
    how to Avoid this Flickering.
    Bomiitems = oCompany.GetBusinessObject(SAPbobsCOM.BoObjectTypes.BoRecordset)
                                    If Bomtyp = "U" And BomNo = "0" Then
                                        BOMItem = "SELECT Distinct T0.[Code], T1.[ItemName] , ( 1 / Isnull(T2.[Qauntity],0))* Isnull((T0.[Quantity]),0),('" & Quanti & "'/ Isnull(T2.[Qauntity],0))* Isnull((T0.[Quantity]),0) as "
                                        BOMItem = BOMItem + " 'Quanti',T1.[Excisable],'N' as U_Rec , T1.[InvntryUom],T0.[Warehouse] 'Warehouse',T0.[IssueMthd]'IssMthd' FROM ITT1 T0  INNER JOIN OITM T1 "
                                        BOMItem = BOMItem + " ON T0.Code = T1.ItemCode  INNER JOIN OITT T2 ON T0.Father = T2.Code "
                                        BOMItem = BOMItem + " WHERE T0.[Father] ='" & Icode & "'"
                                        Bomiitems.DoQuery(BOMItem)
                                    ElseIf Bomtyp = "U" And BomNo <> "0" Then
                                        'BOMItem = "SELECT T0.[Code], T1.[ItemName] , ((T0.[Quantity]/ T2.[Qauntity])*'" & Quanti & "') as 'Quanti',T1.[Excisable],'N' as U_Rec FROM ITT1 T0  INNER JOIN OITM T1 ON T0.Code = T1.ItemCode  INNER JOIN OITT T2 ON T0.Father = T2.Code WHERE T0.[Father] ='" & Icode & "'"
                                        BOMItem = "SELECT T1.[U_Icode], T1.[U_IName],(1 / Isnull(Cast( T0.[U_Bqty]  as Float) ,0)) * Isnull(Cast(T1.[U_Quanti]  As Float),0) ,('" & Quanti & "' / Isnull(Cast( T0.[U_Bqty]  as Float) ,0)) * Isnull(Cast(T1.[U_Quanti]  As Float),0)  as 'Quanti',T2.[Excisable], T0.[U_Rec],T2.[InvntryUom] ,T1.[U_Whs] 'Warehouse','B' AS 'IssMthd' "
                                        BOMItem = BOMItem + "FROM [dbo].[@OITTA]  T0 inner join  [dbo].[@ITTA1]  "
                                        BOMItem = BOMItem + "T1 on t0.cODE = t1.Code INNER JOIN OITM T2 ON  T1.[U_Icode] = T2.[ItemCode]"
                                        BOMItem = BOMItem + " WHERE T0.[U_Icode] = '" & Icode & "' AND   T0.[U_AltBom] ='" & BomNo & "' AND T0.U_Btyp = 'U'  "
                                        Bomiitems.DoQuery(BOMItem)
                                    ElseIf Bomtyp = "P" Then
                                        BOMItem = "SELECT T1.[U_Icode], T1.[U_IName],(1 / Isnull(Cast( T0.[U_Bqty]  as Float) ,0)) * Isnull(Cast(T1.[U_Quanti]  As Float),0),('" & Quanti & "' / Isnull(Cast( T0.[U_Bqty]  as Float) ,0)) * Isnull(Cast(T1.[U_Quanti]  As Float),0)  as 'Quanti',T2.[Excisable], T0.[U_Rec] ,T2.[InvntryUom],T1.[U_Whs] 'Warehouse','B' AS 'IssMthd' "
                                        BOMItem = BOMItem + "FROM [dbo].[@OITTA]  T0 inner join  [dbo].[@ITTA1]  "
                                        BOMItem = BOMItem + "T1 on t0.cODE = t1.Code INNER JOIN OITM T2 ON  T1.[U_Icode] = T2.[ItemCode]"
                                        BOMItem = BOMItem + " WHERE T0.[U_Icode] = '" & Icode & "' AND   T0.[U_AltBom] ='" & BomNo & "' AND T0.U_Btyp = 'P' "
                                        Bomiitems.DoQuery(BOMItem)
                                    End If
                                        Bomiitems.DoQuery(BOMItem)
                                    If Bomiitems.RecordCount > 0 Then
                                        'RecCount1 = RecSet1.RecordCount
                                        Bomiitems.MoveFirst()
                                        i = 0
                                        'osubForm   .Freeze(True)
                                        oMatrix = oForm.Items.Item("1000001").Specific
                                        oMatrix.FlushToDataSource()
                                        While Not (Bomiitems.EoF)
                                            If i = 0 Then
                                                oMatrix.AddRow()
                                                oForm.DataSources.DBDataSources.Item("@TPROD1").SetValue("LineId", 0, i + 1)
                                                oForm.DataSources.DBDataSources.Item("@TPROD1").SetValue("U_ItemCode", 0, Bomiitems.Fields.Item(0).Value)
                                                oForm.DataSources.DBDataSources.Item("@TPROD1").SetValue("U_ItemName", 0, Bomiitems.Fields.Item(1).Value)
                                                oForm.DataSources.DBDataSources.Item("@TPROD1").SetValue("U_BaseQty", 0, Bomiitems.Fields.Item(2).Value)
                                                oForm.DataSources.DBDataSources.Item("@TPROD1").SetValue("U_PlanQty", 0, Bomiitems.Fields.Item(3).Value)
                                                oForm.DataSources.DBDataSources.Item("@TPROD1").SetValue("U_IssueQty", 0, Bomiitems.Fields.Item(3).Value)
                                                oForm.DataSources.DBDataSources.Item("@TPROD1").SetValue("U_Whs", 0, Bomiitems.Fields.Item("Warehouse").Value)
                                                oForm.DataSources.DBDataSources.Item("@TPROD1").SetValue("U_IsueType", 0, Bomiitems.Fields.Item("IssMthd").Value)
                                                Dim orsWhsDetails As SAPbobsCOM.Recordset
                                                Dim strWhsDetails As String
                                                orsWhsDetails = oCompany.GetBusinessObject(SAPbobsCOM.BoObjectTypes.BoRecordset)
                                                strWhsDetails = "SELECT T0.[OnHand], T0.[IsCommited], T0.[OnOrder],T1.[OnHand] FROM OITW T0 INNER JOIN OITM T1 ON T0.ItemCode = T1.ItemCode WHERE T0.[ItemCode] ='" & Bomiitems.Fields.Item(0).Value & "' AND   T0.[WhsCode] ='" & Bomiitems.Fields.Item("Warehouse").Value & "' "
                                                orsWhsDetails.DoQuery(strWhsDetails)
                                                oForm.DataSources.DBDataSources.Item("@TPROD1").SetValue("U_Whsestk", 0, orsWhsDetails.Fields.Item(0).Value)
                                                oForm.DataSources.DBDataSources.Item("@TPROD1").SetValue("U_AVILSTK", 0, (orsWhsDetails.Fields.Item(0).Value - Bomiitems.Fields.Item(3).Value))
                                                oForm.DataSources.DBDataSources.Item("@TPROD1").SetValue("U_PLANTSTK", 0, orsWhsDetails.Fields.Item(3).Value)
                                                oMatrix.LoadFromDataSource()
                                            Else
                                                oMatrix.FlushToDataSource()
                                                oForm.DataSources.DBDataSources.Item("@TPROD1").InsertRecord(i)
                                                oForm.DataSources.DBDataSources.Item("@TPROD1").SetValue("LineId", i, i + 1)
                                                oForm.DataSources.DBDataSources.Item("@TPROD1").SetValue("U_ItemCode", i, Bomiitems.Fields.Item(0).Value)
                                                oForm.DataSources.DBDataSources.Item("@TPROD1").SetValue("U_ItemName", i, Bomiitems.Fields.Item(1).Value)
                                                oForm.DataSources.DBDataSources.Item("@TPROD1").SetValue("U_BaseQty", i, Bomiitems.Fields.Item(2).Value)
                                                oForm.DataSources.DBDataSources.Item("@TPROD1").SetValue("U_PlanQty", i, Bomiitems.Fields.Item(3).Value)
                                                oForm.DataSources.DBDataSources.Item("@TPROD1").SetValue("U_IssueQty", i, Bomiitems.Fields.Item(3).Value)
                                                oForm.DataSources.DBDataSources.Item("@TPROD1").SetValue("U_Whs", i, Bomiitems.Fields.Item("Warehouse").Value)
                                                oForm.DataSources.DBDataSources.Item("@TPROD1").SetValue("U_IsueType", i, Bomiitems.Fields.Item("IssMthd").Value)
                                                Dim orsWhsDetails As SAPbobsCOM.Recordset
                                                Dim strWhsDetails As String
                                                orsWhsDetails = oCompany.GetBusinessObject(SAPbobsCOM.BoObjectTypes.BoRecordset)
                                                strWhsDetails = "SELECT T0.[OnHand], T0.[IsCommited], T0.[OnOrder],T1.[OnHand] FROM OITW T0 INNER JOIN OITM T1 ON T0.ItemCode = T1.ItemCode WHERE T0.[ItemCode] ='" & Bomiitems.Fields.Item(0).Value & "' AND   T0.[WhsCode] ='" & Bomiitems.Fields.Item("Warehouse").Value & "' "
                                                orsWhsDetails.DoQuery(strWhsDetails)
                                                oForm.DataSources.DBDataSources.Item("@TPROD1").SetValue("U_Whsestk", i, orsWhsDetails.Fields.Item(0).Value)
                                                oForm.DataSources.DBDataSources.Item("@TPROD1").SetValue("U_AVILSTK", i, (orsWhsDetails.Fields.Item(0).Value - Bomiitems.Fields.Item(3).Value))
                                                oForm.DataSources.DBDataSources.Item("@TPROD1").SetValue("U_PLANTSTK", i, orsWhsDetails.Fields.Item(3).Value)
                                                oMatrix.LoadFromDataSource()
                                            End If
                                            i = i + 1
                                            Bomiitems.MoveNext()
                                            oMatrix.LoadFromDataSource()
                                        End While
                                        oMatrix.LoadFromDataSource()
                                    End If
    Regards,
    Pravin Baji

    follow steps
    1)     Execute query so we can get data set
    2)     Clear matrix and data source (omatrix.clear(), oDBS.Clear())
    3)     Open loop
    4)     Insert record to oDBS using oDBS.InsertRecords(oDBS.Offset)
    5)     Then set value using oDBS.Setvalue(u2026u2026
    6)     Move next record
    7)     Finally close the loop
    8)     Matrix load from record set using oMatrix.LoadfromData()
    it will be work

Maybe you are looking for