انتقال گروههای دیسک ASM بین سرورها
انتقال گروههای دیسک ASM بین سرورها
یکی از رویدادهای محتمل در سناریو مدیریت خودکار دیسک اوراکل از بین رفتن سرور فیزیکی میباشد. در این وضعیت نرمافزار اوراکل به طور کلی از بین رفته است و دسترسی به Instance برای همیشه قطع شده است. در چنین شرایطی دیسکهای ASM و اطلاعات آنها که بر روی ذخیرهسازهای شبکهای قرار دارند کماکان قابلاستفاده میباشند. البته این فرض برقرار است که از بین رفتن سرور باعث از بین رفتن دیسکها و اطلاعات آن نشده باشد.
راهکار نخست برای بازیابی اطلاعات استفاده از آخرین پشتیبانهای پایگاهداده و بازیابی آنها بر روی یک سرور دیگر به وسیله ابزار Rman است. راهحل دوم راهاندازی یک سرور دیگر و شناسایی دیسکها و دسترسی به اطلاعات درون آنها میباشد. در این مستند به پیادهسازی سناریو دوم پرداخته میشود.
۱ پیادهسازی
در این مستند از سیستمعامل OEL 6.5 به عنوان میزبان و همچنین از نگارش ۱۱٫۲٫۰٫۴ پایگاهداده اوراکل استفاده شده است. ابتدا سیستمعامل نصب و سپس برای نصب پایگاهداده مراحل پیش از نصب بر روی آن انجام میشود. سپس نرمافزار GI به صورت Software Only از طریق کاربری Grid نصب میشود. در ادامه با استفاده از ابزار netmgr و یا netca یک Listener ایجاد و پردازش آن آغاز میشود. از آن جایی که دیسکهای ASM به سیستمعامل متصل میباشد و ASMLib در حین مراحل پیش از نصب پایگاهداده تنظیم شده است؛ با استفاده از دستور زیر دیسکهای ASM مشاهده خواهد شد.
[root@orcl ~]# oracleasm scandisks
Reloading disk partitions: done
Cleaning any stale ASM disks…
Scanning system for ASM disks…
Instantiating disk “DAT00”
Instantiating disk “DAT01”
Instantiating disk “DAT02”
[root@orcl ~]# oracleasm listdisks
DAT00
DAT01
DAT02
حال برای دسترسی به دادههای درون دیسکهای ASM لازم است یک Instance برای ASM و یک Instance برای پایگاهداده ایجاد شود. در صورتی که فایلهای تنظیمات زیر از سرور مبدأ موجود باشند و یا پیشتر پشتیبانی از آنها ایجاد شده باشد، راهاندازی این دو Instance راحتتر خواهد بود. در غیر این صورت لازم است فایلهای تنظیمات ایجاد شوند. این فایلها به شرح زیر میباشند.
۱٫ SPFile
۲٫ Password File
۳٫ SQL*Net Files (listener.ora, tnsnames.ora, sqlnet.ora)
در شرایطی که پایگاهداده در وضعیت سالم باشد میتوان با استفاده از دستورات زیر از spfile پشتیبانگیری کرد.
۱٫ RDBMS Instance
RMAN> create pfile=’/home/oracle/initorcl.ora’ from spfile ;
۲٫ ASM Instance
RMAN> create pfile=’/home/grid/init+ASM.ora’ from spfile ;
همچنین با استفاده از دستور cp سیستمعامل میتوان از فایلهای تنظیمات شبکه و رمزهای عبور پشتیبان تهیه کرد. پیش از آغاز Instance ASM لازم است Listener آغاز گردد. برای این منظور در صورت وجود پشتیبان فایلهای تنظیمات شبکه، آن فایلها به آدرس $ORACLE_HOME/network/admin در محل نصب نرمافزار GI منتقل و Listener با استفاده از دستور lsnrctl start آغاز میشود. در غیر این صورت یک Listener جدید ایجاد و آغاز میشود.
[grid@oraserv ~]$ lsnrctl start
LSNRCTL for Linux: Version 11.2.0.4.0 – Production on 01-AUG-2017 19:36:56
Copyright (c) 1991, 2013, Oracle. All rights reserved.
Starting /u01/app/grid/product/11.2.0/grid/bin/tnslsnr: please wait…
TNSLSNR for Linux: Version 11.2.0.4.0 – Production
System parameter file is /u01/app/grid/product/11.2.0/grid/network/admin/listener.ora
Log messages written to /u01/app/grid/diag/tnslsnr/oraserv/listener/alert/log.xml
Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC1521)))
Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=oraserv)(PORT=1521)))
Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC1521)))
STATUS of the LISTENER
————————
Alias LISTENER
Version TNSLSNR for Linux: Version 11.2.0.4.0 – Production
Start Date 01-AUG-2017 19:36:56
Uptime 0 days 0 hr. 0 min. 0 sec
Trace Level off
Security ON: Local OS Authentication
SNMP OFF
Listener Parameter File /u01/app/grid/product/11.2.0/grid/network/admin/listener.ora
Listener Log File /u01/app/grid/diag/tnslsnr/oraserv/listener/alert/log.xml
Listening Endpoints Summary…
(DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC1521)))
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=oraserv)(PORT=1521)))
The listener supports no services
The command completed successfully
سپس پشتیبان PFile و Password File به آدرس $ORACLE_HOME/dbs در محل نصب نرمافزار GI منتقل میشود. در صورتی که پشتیبانی از این دو فایل وجود نداشته باشد، لازم است این دو فایل ایجاد گردند. برای ایجاد فایل رمزهای عبور میتوان از ابزار orapwd که به همراه نرمافزار GI نصب شده است استفاده کرد.
برای ایجاد فایل PFile راهکارهای متنوعی وجود دارد. برای مثال میتوان با استفاده از دستور زیر یک فایل PFile در ASM Instance دیگر ایجاد و پس از انجام اصلاحات در مقادیر آن، به سرور جاری منتقل کرد.
در این مرحله و پیش از آغاز Instance ASM لازم است سرویس Oracle Restart تنظیم گردد. برای این منظور از دستور زیر استفاده میشود. دستور سرویس Oracle Restart را تنظیم و سپس وضعیت کلی سرویسهای نرمافزار GI را بررسی میکند. در ادامه سرویس Oracle Cluster Synchronization Service Daemon آغاز گردیده و صحت آن بررسی میشود.
[root@oraserv ~]# /u01/app/grid/product/11.2.0/grid/perl/bin/perl -I/u01/app/grid/product/11.2.0/grid/perl/lib -I/u01/app/grid/product/11.2.0/grid/crs/install /u01/app/grid/product/11.2.0/grid/crs/install/roothas.pl
Using configuration parameter file: /u01/app/grid/product/11.2.0/grid/crs/install/crsconfig_params
Creating trace directory
User ignored Prerequisites during installation
LOCAL ADD MODE
Creating OCR keys for user ‘grid’, privgrp ‘oinstall’..
Operation successful.
LOCAL ONLY MODE
Successfully accumulated necessary OCR keys.
Creating OCR keys for user ‘root’, privgrp ‘root’..
Operation successful.
CRS-4664: Node oraserv successfully pinned.
Adding Clusterware entries to upstart
oraserv 2017/08/01 20:03:29 /u01/app/grid/product/11.2.0/grid/cdata/oraserv/backup_20170801_200329.olr
Successfully configured Oracle Grid Infrastructure for a Standalone Server
[grid@oraserv ~]$ crsctl stat res -t
——————————————————————————–
NAME TARGET STATE SERVER STATE_DETAILS
——————————————————————————–
Local Resources
——————————————————————————–
ora.ons
OFFLINE OFFLINE oraserv
——————————————————————————–
Cluster Resources
——————————————————————————–
ora.cssd
۱ OFFLINE OFFLINE
ora.diskmon
۱ OFFLINE OFFLINE
ora.evmd
۱ ONLINE ONLINE oraserv
[grid@oraserv ~]$ crsctl start resource ora.cssd
CRS-2672: Attempting to start ‘ora.cssd’ on ‘oraserv’
CRS-2672: Attempting to start ‘ora.diskmon’ on ‘oraserv’
CRS-2676: Start of ‘ora.diskmon’ on ‘oraserv’ succeeded
CRS-2676: Start of ‘ora.cssd’ on ‘oraserv’ succeeded
[grid@oraserv ~]$ crsctl stat res -t
——————————————————————————–
NAME TARGET STATE SERVER STATE_DETAILS
——————————————————————————–
Local Resources
——————————————————————————–
ora.ons
OFFLINE OFFLINE oraserv
——————————————————————————–
Cluster Resources
——————————————————————————–
ora.cssd
۱ ONLINE ONLINE oraserv
ora.diskmon
۱ OFFLINE OFFLINE
ora.evmd
۱ ONLINE ONLINE oraserv
اکنون Instance ASM آغاز گردیده و سپس گروه دیسک DATA در وضعیت Mount قرار میگیرد.
[grid@oraserv dbs]$ sqlplus / as sysasm
SQL*Plus: Release 11.2.0.4.0 Production on Tue Aug 1 21:01:50 2017
Copyright (c) 1982, 2013, Oracle. All rights reserved.
Connected to an idle instance.
SQL> startup pfile=’init+ASM.ora’ ;
ASM instance started
Total System Global Area 1135747072 bytes
Fixed Size 2260728 bytes
Variable Size 1108320520 bytes
ASM Cache 25165824 bytes
ORA-15110: no diskgroups mounted
SQL> alter diskgroup data mount ;
Diskgroup altered.
با استفاده از دستور زیر مشخصات گروه دیسک نمایش داده میشود.
[grid@oraserv ~]$ asmcmd -p
ASMCMD [+] > lsdg
State Type Rebal Sector Block AU Total_MB Free_MB Req_mir_free_MB Usable_file_MB Offline_disks Voting_files Name
MOUNTED EXTERN N 512 4096 4194304 5112 3144 0 3144 0 N DATA/
در پایان این مرحله عملیات کاربری Grid به پایان میرسد. اکنون به تنظیمات کاربری Oracle پرداخته میشود. در ابتدا پشتیبان فایل Pfile و Password در مسیر /u02/app/oracle/product/11.2.0/dbhome_1/dbs قرار داده میشوند. در صورتی که پشتیبانی از این دو فایل وجود نداشته باشد، این فایلها به صورتی دستی ایجاد میشوند.
[oracle@oraserv ~]$ orapwd file=/u02/app/oracle/product/11.2.0/dbhome_1/dbs/orapworcl password=mypass
برای ایجاد فایل PFile میتوان از ایجاد و اصلاح فایل مربوطه در سرور دیگر و انتقال آن به سرور جاری استفاده کرد.
لازم است مسیر ایجاد فایلهای رویدادها به آدرس $ORACLE_BASE/admin/$ORACLE_SID/adump ایجاد گردد. همچنین دو متغیر db_recovery_file_dest و db_recovery_file_dest_size از PFile حذف میشوند. پس از اصلاح فایل PFile پایگاهداده آغاز میگردد.
[oracle@oraserv ~]$ sqlplus / as sysdba
SQL> startup pfile=’/home/oracle/initorcl.ora’ ;
ORACLE instance started.
Total System Global Area 1536602112 bytes
Fixed Size 2253504 bytes
Variable Size 1090522432 bytes
Database Buffers 436207616 bytes
Redo Buffers 7618560 bytes
Database mounted.
Database opened.
دیدگاه خود را ثبت کنید
تمایل دارید در گفتگوها شرکت کنید؟در گفتگو ها شرکت کنید.