Best practice - online redo logs and virtualization

I have a 10.1.0.4 instance (soon to be migrated to 11gr2) running under Windows Server 2003.
We use a non-standard disk distribution scheme -
on the c: drive we have oracle_home as well as directories for control files and online redo logs.
on the d: drive we have datafiles
on the e: drive we have archive log files and another directory with online redo logs and another copy of control file
my question is this:
is it smart practice to have ANY online redo logs or control file on the same spindle with archive logs?
Our setup works fairly well but we are in the process of migrating the instance first to ESX server and SAN and then secondly to 11gtr2 64bit under server 2008 64 and when we bring up our instance on the VM for testing we find that benchmarking the ESX server (dual Xeon 3.4ghz with 48gb RAM running against FalconStor NSS SAN with 15k SAS disks over iSCSI) against the production physical server (dual Xeon 2.0ghz with 4gb RAM using direct attached SATA 7200rpm drives) we find that some processes run faster on the ESX box and some run 40-100% slower. Running Statspack seems to identify lots of physical read waits as well as some waits for redo and controlfiles.
Is it possible that in addition to any overhead introduced by ESX and iSCSI (we are running Jumbo Frames over 1gb) we may have contention because the archive logs are on the same "spindle" (virtual) as the online redo and control files?
We're looking at multiple avenues to bring the 2 servers in line from a performance standpoint - db configuration, memory allocation, possible move to 10gb network, possible move to SSD storage tray, possible application rewrites. But from the simplest low hanging fruit idea, if these files should not be on the same spindle thats an easy change to make and possibly eke out an improvement.
Ideas?
Mike

Hi,
"Old" Oracle standard is to use as many spindles as possible.
It looks to me, you have only 1 disk with several partitions on it ??
In my honest opinion you should anyway start by physically seperating OS from Oracle, so let the C: drive to the Windows OS
Take another physical seperate D: drive to install you application.
Use yet another set of physical drives, preferably in RAID10 setup, for your database and redo logs
And finally yet another disk for the archive logs.
We have recently configured a Windows 2008 server with an 11G Db, which pretty much follows the above setup.
All non RAID10 disks are RAID1 ( mirror ) and we even have some SSD's for hot tables and redo-logs.
The machine, or must I say the database, operates like a high speed train, very, very fast.
Ofcourse keep in mind the number of cores ( not only for licensing ) and the amount of memory.
Try to prevent the system from swapping, because that is a performance killer!
Edit: And even if you put a virtual layer in between, try to seperate the virtual disks as much as possible over physical disks
Success!
FJFranken
Edited by: fjfranken on 7-okt-2011 7:19

Similar Messages

  • Best practice for CM log and Out

    Hi,
    I've following architecture:
    DB SERVER = DBSERVER1
    APPS SERVER =APP1 AND APP2
    LB= Netscaler
    PCP configured.
    What is the best practice to have CM log and out? Do I need to keep these files on DB server and mount to APP1 and APP2?
    Please advice.
    Thanks

    Hi,
    see if you want to save the logfiles of other cm node when crash happens then why u want to share APPLCSF?if the node which is hosting shared APPLCSF gets crashed then ALL the logfiles(of both nodes) are gone, keep same directories and path of APPLCSF on both the nodes,so the CMNODE(A) have logfiles local in its directories and CMNODE(B) have logfile local in its directories....
    In the last what ever  i said above was my thinking so follow it or not its u r wish,But always follow what oracle says...the poster should also check with oracle.
    Regards
    Edited by: hungry_dba on Jan 21, 2010 1:20 PM

  • Best practice for Error logging and alert emails

    I have SQL Server 2012 SSIS. I have Excel files that are imported with Exel Source and OLE DB Destination. Scheduled Jobs runs every night SSIS packages.
    I'm looking for advice that what is best practice for production environment.Requirements are followings:
    1) If error occurs with tasks, email is sent to admin
    2) If error occurs with tasks, we have log in flat file or DB
    Kenny_I

    Are you asking about difference b/w using standard logging and event handlers? I prefer latter as using standard logging will not always data in the way in which we desire. So we've developed a framework to add necessary functionalities inside event handlers
    and log required data in the required format to a set of tables that we maintain internally.
    Please Mark This As Answer if it helps to solve the issue Visakh ---------------------------- http://visakhm.blogspot.com/ https://www.facebook.com/VmBlogs

  • Multiplexing Online redo logs, archive logs, and control files.

    Currently I am only multiplexing my control files and online redo logs, My archive logs are only going to the FRA and then being backed up to tape.
    We have to replace disks that hold the FRA data. HP says there is a chance we will have to rebuild the FRA.
    As my archive logs are going to the FRA now, can I multiplex them to another disk group? And if all of the control files, online redo logs and archive logs are multiplexed to another disk group, when ASM dismounts the FRA disk group due to insufficient number of disks, will the database remain open and on line.
    If so then I will just need to rebuild the ASM volumes, and the FRA disk group and bring it to the mount state, correct?
    Thanks!

    You can save your online redo logs and archive logs anywhere you want by making use of of init params create_online_log_dest and log_archive_dest_n. You will have to create new redo log groups in the new location and drop the ones in the FRA. The archive logs will simply land wherever you designate with log_archive_dest_n parameters. Moving the control files off FRA is a little trickier because you will need to restore your controlfile to a non-FRA destination and then shutdown your instance, edit the control file param to reflect changes and restart.
    I think you will be happier if you move everything off the FRA diskgroup before dismounting it, and not expecting the db to automagically recover from the loss of files on the FRA.

  • Cold backup with online redo logs

    I am working on 10G in AIX for a single instance
    It is just a general db backup & restore question, but I have something confused.
    I am going to perform a cold backup with my ARCHIVELOG database.
    No wonder why I perform a cold backup because it is a testing database which can suffer from data lost and down time during backup.
    I read some guides. They all mentioned to backup all the datafiles and control files.
    During the restoration, I have to copy all the backed up datafiles and control files to the default location.
    Then Startup mount;
    The last step before open the database is recover database until cancel;
    For the acknowledgement, I have to do the command of recover database, because the online redo logs were not backed up, thus we have to recover it in order to reset the redo logs.
    For my question,Would I be able to skip the command of recover database, then directly startup the database if I have backed up the online redo logs and copy the default location during the restoration?
    However, I read many documents which mention that it is not suggested to backup the online redo logs. Is it just the case which ONLY applied in hot backup? Do you all think that for my case, cold backup for online redo logs is recommended?
    Thanks all

    jgarry wrote:
    Edit: And never forget, those test databases are some developers production.Absolutely true according to my experience. Loosing the work of a payed developer is just as bad as loosing the work of a production system and may even be worse because it may not be possible to re-enter missing data into the system.
    I think a cold backup is only suitable on special occasions, for instance, to relocate/copy the database to a different storage media, or if the database doesn't change or if loosing changes is absolutely irrelevant. Otherwise, put the database into archivelog mode and do a hot backup. After that you will also have alternative options which can make the restore and recovery of the database very easy and efficient, like flashback database, etc. but it will take substantial additional disk space.

  • The file structure online redo log, archived redo log and standby redo log

    I have read some Oracle documentation for file structure and settings in Data Guard environment. But I still have some doubts. What is the best file structure or settings in Oracle 10.2.0.4 on UNIX for a data guard environment with 4 primary databases and 4 physical standby databases. Based on Oracle documents, there are 3 redo logs. They are: online redo logs, archived redo logs and standby redo logs. The basic settings are:
    1. Online redo logs --- This redo log must be on Primary database and logical standby database. But it is not necessary to be on physical standby database because physical standby is not open. It doesn't generate redo log. However, if don't set up online redo log on physical standby, when primary failover and switch standby as primary. How can standby perform without online redo logs? In my standby databases, online redo logs have been set up.
    2. Archived redo logs --- It is obviously that primary database, logical and physical standby database all need to have this log file being set up. Primary use it to archive log files and ship to standby. Standby use it to receive data from archived log and apply to database.
    3. Standby redo logs --- In the document, it says A standby redo log is similar to an online redo log, except that a standby redo log is used to store redo data received from another database. A standby redo log is required if you want to implement: The maximum protection and maximum availability levels of data protection and Real-time apply as well as Cascaded destinations. So it seems that this standby redo log only should be set up on standby database, not on primary database. Am my understanding correct? Because I review current redo log settings on my environment, I have found that Standby redo log directory and files have been set up on both primary and standby databases. I would like to get more information and education from experts. What is the best setting or structure on primary and standby database?

    FZheng:
    Thanks for your input. It is clear that we need 3 type of redo logs on both databases. You answer my question.
    But I have another one. In oracle ducument, it says If you have configured a standby redo log on one or more standby databases in the configuration, ensure the size of the current standby redo log file on each standby database exactly matches the size of the current online redo log file on the primary database. It says: At log switch time, if there are no available standby redo log files that match the size of the new current online redo log file on the primary database. The primary database will shut down
    My current one data gurard envirnment setting is: On primary DB, online redo log group size is 512M and standby redo log group size is 500M. On the standby DB, online redo log group size is 500M and standby redo log group size is 750M.
    This was setup by someone I don't know. Is this setting OK? or I should change Standby Redo Log on standby DB to 512M to exactly meatch with redo log size on primary?
    Edited by: 853153 on Jun 22, 2011 9:42 AM

  • What is the difference between undo tablespace and online redo log files.

    what is the difference between undo tablespace and online redo log files. I am confused
    as per my knowledge undo tablespace is used to store the undo information when a table is being updated so that, just incase we need to rollback a transaction we know what was present in the table earlier.
    when a transaction fails the SMON performs the rollback of the data.
    This undo data is stored in the undo tablespace and read consistency if any is enforced.
    is my understanding till here correct?
    Now, can this undo data/before image not be stored in the redo log buffer and online redolog files?
    can redo-log files not store this information?
    in fact, is it that when undo tablespaces exist in a database, the undo data/before image is stored in both the undo tablespace and also the redo log files?
    kindly clarify my doubt.
    thank you.

    This question has been asked many times before. The answer is always the same.
    Yes, redo contains the before image of data (and the after-image). Therefore, it **COULD** be used to roll back a transaction.
    BUT... Redo is written sequentially. Using it to rollback your transaction would involve reading through all the redo written by maybe thousands of other people. It would be painfully slow.
    Your transaction is, however, directly linked to just the UNDO that it generates (which is JUST the before image of the data). So, your undo is your undo and doesn't share space with anyone else's undo. Therefore, using it to roll back YOUR transaction is fast.
    The fact that undo is only the before image of the data also makes it faster than wading through a sea of before and AFTER images as you'd find in redo. About twice as fast, in fact, since there's half the data. Roughly.
    Redo also gets written and flushed to disk whenever there's a commit, 3 seconds are up or too much (1MB, actually) redo gets generated between flushes caused by other factors. Your redo gets flushed when those things happen, even if you haven't actually committed your transaction. And redo logs recycle themselves, meaning that your redo -even if your transaction hasn't been committed yet- can be over-written by later transactions. Try rolling back when that's happened, if redo was the source of your rollback data!
    Undo, however, cannot be over-written if the transaction has not been committed. Ever. If you don't commit for three years, there will be three years' undo stored in your database (assuming you had the space, of course!).
    I could go on, but that will do. Redo is there fore RECOVERY, after catastrophe. Undo is there for read-consistency (and the occasional change of mind). Two different functions. Two different mechanisms. Each one highly tuned to doing what it does, why it does it, most efficiently and effectively.

  • Best practice online redologs redundant

    Oracle dbs on Unix without ASM
    Few DBs have only single oracle filesystem available on unix box & have only one online redolog file available, wondering what would be the best practice to redundant them?
    I know if i have multiple oracle filesystems , i can spread them there. but with only one filesystem, i can create one more redolog and put on the same filesystem.

    All right here is my researchwork on this topic, make me right if i miss something, its not RAC, just single instance dbs.
    Advantages
    Oracle recommends that you mutliplex the online redo log files, store members on separate disk drives, Even if all
    copies of the redo log are on the same disk, the redundancy can help protect against I/O errors, file corruption, and
    so on.
    Disadvantages
    Multiplex redo log files. the database must increase the amount of I/O that it performs. Depending on your
    configuration, this may impact overall database performance.
    Each member in a group must be exactly the same size.
    select GROUP#, MEMBER from v$logfile;
    select GROUP#, MEMBERS, STATUS , BYTES from v$log;
    ALTER DATABASE ADD LOGFILE MEMBER '/oracle/dbs/log2b.rdo' TO GROUP 2;
    alter system switch logfile; (few times to make sure all ok)
    Backout plan
    alter database drop logfile member '/wmbrktst/oradata/wmbrktst/redo01.log';

  • Clearing Online redo logs on the target physical standby

    Hi,
    Version 11202.
    Primary on machine A
    Standby on machine B
    Following note: 11.2 Data Guard Physical Standby Switchover Best Practices using SQL*Plus [ID 1304939.1].
    Online redo logs on the target physical standby need to be cleared before that standby database can become a primary database. And later :
    On the target physical standby run the following query to determine if the online redo logs have not been cleared... 1) I did not understand where i should run the query. On machine A or on machine B ?
    2)
             Online redo logs on the target physical standby need to be CLEARED
            What does it mean that it need to be CLEARED ? Does transaction might be lost by running the clearing command?
    Thanks

    I have used my note many times in production.
    For example they needed to do some power work on the main server room a few months back on the weekend.
    We did switchovers until the work was complete and then a switch back.
    I wrote a short document called "Switchover post-mortem lessons" the main point from that was :
    1.
    getting ORA-01017 issues in Oracle forms (  Application ) after the switchover to standby.
    The issue was caused by the Standby database having a different parameter for passwords than the Primary database.
    This did not show up in testing because all the tester we used had converted passwords from Oracle 10.
    Solution
    When in doubt issue this on the new Primary :
    SQL>ALTER SYSTEM SET SEC_CASE_SENSITIVE_LOGON = FALSE;
    Note: This command can be issued repeatedly with no negative effect on the system.2.
    The query to check switch_over status was returning "LOG SWITCH GAP"
    select switchover_status from v$database;
    This is an issue because Oracle says the return values should be one of these :
    NOT ALLOWED
    SESSIONS ACTIVE
    SWITCHOVER PENDING
    SWITCHOVER LATENT
    TO PRIMARY
    TO STANDBY
    RECOVERY NEEDED
    LOG SWITCH GAP is not one of the expected value. In addition this phase is not search friendly either on the Oracle support site or your favorite search engine.
    Given this I ran this query :
    SELECT 
      NAME AS STANDBY,
      SEQUENCE#,
      APPLIED,
      COMPLETION_TIME
    FROM
      V$ARCHIVED_LOG;
    Solution
    SQL>ALTER SYSTEM SWITCH LOGFILE;
    And wait a few minutesMy switchover document had no issue.
    Best Regards
    mseberg

  • Online redo logs fill-up due to long running SCM processes

    DB2 v9.7
    AIX v6.1 P570
    Running Standard SAP Code
    Going live with SCM system running SNP/DP GATP how can we avoid having our online redo logs fill-up due to long running processes (i.e., CTM. Process Chains, BOP, DP Runs) Need to know SAP Best Practice regarding this -
    Per our developers, BOP jobs performs commit when everything is processed and update table in one go at end, Hence not possible to perform commit regularly. Actually they will have to run BOP for 3200 material with 98000 sales order items.
    But after just running BOP for 40 material with 22000 sales orders line items we are getting DBIF_RSQL_SQL_ERROR + CX_SY_OPEN_SQL_DB dumps
    Any assistance on this would be helpful...
    Thanks -

    Fred
    Check OSS notes for this error. The BOP compponent has a steady stream of corrections developed by SAP especially in older releases.
    Also make sure your Livecache Build is consistent with SCM Release/ Patch level.
    Rishi Menon

  • Moving the online redo log files to different location

    We just installed few more drives into our sandbox system and I want to move the online redo log files for better performance.  We've got the SAPARCH directory moved to a different location. 
    Does anyone know how/where I can change the parameters so redo log files are pointed at different drives?  It's not in the <b>init<SID>.ora</b> file...
    Regards,
    Sumit

    Hi Sumit,
    The following link contains information about moving the redo logs:
    http://www.stanford.edu/dept/itss/docs/oracle/9i/server.920/a96521/onlineredo.htm
    Best regards,
    Alwin

  • Online redo log files being removed physically

    Grid Infra version: 11.2.0.4
    RDBMS Version: 11.2.0.4
    Although this is a RAC DB, this is not a RAC-specific question. Hence posting it here.
    Few months back, I remember issuing a command similair to below (DROP LOGFILE GROUP ...) and the redo log files were still physically present in the diskgroup.
    If I remember correctly, the file is not deleted physical so that we can use the REUSE functionality (ALTER DATABASE ADD LOGFILE MEMBER '+REDO/orcl/onlinelog/redo1b.log' reuse to group 11; ) ie. you can use the REUSE command to add the logfile of the same name which is physically present in OS Filesystem/Diksgroup to redo log group.
    But today, after I issued the below command, I checked the diskgroup location from ASMCMD
    SQL> alter database drop logfile group 31;
    Database altered.
    From ASMCMD, I can that the file has disappeared physically. Is this a new feature with 11.2.0.4 or am I missing something here ?
    ASMCMD> ls +DATA/msblprd/onlinelog/group_31.548.833154995
    ASMCMD-8002: entry 'group_31.548.833154995' does not exist in directory '+DATA/msblprd/onlinelog/'

    Just to add to what Aman has said.
    It is a bad practice not to let OMF decide the placement of Online redo logs because of this issue especially when you use ASM.
    Executing rm command in Linux/Unix is easy but Dropping ASM aliases in the disk group can be a hassle.
    This is documented.
    "When a redo log member is dropped from the database, the operating system file is not deleted from disk. Rather, the control files of the associated database are updated to drop the member from the database structure. After dropping a redo log file, ensure that the drop completed successfully, and then use the appropriate operating system command to delete the dropped redo log file."
    http://docs.oracle.com/cd/E11882_01/server.112/e25494/onlineredo.htm#ADMIN11324
    BTW . You don't even need to set  db_create_online_log_dest_n to enable OMF for ORLs.
    SQL> show parameter log_dest
    NAME                                 TYPE        VALUE
    db_create_online_log_dest_1          string
    db_create_online_log_dest_2          string
    db_create_online_log_dest_3          string
    db_create_online_log_dest_4          string
    db_create_online_log_dest_5          string
    SQL> show parameter db_create_file_dest
    NAME                                 TYPE        VALUE
    db_create_file_dest                  string      +MBL_DATA
    alter database add logfile thread 4
    group 31 ('+MBL_DATA','+MBL_FRA') size 4096M,
    group 32 ('+MBL_DATA','+MBL_FRA') size 4096M,
    group 33 ('+MBL_DATA','+MBL_FRA') size 4096M,
    group 34 ('+MBL_DATA','+MBL_FRA') size 4096M ;
    Database altered.
    And redo logs will be neatly placed as shown below
       INST     GROUP# MEMBER                                             STATUS           ARC
             4         31 +MBL_DATA/bsblprd/onlinelog/group_31.276.832605441 UNUSED           YES
                          +MBL_FRA/bsblprd/onlinelog/group_31.297.832605445  UNUSED           YES
                       32 +MBL_DATA/bsblprd/onlinelog/group_32.547.832605451 UNUSED           YES
                          +MBL_FRA/bsblprd/onlinelog/group_32.372.832605457  UNUSED           YES
                       33 +MBL_DATA/bsblprd/onlinelog/group_33.548.832605463 UNUSED           YES
                          +MBL_FRA/bsblprd/onlinelog/group_33.284.832605469  UNUSED           YES
                       34 +MBL_DATA/bsblprd/onlinelog/group_34.549.832605475 UNUSED           YES
                          +MBL_FRA/bsblprd/onlinelog/group_34.359.832605481  UNUSED           YES

  • Commit Completes although current online redo log file have been removed.

    Although i have removed current online redo log file in linux os (Oracle Linux),when i type "commit" it says that "commit complete".
    Is this fair for this princip?*:" if Only when all redo records associated with a given transaction are safely on disk in the online logs is the user process notified that the transaction has been committed."*
    I think that it can lead to loss of data in some cases..I'm using Oracle 11g R2 on OEL (x64)..
    Can anyone explain me ? I'm getting stuck in this situation..
    P.S : I haven't multiplexed current ORL group files...

    Javid wrote:
    Although i have removed current online redo log file in linux os (Oracle Linux),when i type "commit" it says that "commit complete".
    Is this fair for this princip?*:" if Only when all redo records associated with a given transaction are safely on disk in the online logs is the user process notified that the transaction has been committed."*
    I think that it can lead to loss of data in some cases..I'm using Oracle 11g R2 on OEL (x64)..
    Can anyone explain me ? I'm getting stuck in this situation..
    In *nix, a file that is open by a process isn't really deleted until the process that has it completes.  So even though you 'deleted' a redo log, oracle is still holding it.  As soon as you stop your database (maybe even as soon as the db does a log switch) the redo will really be gone and no longer available.  consider the implications for archive logging.
    P.S : I haven't multiplexed current ORL group files...You need to fix that. the online logs are the achilles heel of the database. That's why it is standard practice to multiplex them.

  • Application of online redo logs

    Dear all,
    In my organisation recently standby database has been configured. Now my task is to restore a full online+redo backup which is created in primary database in the standby database. Once it is over I have to apply the newly created redo logs generated after the online backup.
    I am planning to restore the online+redo backup using the following command
    brrestore -b "BRBACKUP log file" -m full. Once it is done I have to apply the online redo logs. I am confused how to apply manually the newly created redo logs. Is there any document regarding it. I searched and found many information in net but nothing seems to be very convincing as this is a critical activity.
    Best Regards,
    Tapan

    Hello Tapan,
    > brrestore -b "BRBACKUP log file" -m full. Once it is done I have to apply the online redo logs.
    Bad idea, you need a standby controlfile and not a backup controlfile on the standby site.
    > I am confused how to apply manually the newly created redo logs. Is there any document regarding it.
    You can do this manually by your own or by Oracle Dataguard.
    I would suggest that you get a training on Oracle Dataguard and then you will understand the concepts and will be able to setup a DR solution. It makes not much sense to explain you all the steps and the functions, because of in a critical moment you should know what to do and why.
    If you really want to try it by your own - so start with this:
    http://download.oracle.com/docs/cd/B19306_01/server.102/b14239/toc.htm
    http://download.oracle.com/docs/cd/B19306_01/server.102/b14230/toc.htm
    Regards
    Stefan

  • Redo logs and Flash recovery area

    Hi,
    Is it a good practice to place a copy of the (multiplexed) online redo at the flash recovery area? Wouldn't it be better to place a copy of the archived log at the flash recovery area?

    user492400 wrote:
    Hi,
    Is it a good practice to place a copy of the (multiplexed) online redo at the flash recovery area? Wouldn't it be better to place a copy of the archived log at the flash recovery area?Its not only the archvielogs that should be placed in the FRA. FRA is supposed to contain one copy of the archive logs and the rest 9 destinations are given to you for the multiplexing of it. The idea of multiplexing the redo logs and placing them anywhere( not just on the FRA itself) is simply required so that you won't get to a situation where you would lose all the redo log files and thus have to recreate them, losing the data inside them. So aleast one copy of the log files should be there and where you want to put it, that would depend on you.
    HTH
    Aman....

Maybe you are looking for

  • Displaying regression line slope on line chart

    Post Author: Derk_Niblick CA Forum: Charts and Graphs I've been having some difficulty building a chart. I'm trying to plot two different series onto a chart. A scatterchart is ideally what I am looking to use, but I cannot get the trendlines to work

  • Finder search

    Okay guys. WHY if I search the keyword app the finder search box it does not show me all the applications but just some of them?

  • Oracle 11g EE migration to SE1

    Hi, We are planning to migrate Oracle 11g Enterprise Edition to Standard one edition. Right now OS is Solaris. New server will have Linux. I want to know: 1. What are the issues when migrating from 11g EE to SE? 2. What are the issues when migrating

  • Export fail quicktime 7.3 mov h.264

    i can export no any format but not to mov h.264 it was working, i install adobe premier cs3 and it requires to get my video card driver updated, i capture some videos dv and edit them fine, but i cud not preview them so i updated the video card drive

  • BT Desktop Help still won't work with Windows 7 64...

    THis has been going on for a while now.  It just won't launch.  Emails and screen sharing sessions have produced nothing.  One phone call to a representative resuilted in them telling me that the 64 bit Windows 7 version was not available yet - but w