صفحه 2 از 2 اولاول 12
نمایش نتایج 41 تا 49 از 49

نام تاپیک: اوراکل گارد

  1. #41

    نقل قول: اوراکل گارد

    چه کار باید بکنیم که apply شود؟

  2. #42

    نقل قول: اوراکل گارد

    نقل قول نوشته شده توسط amin-sadeghi مشاهده تاپیک
    چه کار باید بکنیم که apply شود؟
    اگه هیچ کدام apply نشده یعنی یه جای کار مشکل داشته . یه دستور وجود داره که برای رجیستر کردن و apply کردن آرشیو فایل ها در سمت standby استفاده می شود ولی برای یک فایل آرشیو و نه زمانی که همه فایل های آرشیو apply نشده باشه . راه اندازیتون مشکل داره .

  3. #43

    نقل قول: اوراکل گارد

    ممنون از اینکه جواب دادید.
    اگه ممکنه بگید این دستور چیه؟

    در ضمن من با استفاده از داکیومنت شما و داکیومنتی که اینجا آپلود کردم و با استفاده از VMWare پیاده سازی کردم.اگه براتون امکان داره ببینید مشکل من از کجاست؟
    فایل های ضمیمه فایل های ضمیمه

  4. #44
    کاربر دائمی آواتار aidin300
    تاریخ عضویت
    آذر 1384
    محل زندگی
    Tehran,Iran
    پست
    309

    نقل قول: اوراکل گارد

    نقل قول نوشته شده توسط amin-sadeghi مشاهده تاپیک
    چه کار باید بکنیم که apply شود؟
    برای اینکه apply بشه باید مراحل زیر رو به ترتیب انجام بدید

    اول از انتقال فایل های آرشیو لاگ اطمینان پیدا کنید و مطمئن شید که خطایی وجود نداره
    select dest_id,status,target,error from v$archive_dest


    دستور زیر رو اجرا کرده باشید تا آرشیو لاگ های انتقال داده شده apply شوند
    alter database recover managed standby database disconenct from session;

    مطمئن بشید که گپی وجودنداره
    select * from v$archive_gap

    و اینکه تاریخ و timezone هم یکی باشه و alert log هم بررسی کنید

  5. #45

    نقل قول: اوراکل گارد

    همه ی این کارهایی که شما گفتید رو انجام دادم
    هیچ مشکلی نیست.هیچ خطا یا گپی وجود نداره .اما باز هم apply نشد.
    از دستور ALTER DATABASE REGISTER PHYSICAL LOGFILE هم استفاده کردم تا APPLY شوند ولی خطایی به صورت زیر ایجاد شد:
    ERROR at line 1:
    ORA-16089: archive log has already been registered
    در ضمن منظورتون از timezone چیه؟
    آخرین ویرایش به وسیله amin-sadeghi : یک شنبه 26 دی 1389 در 10:12 صبح

  6. #46

    نقل قول: اوراکل گارد

    سلام
    تنظیمات شبکه رو چک کنید
    من با داکیومنت خودم تونستم دوباره راه اندازی کنم .
    ممکنه از vmware باشه آخه من رو دو تا سرور مجزا run کردم .
    البته با vmware 7.0 هم امتحان کردم شد .

  7. #47

    نقل قول: اوراکل گارد

    مراحل نصب Physical Stanby Database در مد Maximum Performance در محيط Oracle 10G (انتقال redo ها بوسيله archive ها)
    1. مرور Physical Stanby Database
    2. نيازمنديهای سخت افزاری و نرم افزاری
    3. انجام تنظيمات لازم بر روی سيستم primary
    4. انجام تنظيمات لازم بر روی سيستم standby
    5. بررسي درستی عملکرد standby
    1. مرور Physical Stanby Database :
    در اين قسمت تصميم داريم تا نحوه ايجاد Physical Standby Database را شرح دهيم همانطور که در قسمتهای قبل گفته شد يک standby ميتواند به دو صورت physical يا logical باشد که دراين نصب از روش physical استفاده ميکنيم هممچنين برای انتقال redo ها از primary به standby تصميم داريم از روش انتقال بوسيله archive ها استفاده نماييم به منظور اگاهي از تفاوت روشهای فوق ميتوانيد به لينک Data Guard و مدلهای مختلف Standby Database مراجعه کنيد .
    به منظور راه اندازی يک سيستم data guard لازم است بر روی حداقل دو سيستم تنظيمات لازم را انجام داد از يک سمت سيستم primary که يک سيستم عملياتی ميباشد و بايد تنظيمات لازم بر روی آن انجام شود تا redoهای ايجاد شده توسط آن به درستي به standby انتقال پيدا کند . از سوی ديگر حداقل يک سيستم standby ميباشد که بايد redoهای فرستاده شده از سمت primary را دريافت نمايد و بر روی پايگاه داده خود اعمال نمايد تا با سيستم primary همزمان بماند .
    2. نيازمنديهای سخت افزاری و نرم افزاری :
    نيازمنديهای نرم افزاری :
    به طور کلی هر نرم افزاری که در سمت primary اعم از سيستم عامل و نسخه اراکل موجود ميباشد لازم است بر روی سيستم standby نيز موجود باشد .
    به عنوان مثال اگر در سمت primary سيستم عامل linux ميباشد لازم است بر روی سيستم standby نيز همين سيستم عامل موجود باشد . بهتر است در انتخاب ويرايشها نيز دقت شود تا از بروز هرگونه مشکل خودداری شود .
    ليست نرم افزارهای مورد نياز نصب در هر دو سمت primary و standby به شرح زير ميباشد :
    پايگاه داده primaryنسخه اراکل oracle 10G Release 10.2.0.1.0نام کامپيوترsrvprimIP کامپيوتر20.20.20.1سيستم عاملRed Hat Enterprise Linux AS release 4 (Nahant Update 3)نام SIDdbtest1Instance Service Namesdbtest1TNS Service Nametns_primary پايگاه داده STANDBYنسخه اراکل oracle 10G Release 10.2.0.1.0نام کامپيوترsrvstandbyIP کامپيوتر20.20.20.2سيستم عاملRed Hat Enterprise Linux AS release 4 (Nahant Update 3)نام SIDdbtest2Instance Service Namesdbtest2TNS Service Nametns_standby

    3. انجام تنظيمات لازم بر روی سيستم primary :
    در سمت primary سيستم data guard لازم است تنظيمات لازم جهت ايجاد redo در سمت primary , انتقال redo ها به سمت standby و رفع مشکلات security انجام شود . به طور کلی اين تنظيمات را ميتوان به شرح ذيل عنوان نمود :
    1. تنظيم پارامترهای مربوط به archive نمودن redolog ها در pfile يا spfile مربوطه و قرار دادن primary database در مد archive :
    پارامترهايی که بايد تنظيم شوند مطابق زير ميتوانند باشند :

    log_archive_dest_1 = 'location=/u01/archive'
    log_archive_dest_state_1= 'enable'
    log_archive_format='%t_%s_%r.arc'
    در صورتی که پارامترهای بالا تنظيم نشده باشند و با spfile بالا آمده باشيم ميتوانيم بوسيله دستورات زير اين تنظيمات را انجام دهيم :
    sql_10g > alter system set log_archive_dest_1 = 'location=/u01/archive'
    sql_10g > alter system set log_archive_dest_state_1= 'enable'
    sql_10g > alter system set log_archive_format='%t_%s_%r.arc'
    پس از اينکه تغييرات بالا اعمال شد ميتوان با استفاده از روش زير پايگاه داده را در مد archive قرار داد :
    sql_10g > shutdown immediate ;
    sql_10g > startup mount ;
    sql_10g > alter database archivelog ;
    sql_10g > alter database open ;
    Enable forced logging . 2 :
    enable نمودن ايجاد log در پايگاه داده به صورت force امکانی است که از oracle 9i در اختيار کاربران قرار داده شده است در صورت enable نمودن آن چنانچه يک transaction به صورت nologging باشد nologging در نظر گرفته نميشود و redo لازم جهت همزمانی standby با primary ايجاد ميشود در غير اينصورت لازم بود که dba خود تغييراتي را که log آنها ايجاد نشده پيدا نموده و به standby ها انتقال دهد . به منظور اعمال force logging به صورت زير عمل مينماييم :
    sql_10g > alter database force logging;
    ميتوانيم با query زيراز اعمال آن اطمينان حاصل نمود :
    sql_10g > select force_logging from v$database

    FORCE_LOGGING
    -------------
    YES


    3. ايجاد PASSWORD فايل :
    به منظور اطمينان از SECURITY پايگاه داده های STANDBY تمامی آنها بايد دارای PASSWORD FILE باشند و پسورد کاربر SYS درآنها بايد با پسورد کاربر SYS در PRIMARY يکسان باشد . در صورتيکه اين فايل قبلا در PRIMARY ايجاد شده باشد ميتوان با کپي نمودن آن به STANDBY از اين مرحله گذر نمود در غير اينصورت ميتوان اين فايل را در PRIMARY ايجاد وسپس به STANDBY انتقال داد.
    $ orapwd file=orapwdbtest1 password=sys_pass
    نکته : پس از انتقال password file به standbyها بايد نام آن در سمت standby به صورت 'orapw'ORACLE_SID تغيير شود که ORACLE_SID برابر نام INSTANCE مربوط به STANDBY ميباشد که در اين مثال dbtest2 ميباشد (دقت داشته باشيد در linux حروف بزرگ و کوچک متفاوت ميباشند)
    پس از اينکه password file ايجاد شد لازم است تا امکان استفاده از آن برای primary فراهم شود لذا مطابق زير خواهيم داشت :
    sql_10g > shutdown immediate
    sql_10g > startup nomount
    sql_10g > alter system set remote_login_passwordfile=exclusive scope=spfile
    sql_10g > alter database mount
    sql_10g > alter database open
    4. ايجاد سرويسهای لازم در oracle network file :
    به منظور امکان ايجاد ارتباط primary با standby جهت ارسال redo ها لازم است سرويس لازم در سمت primary ايجاد شود همچنين يک سرويس ديگر ايجاد ميشود تا در صورت تغيير نقش بتوان از آن استفاده نمود لذا لازم است تا در فايل tnsname.ora هر دو سمت standby , primary اين دو سرويس را قرار داد .

    tns_primary=
    ( DESCRIPTION =
    (ADDRESS_LIST =
    (ADDRESS =
    (PROTOCOL = TCP)
    (HOST = 20.20.20.1)
    (PORT = 1521)
    )
    )
    (CONNECT_DATA =
    (SERVICE_NAME =dbtest1)
    )
    )

    tns_standby =
    (DESCRIPTION =
    (ADDRESS_LIST =
    (ADDRESS =
    (PROTOCOL = TCP)
    (HOST = 20.20.20.2)
    (PORT = 1521)
    )
    )
    (CONNECT_DATA =
    (SERVICE_NAME = dbtest2)
    )
    )
    همچنين لازم است listener مورد نياز در سمت primary را ايجاد نمود لذا در فايل listener.ora خواهيم داشت :
    LISTENER =
    ( DESCRIPTION_LIST =
    (DESCRIPTION =
    (ADDRESS_LIST =
    (ADDRESS = (PROTOCOL = TCP)(HOST = 20.20.20.1)(PORT = 1521))
    )
    (ADDRESS_LIST =
    (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC))
    )
    )
    )
    پس از اينکه تنظيمات لازم را در listener.ora اعمال نموديم لازم است listener را بالا و پايين کنيم
    $ lsnrctl stop
    $ lsnrctl start
    پس از اين مرحله لازم است که درون فايل sqlnet.ora يک پارامتر را تنظيم نماييم البته اين تنظيم در سمت primary به اين دليل لازم است که امکان دارد بخواهيم يک switchover انجام بدهيم در غير اينصورت اين تنظيم فقط در سمت standby صورت ميگيرد :

    sqlnet.ora
    SQLNET.EXPIRE_TIME=2
    .
    .
    .

    5. تنظيم پارامترهای primary database :
    پارامترهای متعددی در فايل پارامتر تنظيم ميشوند بيشتر اين پارامترها به چگونگي استفاده instance از disk ,cpu و حافظه مربوط ميشوند .
    در سيستم dataguard زمانی که مشخصات سيستم primary و standby مشابه ميباشند بيشتر پارامترها به جز موارد اندکی مشابه ميباشند .
    در اين قسمت پارامترهايی مهمی که در سمت primary به منظور پيکربندی data guard لازم است شرح ميدهيم :
    DB_UNIQUE_NAME
    INSTANCE_NAME
    SERVICE_NAMES
    LOG_ARCHIVE_CONFIG
    FAL_CLIENT
    FAL_SERVER
    LOG_ARCHIVE_DEST_1
    LOG_ARCHIVE_DEST_STATE_1
    LOG_ARCHIVE_DEST_2
    LOG_ARCHIVE_DEST_STATE_2
    STANDBY_FILE_MANAGEMENT
    اين پارامترها را به صورت زير تنظيم مينماييم :
    DB_UNIQUE_NAME = 'dbtest1'
    INSTANCE_NAME = 'dbtest1'
    اين پارامتر مشخص کننده يک نام منحصر به فرد برای پايگاه داده primary ميباشد .
    SERVICE_NAMES = 'dbtest1'
    از اين پارامتر در تنظيم سرويس شبکه اراکل استفاده ميشود .
    LOG_ARCHIVE_CONFIG = 'DG_CONFIG=(dbtest1,dbtest2)'
    اين پارامتر مشخص کننده ليست DB_UNIQUE_NAME ها در سمت primary و standby ميباشد .
    FAL_CLIENT = tns_primary
    اين پارامتر در سمت PRIMARY برابر با سرويسی شده که به پايگاه داده سيستم PRIMARY اشاره ميکند .
    FAL_SERVER = tns_standby
    اين پارامتر در سمت PRIMARY برابر با سرويسی شده که به پايگاه داده سيستم STANDBY اشاره ميکند .
    LOG_ARCHIVE_DEST_1= 'location= /u01/archive valid_for=(all_logfiles,all_roles) db_unique_name=dbtest1'
    LOG_ARCHIVE_DEST_STATE_1='enable'
    در تنظيم پارامتر LOG_ARCHIVE_DEST_1 لازم است گزينه VALID_FOR را که خود شامل دو قسمت است تنظيم کنيم :
    (VALID_FOR=(redo_log_type,database_role
    redo_log_type : اين پارامتر مشخص کننده اين است که log فايلهايي که ميخواهد archive شود در صورتي مجاز ميباشد که بوسيله کدام redo log fileها ايجاد شده باشد اين گزينه ميتواند برابر ONLINE_LOGFILE , STANDBY_LOGFILE و ALL_LOGFILES باشد
    database_role : اين گزينه مشخص ميکند LOG_ARCHIVE_DEST_1 در چه صورت معتبر است و ميتواند برابر PRIMARY_ROLE ,STANDBY_ROLE و ALL_ROLES باشد . ALL_ROLES به اين معنا است که در هرشرايطی PRIMARY يا STANDBY معتبر است .
    LOG_ARCHIVE_DEST_2='SERVICE=tns_standby
    VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE)
    DB_UNIQUE_NAME=dbtest2'
    اين پارامتر مشخص ميکند که archive های توليد شده در LOG_ARCHIVE_DEST_2 به کجا ارسال ميشود . همچنين جزييات اين ارسال به چه صورت ميباشد که مطابق آنچه تنظيم شده با استفاده از يک سرويس شبکه اراکل service=tns_standby به پايگاه داده standby اشاره شده است . همچنين اين آدرس فقط زماني مجاز ميباشد که پايگاه داده ای که اين logها را توليد ميکند دارای نقش primary باشد در آخر DB_UNIQUE_NAME مربوط به پايگاه داده standby ذکر شده است .
    STANDBY_FILE_MANAGEMENT =AUTO
    نکته : تعدادی از پارامترهای فوق مربوط به زمانی است که سيستم PRIMARY تغيير نقش داده و STANDBY شده است همچنين در تنظيم پارامترهای فوق همانطور که مشاهده کرديد امکاناتی قرار داه شده است که بتوان بدون تغيير در پارامتر فايل تغيير نقش داد اين امکان همراه ORACLE 10G فراهم شده است .
    6. تهيه يک کپی از datafileهای primary و انتقال آنها به standby :
    کپي تهيه شده از فايلهای داده primary ميتواند consistent و يا غير consistent باشد در صورتی که پايگاه داده open نباشد کپی تهيه شده cold و consistent خواهد بود و در صورتی که پايگاه داده open باشد کپي تهيه شده hot و غير consistent است . در صورتی نتوانيم پايگاه داده را برای مدتی shutdown نماييم ناگزير از تهيه کپی به صورت inconsistent هستيم روشی که ما استفاده ميکنيم inconsistent است لذا به صورت زير عمل ميکنيم :
    sql_10g> select name from v$datafile ;
    NAME
    --------------------------------------------------------------------------------
    /u03/data/db/system01.dbf
    /u03/data/db/undotbs01.dbf
    /u03/data/db/sysaux01.dbf
    /u03/data/db/users01.dbf

    sql_10g> select * from v$logfile ;
    GROUP# STATUS TYPE MEMBER IS_RECOVERY_DEST_FILE
    ---------- ------- ------- -------------------------------------------------------------------------------- ---------------------
    3 ONLINE /u03/data/db/redo03.log NO
    2 ONLINE /u03/data/db/redo02.log NO
    1 ONLINE /u03/data/db/redo01.log NO
    با اجرای دستورات فوق ليست فايلهای داده و redo log فايلها مشخص ميشود . در ادامه دستورات زير را اجرا ميکنيم :
    sql_10g> alter database begin backup ;
    Database altered
    حال فايلهای داده و redo log فايلها را از آدرسهای فوق به همان آدرس در سيستم standby انتقال ميدهند برای اين کار ميتوان از دستور scp استفاده ميکنيم :
    $ scp /u03/data/db/*.dbf 20.20.20.2:/u03/data/db
    $ scp /u03/data/db/*.log 20.20.20.2:/u03/data/db
    در ادامه در سمت primary خواهيم داشت :
    sql_10g> alter database end backup ;

    *توجه : پس از اينکه فايلها را به standby سرور انتقال داديم دقت شود که فايلهای انتقال داده شده دارای owner مناسب باشند .
    7. ايجاد کنترل فايل مخصوص standby :
    کنترل فايل مربوط به standby متفاوت با کنترل فايل مربوط به primary ميباشد . به همين دليل بايد از روی کنترل فايل primary کنترل فايل مخصوص standby را ايجاد نمود . اين کنترل فايل به صورت زير ايجاد ميشود :
    sql_10g > alter database create standby controlfile as '/u01/app/oracle/stbyctl.ctl';

    پس از اينکه کنترل فايل مربوط به standby ايجاد شد آنرا به STANDBY سرور در همان آدرس PRIMARY سرور انتقال ميدهيم .
    *توجه : STANDBY CONTROL FILE . 1 بايد پس از اينکه فايلهای داده کپی شدند ايجاد شود .
    2 . برای ايجاد فايل فوق ميتوانيم از RMAN نيز استفاده نماييم .


    8. تهيه PFILE مورد نياز standby :
    همانطور که قبلا گفتيم پارامتر فايل primary و standby از بسياری جهات مشابه يکديگر ميباشند لذا ميتوان با استفاده از پارامتر فايل primary و اندکي تغيير در آن pfile مورد نياز standby را ايجاد نمود . در صورتی که با استفاده از spfile بالا آمده باشيم ميتوانيم ابتدا با استفاده از دستور زير pfile معادل آنرا ايجاد نماييم .
    sql_10g > create pfile='/u02/app/oracle/product/10.2.0/dbtest/dbs/initdbtest1.ora' from spfile
    *توجه : اسم پارامتر فايل بالا با علم به اينکه instance_name برابر dbtest1 است انتخاب شده است . پس از انتقال به standby آنرا به initdbtest2.ora تغيير ميدهيم

    پس از اينکه فايل فوق ايجاد شد اين فايل را به همراه standby control file به سرور standby انتقال ميدهيم .
    *توجه : پس از اينکه فايلها را به standby سرور انتقال داديم دقت شود که فايلهای انتقال داده شده دارای owner مناسب باشند .
    * نکته مهم : در تمام مراحل فرض شده که آدرسهای ايجاد شده در سمت standby همان آدرسهای ايجاد شده در سمت primary ميباشند در صورتي که اينگونه نباشد لازم است تعدادی پارامتر ديگر نيز تنظيم شوند .

    4. انجام تنظيمات لازم بر روی سيستم standby :
    1. تنظيم فايلهای شبکه اراکل:
    در اين مرحله همان سرويسهای ايجاد شده در سمت primary را به سمت فايل tnsnames.ora مربوط به standby اضافه ميکنيم :
    tns_primary=
    ( DESCRIPTION =
    (ADDRESS_LIST =
    (ADDRESS =
    (PROTOCOL = TCP)
    (HOST = 20.20.20.1)
    (PORT = 1521)
    )
    )
    (CONNECT_DATA =
    (SERVICE_NAME = dbtest1)
    )
    )
    tns_standby =
    (DESCRIPTION =
    (ADDRESS_LIST =
    (ADDRESS =
    (PROTOCOL = TCP)
    (HOST = 20.20.20.2)
    (PORT = 1521)
    )
    )
    (CONNECT_DATA =
    (SERVICE_NAME = dbtest2)
    )
    )

    فايل listener.ora مربوط به standby را مشابه primary با اندکی تغيير به مانند زير تنظيم مينماييم :

    LISTENER =
    (DESCRIPTION_LIST =
    (DESCRIPTION =
    (ADDRESS_LIST =
    (ADDRESS = (PROTOCOL = TCP)(HOST = 20.20.20.2)(PORT = 1521))
    )
    (ADDRESS_LIST =
    (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC))
    )
    )
    )
    تنظيم فايل sqlnet.ora به صورت زير :
    sqlnet.ora
    SQLNET.EXPIRE_TIME=2
    .
    .
    .

    حال listener سمت standby را stop و start تا از درستي آن اطمينان حاصل کنيم :
    $ lsnrctl stop
    $ lsnrctl start
    2.تنظيم پارامتر فايل مربوط به standby :
    پس از اينکه پارامتر فايل primary را به standby انتقال داديم بايد تغييرات لازم را در آن اعمال کنيم تا بتوان از آن در سمت standby استفاده نمود سپس ميتوان از روی آن spfile ساخت . پارامترهايي که بايد در سمت primary آنها را تغيير داد به شرح زير ميباشند :

    DB_UNIQUE_NAME = 'dbtest2'
    INSTANCE_NAME = 'dbtest2'
    اين پارامتر مشخص کننده يک نام منحصر به فرد برای پايگاه داده primary ميباشد .
    SERVICE_NAMES = dbtest2
    از اين پارامتر در تنظيم سرويس شبکه اراکل استفاده ميشود .
    FAL_CLIENT = tns_standby
    FAL_SERVER = tns_primary
    در سمت standby مقدار دو پارامتر فوق مطابق آنچه مشاهده ميشود با هم عوض ميشود .
    LOG_ARCHIVE_DEST_1= 'location= /u01/archive valid_for=(all_logfiles,all_roles) db_unique_name=dbtest2'
    LOG_ARCHIVE_DEST_STATE_1='enable'
    در تنظيم پارامتر LOG_ARCHIVE_DEST_1 لازم است گزينه VALID_FOR را که خود شامل دو قسمت است تنظيم کنيم :
    (VALID_FOR=(redo_log_type,database_role
    redo_log_type : اين پارامتر مشخص کننده اين است که log فايلهايي که ميخواهد archive شود در صورتي مجاز ميباشد که بوسيله کدام redo log fileها ايجاد شده باشد اين گزينه ميتواند برابر ONLINE_LOGFILE , STANDBY_LOGFILE و ALL_LOGFILES باشد .
    database_role : اين گزينه مشخص ميکند LOG_ARCHIVE_DEST_1 در چه صورت معتبر است و ميتواند برابر PRIMARY_ROLE ,STANDBY_ROLE و ALL_ROLES باشد . ALL_ROLES به اين معنا است که در هرشرايطی PRIMARY يا STANDBY معتبر است .
    LOG_ARCHIVE_DEST_2='SERVICE=tns_primary
    VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE)
    DB_UNIQUE_NAME=dbtest1'
    اين پارامتر مشخص ميکند که archive های توليد شده در LOG_ARCHIVE_DEST_2 به کجا ارسال ميشود . همچنين جزييات اين ارسال به چه صورت ميباشد که مطابق آنچه تنظيم شده با استفاده از يک سرويس شبکه اراکل service=tns_primary به پايگاه داده primary اشاره شده است . همچنين اين آدرس فقط زماني مجاز ميباشد که پايگاه داده ای که اين logها را توليد ميکند دارای نقش primary باشد در آخر DB_UNIQUE_NAME مربوط به پايگاه داده primary ذکر شده است . از اين پارامتر زماني استفاده ميکند که switchover انجام داده باشيم .
    control_files = /u03/data/db/stbyctl.ctl
    نام و مکان کنترل فايل کپي شده در سمت standby را مشخص ميکند .
    3. password file :
    در اين روش نصب فرض بر اين شده که نام instance در هردو سمت primary , standby متفاوت ميباشد لذا در صورت وجود پسورد فايل در سمت primary آنرا به standby انتقال ميدهيم و سپس نام آنرا به صورت orapw$ORACLE_SID تغيير ميدهيم که ORACLE_SID$ بيان کننده نام INSTANCE در سمت STANDBY ميباشد . در صورتی که مايل باشيد ميتوانيد آنرا در سمت STANDBY با دستور orapwd بسازيد . فراموش نکنيد که پسورد کاربر sys بايد همان پسورد کاربر sys در سمت primary باشد .
    ORACLE_SID$ بيان کننده نام INSTANCE ميباشد .
    4. شروع به کار standby database :
    پايگاه داده standby مادامي که در وضعيت standby باشد در دو وضعيت قرار داده ميشود open read only و يا redo log apply . در حالت open read only ميتوان يک سری کارهای مديريتی بر روی پايگاه داه انجام داد . هرگز نبايد پايگاه داده را به صورت READ AND WRITE باز نمود . در حال redo log apply اراکل REDO های فرستاده شده از سمت PRIMARY را بر روی STANDBY اعمال مينمايد تا همزمان با تغييرات PRIMARY پيش برود .
    با توجه به اين که امکان دارد در آينده بخواهيم SWITCHOVER يا FAILOVER انجام بدهيم بهتر است از هم اکنون فايلهای TEMPORARY را در سمت STANDBY ايجاد نماييم لذا به صورت زير عمل ميکنيم :
    sql_10g > STARTUP OPEN READ ONLY ;
    sql_10g > SELECT TABLESPACE_NAME FROM DBA_TABLESPACES
    2> WHERE CONTENTS = 'TEMPORARY';
    TABLESPACE_NAME
    --------------------------------
    TEMP1
    بوسيله دستور فوق ميتوانيم نام TEMPORARY TABLESPACE را بدانيم حال خواهيم داشت :
    sql_10g > ALTER TABLESPACE TEMP1 ADD TEMPFILE '/u03/data/db/temp01.dbf' SIZE 40M REUSE;
    سپس پايگاه داده را در مد redo log apply قرار ميدهيم :
    sql_10g> ALTER DATABASE RECOVER MANAGED STANDBY DATABASE DISCONNECT FROM SESSION
    تا وقتي که در سمت primary يک log switch صورت نگيرد هيچ فايل archive به standby فرستاده نميشود لذا با انجام يک switch اجباری در سمت primary اين امکان را فراهم ميکنيم .
    در سمت primary خواهيم داشت :
    sql_10g > ALTER SYSTEM SWITCH LOGFILE

    5. اطمينان از صحت انتقال و اعمال archiveها از سمت primary به standby :
    ابتدا در سمت primary بررسی ميکنيم که شماره redo log file جاری چند است :
    sql_10g > select SEQUENCE# ,STATUS
    2 from v$log
    3 /

    SEQUENCE# STATUS
    ---------- ----------------
    221 INACTIVE
    222 CURRENT
    220 INACTIVE

    مطابق نتيجه به دست آمده شماره log جاری برابر 222 ميباشد اين log را در سمت primary به صورت archive تبديل ميکنيم :
    sql_10g > alter system archive log current ;
    حال در سمت standby بررسي ميکنيم که آيا اين شماره archive رسيده و apply شده است يا خير :
    sql_10g> select max(sequence#) from v$archived_log where applied='YES'
    در صورتيکه شماره archive نمايش داده شده برابر 222 باشد نشان دهنده درستی عملکرد standby ميباشد .

  8. #48
    کاربر تازه وارد آواتار tk2005730
    تاریخ عضویت
    شهریور 1387
    محل زندگی
    http://www.DOSPRINT.ir
    پست
    40

    نقل قول: اوراکل گارد

    با سلام خدمت تمامی دوستان

    میشه این داکیومنتی که دوستمون تو پست های اول گذاشتن را دوباره بذارین چون من لینک دانلودش را نمیبینم

    ممنون
    خیلی نیاز دارم

  9. #49

    نقل قول: اوراکل گارد

    سلام.
    این مطالب رو میشه از کجا دانلود کرد؟
    لطفا به ایمیلم جواب بدید onila10@yahoo.com

صفحه 2 از 2 اولاول 12

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •