כלי לבדיקת מצב בריאות בסיס הנתונים: ORAchk.
לפני כמה שנים, אורקל הוציאו כלי בשם RACcheck. מכוון שקלסטרים באופן כללי הם דברים שמורכבים מהרבה מאוד חלקים, אורקל סיפקו כלי שעוזר לנו לבדוק את כל החלקים המהותיים. את הכלי הזה ניתן היה להריץ בשרתי ה-RAC והוא היה מייצר דוח שמכיל המון אינפורמציה לגבי הסביבה וההגדרות שבה. הדוח כלל בין היתר בדיקה של מערכת ההפעלה והפרמטרים שלה, הגדרות של השרתים ובדיקה של הרכיבים השונים של ה-RAC. לכל אחד מהקטגוריות קיבלנו השוואה בין מה שקיים בפועל לרשימה (ארוכה) של Best Practices.
הכלי הזה היה מאוד פופולארי ונתן נקודת פתיחה מעולה לבדיקה של שרתי RAC. החברים באורקל ראו כי טוב והחליטו להרחיב את הכלי לשימוש לכלל סוגי השרתים. השם של הכלי הוחלף ל-ORAchk ועל הכלי הזה נדבר היום.
לצערי לא הרבה אנשים מכירים את הכלי אז זו הזדמנות טובה לעשות היכרות עם הכלי בגרסה 12.1.0.2.3 – גרסה חדשה שיצאה לפני חודש וחצי בערך.
מה יש ב-ORAchk
הכלי ORAchk מגיע עם סט מאוד גדול של בדיקות.
בין הנושאים הנבדקים:
- מערכת ההפעלה עצמה ופרמטרים של ה-Kernel
- בסיסי הנתונים: Single Instance, קלסטרים – Grid Infrastructure ו-RAC או MMA – כלומר Data Guard וכו').
- בדיקה של הקונפיגורציה של ה-Golden Gate
- בדיקה של Oracle Application (E-Business Suite)
- בדיקה של ה-Enterprise Manager Cloud Control (רק לגרסה 12c) – הן ב-repository והן ב-agents.
זה אומר שעם הרצת הכלי אנחנו מקבלים תמונה דיי רחבה של המצב של המערכת שלנו ובמידה ויש לנו בעיות, זו נקודה מצוינת להתחיל בחקירה. עוד תכונה מעניינת של הכלי היא היכולת שלו לבדוק את המוכנות שלנו לקראת שדרוג ולתת לנו דוח מדוייק על מה שחסר לנו בסביבה.
באיזה גרסאות ה-ORAchk תומך?
מכוון שהכלי נכתב ב-BASH, מערכות ההפעלה שהכלי תומך בהן באופן טבעי הן מערכות Linux/Unix שונות:
- Linux x86-64 (Oracle Enterprise Linux/RedHat 5, 6, 7 and SuSE 9, 10, 11, 12)
- Oracle Solaris SPARC (Solaris 10 and 11)
- Oracle Solaris x86-64 (Solaris 10 and 11)
- AIX
- HPUX
כדי להשתמש בכלי בסביבת של Windows אז צריך לעשות מעקף. מכוון שהכלי בנוי על בסיס של סקריפטי BASH, אנחנו יכולים לעשות את זה, אם נשתמש ב-Cygwin (ממשק דמוי Unix שרץ על Windows – עליו אני אכתוב בהזדמנות אחרת).
מבחינת בסיס הנתונים, הכלי תומך בגרסאות 10gR2, 11gR1, 11gR2 ו-12cR1 שזה מכסה פחות או יותר את כל הגרסאות הנוכחיות.
איך מתקינים את הכלי
כלי לעבוד עם הכלי יש להוריד אותו מה-MOS: ORAchk – Health Checks for the Oracle Stack (Doc ID 1268927.2).
הכלי מגיע בתור קובץ Zip אותו יש לפתוח בשרת:
[oracle@lnx-oracle66-db11g ~]$ mkdir orachk [oracle@lnx-oracle66-db11g ~]$ mv orachk.zip orachk [oracle@lnx-oracle66-db11g ~]$ cd orachk/ [oracle@lnx-oracle66-db11g orachk]$ unzip orachk.zip
כדי להפעיל את הכלי, פשוט נריץ את הפקודה orachk. אם עברו יותר מ-120 ימים, נאשר שהגרסה שלנו קצת ישנה (מכוון שזו הגרסה האחרונה שיצאה בנתיים) ונבחר על איזה בסיס נתונים נרצה להריץ את הבדיקות.
[code] [oracle@lnx-oracle66-db11g orachk]$ ./orachk This version of orachk was released on 09-Oct-2014 and its older than 120 days. It is highly recommended that you download the latest version of orachk from my oracle support to ensure the highest level of accuracy of the data contained within the report. Do you want to continue running this version? [y/n][y] List of running databases 1. orcldg 2. None of above Select databases from list for checking best practices. For multiple databases, select 1 for All or comma separated number like 1,2 etc [1-2][1].1 . . Checking Status of Oracle Software Stack - Clusterware, ASM, RDBMS . . . . . . . . . . . . . . . ------------------------------------------------------------------------------------------------------- Oracle Stack Status ------------------------------------------------------------------------------------------------------- Host Name CRS Installed ASM HOME RDBMS Installed CRS UP ASM UP RDBMS UP DB Instance Name ------------------------------------------------------------------------------------------------------- lnx-oracle66-db11g No No Yes No No Yes orcldg -------------------------------------------------------------------------------------------------------
הכלי יבצע בדיקות שונות ויציג לנו הודעות ביניים לגבי מצב ההרצה ותוצאות הבדיקות. כאן לדוגמה אנחנו רואים את הפלט שהוא הוציא לגבי בסיס נתונים עם Data Guard שרץ במכונה וירטואלית בלפטופ שלי. זהו רק פלט חלקי – אני ממליץ להריץ את זה פעם אחת בעצמכם, הוא צבעוני והכל.. 🙂 :
============================================================= Node name - lnx-oracle66-db11g ============================================================= Collecting - Database Parameters for orcldg database Collecting - Database Undocumented Parameters for orcldg database Collecting - RDBMS Feature Usage for orcldg database Collecting - CPU Information Collecting - DiskMount Information Collecting - Kernel parameters Collecting - Maximum number of semaphore sets on system Collecting - Maximum number of semaphores on system Collecting - Maximum number of semaphores per semaphore set Collecting - Memory Information Collecting - OS Packages Collecting - Operating system release information and kernel version Collecting - Patches for RDBMS Home Collecting - number of semaphore operations per semop system call Data collections completed. Checking best practices on lnx-oracle66-db11g. -------------------------------------------------------------------------------------- INFO => Important Automatic Storage Management (ASM) Notes and Technical White Papers INFO => At some times checkpoints are not being completed for orcldg WARNING => OSWatcher is not running as is recommended. WARNING => Database parameter DB_BLOCK_CHECKING on PRIMARY is NOT set to the recommended value. for orcldg INFO => Operational Best Practices INFO => Database Consolidation Best Practices INFO => Computer failure prevention best practices INFO => Data corruption prevention best practices INFO => Logical corruption prevention best practices INFO => Database/Cluster/Site failure prevention best practices INFO => Client failover operational best practices WARNING => Redo log file size should be sized to switch every 20 minutes during peak redo generation for orcldg WARNING => Oracle clusterware is not being used WARNING => RAC Application Cluster is not being used for database high availability on orcldg instance WARNING => "DISK_ASYNCH_IO is NOT set to recommended value for orcldg FAIL => Flashback on PRIMARY is not configured for orcldg INFO => Database failure prevention best practices WARNING => fast_start_mttr_target has NOT been changed from default on orcldg instance FAIL => Primary database is NOT protected with Data Guard (standby database) for real-time data protection and availability for orcldg FAIL => Active Data Guard is not configured for orcldg WARNING => Redo log write time is more than 500 milliseconds for orcldg INFO => Parallel Execution Health-Checks and Diagnostics Reports for orcldg INFO => Oracle recovery manager(rman) best practices INFO => Consider increasing the COREDUMPSIZE size INFO => Consider investigating changes to the schema objects such as DDLs or new object creation for orcldg INFO => Consider investigating the frequency of SGA resize operations and take corrective action for orcldg
זמן ההרצה תלוי במורכבות הסביבה. בסביבות פשוטות אנחנו מדברים על תהליך שלוקח קצת פחות מ-5 דקות אבל בסביבה מאוד מורכבת ההרצה לקחה בערך רבע שעה.
ניתוח התוצאות
בסיום התהליך, הכלי מייצר לנו כמה כלי עבודה שנוכל לבחון את התוצאות:
Detailed report (html) - /home/oracle/orachk/orachk_lnx-oracle66-db11g_orcldg_021915_211736/orachk_lnx-oracle66-db11g_orcldg_021915_211736.html UPLOAD(if required) - /home/oracle/orachk/orachk_lnx-oracle66-db11g_orcldg_021915_211736.zip
הכלי הראשון והמשמעותי יותר הוא דף html ובו סיכום של כל הבדיקות. הדף הזה מכיל בתוכו "ציון" כללי של מצב המערכת ואת הפירוט המלא של כל הבדיקות שביצענו והתוצאה שלהם. לכל בדיקה אנחנו מקבלים גם תיאור קצר של הבדיקה ולינק לאתר של אורקל (בין אם מדובר בתיעוד, ב-MOS או במשהו אחר) כדי להבין אין לטפל בבעיה וללמוד יותר על משמעות התוצאה.
דוגמה לתוצאה של בדיקה שנכשלה (כולל הסבר על המשמעות והפניה לתיעוד):
הדבר השני שאנחנו מקבלים זה קובץ zip אותו נוכל להוריד לתחנה שלנו ובו סיכום של כל האינפורמציה, הבדיקות, הלוגים ואפילו קבצים שנוכל להעלות לתמיכה במידה ונצרך סיוע נוסף.
סיכום
כמו שכבר כתבתי בהתחלה, מדובר באחד הכלים המעניינים ביותר של אורקל ש-DBA-ים מפספסים. זה כלי משמעותי שמאפשר לנו קפיצה קדימה בכל מה שקשור לאבחון בעיות בבסיסי נתונים באופן כללי ובקלסטרים בפרט. אני ממליץ להוריד את הכלי מהאתר של אורקל ולשחק איתו קצת…
השאירו תגובה
Want to join the discussion?Feel free to contribute!