در اوراکل ابزاری بنام DRCP وجود دارد این ابزار مدیریت ارتباطات کاربران را عهده دار است، DRCP همانند واسط JNDI در درون بانک اطلاعاتی عمل میکند و باعث میشود تا منابع سختافزاری کامپیوتر سرویس دهنده آزادتر باشد.
در اوراکل ابزاری بنام DRCP وجود دارد این ابزار مدیریت ارتباطات کاربران را عهده دار است، DRCP همانند واسط JNDI در درون بانک اطلاعاتی عمل میکند و باعث میشود تا منابع سختافزاری کامپیوتر سرویس دهنده آزادتر باشد.
بانکاطلاعاتی اوراکل دو معماری در سمت سرویس دهنده برای پردازش درخواستهای کاربران ارائه میدهد:
ALTER SYSTEM SHARED_SERVER=80;
در این حالت 80 فرایند به طور همزمان اقدام به پاسخگویی نیاز کاربران می کنند. حال اگر بخواهیم معماری را به حالت Dedicated Server تغیر دهیم میتوانیم از دستور ذیل استفاده نماییم.
ALTER SYSTEM SHARED_SERVER=0;
هرگاه کاربری به بانک اطلاعاتی متصل گردد، بانک اطلاعاتی برای کاربر مذکور یک جلسه یا همان SESSION ایجاد میکند، با استفاده از دستور زیر میتوان کاربرانی که با نام کاربری SYSTEM به اوراکل متصل شدهاند را مشاهده کرد.
SELECT SERIAL# , SID , USERNAME , MACHINE , STATUS , PROGRAM FROM V$SESSION WHERE USERNAME =’SYSTEM’;
حال اگر بخواهیم SESSION کاربری را حذف نماییم و باعث قطع ارتباط کاربر شویم میتوانیم از دستور زیر استفاده کنیم.
ALTER SYSTEM KILL SESSION ’75,20’;
دقت داشته باشید که عدد 75 به SID اشاره کرده و عدد 20، SERIAL# است. برای یافتن تعداد SESSION های فعال میتوان از دستور زیر استفاده کرد.
SELECT SESSIONS_CURRENT FROM V$LICENSE;
در محیط CMD وارد نرمافزار SQLPLUS میشیم.
sqlplus
قویترین کاربری که در سطح بانکاطلاعاتی اوراکل داریم SYS است.
برای تعویض پسورد توسط خود یوزر در بانکاطلاعاتی:
set password
یا در ورژنهای جدید اوراکل:
password
ما با ۲ نوع یوزر موقع نصب اوراکل آشنا شدیم، به تصویر زیر دقت کنید:
تصویر فوق نشان میدهد که مالک RDBMS کاربر Oracle است (در قسمت بالا معرفی نمودیم)
در سلسله مراتب قدرت کاربر ، کاربر sys و سپس system قرار دارند و پس از آنها کاربرانی که تعریف مینماییم.
جهت نصب بانکاطلاعاتی اوراکل گامهای زیر را دنبال کنید:
بعد از دانلود فایلها از سایت شرکت اوراکل ابتدا آنها را از حالت فشرده خارج کنید. (همچنین میتوانید از پیسیدنلود اقدام به دانلود فایلها کنید.)
پس از ورود به پوشه برنامه، بر روی فایل setup.exe راست کلیک کنید و با ادمین آن را اجرا کنید. با اجرای این فایل پنجرهای مطابق با تصویر زیر نمایش داده میشود. کمی صبر کنید تا وارد مرحله بعدی نصب شوید.
س: آیا ساختار کش ساختاری منسجم است؟
ج: بله - ولی به طور دستی قابلیت ویرایش توسط DBA را ندارد مگر با برنامهنویسی از طریق SQLJ
نکته: با SQLJ حتی میتوان روش رمزنگاری اوراکل را هم عوض کرد.
س: وقتی تعداد دادههای جدول در دیتابیس زیاد باشد آیا موقع کوئری گرفتن تمام این جدول به یکباره کش میشود؟
ج: اگر تعداد دادههای جدول شما خیلی زیاد باشد که امکان کش بصورت یکباره وجود نداشته باشد اوراکل جدول را تکه تکه کش میکند. و در این صورت سیستم کش اوراکل از بیس رفته است. به طور مثال اگه حدول شما بسیار بزرگ باشد و رم کافی نداشته باشید اوراکل تکه تکه جدول رو درون فضای SGA میآورد و روی PGA پردازش را انجام میدهد و اگر به داده مورد نظر خود نرسد تکه فعلی را از فضای SGA بیرونن میبرد و تکه بعدی را وارد فضای SGA میکند تا پردازش آن صورت گیرد.
س: زمانی که اوراکل چند جدول را کش کرده است و برای کش کردن جدول جدید دیگر فضای رمی نداریم چه اتفاقی میافتد؟
ج: اوراکل جدولی را که کمتر بهش ارجاع شده است را از کش بیرون میبرد و جدول جدید را کش میکند.
س: اگر ما ۱۰ میلیون رکورد داشته باشیم و بخوایم روی این ۱۰ میلیون رکورد کوئری بزنیم اوراکل تا چه مقدار توانایی انجام سریع این کوئری رو داره؟
ج: اگر شما ۱۰ میلیون رکورد داشته باشید و بخواین روی این ۱۰ میلیون رکورد کوئری بزنید و RAM کافی نداشته باشیم نه تنها اوراکل خوب عمل نمیکنه بلکه ضعیف هم عمل نمیکنه (این مطلب در مورد تمام دیتابیسها صادقه، چون شما باید محفظه کشات حداقل اندازه result هات باشه)
به خاطر همین موضوع ما از SI به محیط RAC سوییچ میکنیم چون هرچه قدر هم سرور ما قوی باشه جوابگو SGA نیست چون وقتی دیتای ما که تو هارده نزدیک 20exabyte باشه شما هیچ رمی رو نمیتونید روی یک سرور بذارید که فضای SGA بتونه این حجم اطلاعات رو بالا بیاره و کش کنه(البته ۲۰ اگزابایت ما وقتی میاد رو RAM میشه نزدیک ۵ اگزابایت ولی باز ما همچین رمی رو نمیتونیم برای یک سرور در حالت SI پیدا کنیم) برای همین ما ورود پیدا میکنیم به محیط RAC که در این محیط ما دیگر یک فضای SGA نداریم و مجموعهای از کلاسترها رو داریم که مثلاً هر کلاستر ۶۴ گیگ RAM داره(حالا وقتی ما صحبت از ۲۰ اگزابایت میکنیم حتماً نیاز به ۱۰۰۰ کلاستر ۶۴ گیگ RAM داریم که بتونیم از اون کش استفاده کنیم)
س: فضای SGA و PGA چقدر است؟
ج: این فضا موقع نصب توسط DBA از درصدی از مقدار رم شما مشخص میشود. همچنین بعد از نصب در صورت نیاز به تغییر قابل تغییر است.
همانطور که پیشتر به آن اشاره شد ساختار منطقی دسترسی کاربران را به ساختار فیزیکی ممکن می سازد. در حقیقت ساختار منطقی Data Base از دو واحد اساسی تشکیل شده است:
پردازشات خود بانک اطلاعاتی و Cashe کردن داده ها در حافظه SGA انجام می پذیرد، این حافظه بین تمام کاربران بانک اطلاعاتی مشترک میباشد.
نکته: اوراکل تنها یکبار اطلاعات رو از DataFile میخواند و در فضای SGA کش میکند.
در حقیقت owner همان schema است، schema هم همان user است، یوزر وقتی مالک چیزی است به آن schema یا owner گفته میشود.
نکته: در sqlserver یوزر و schema از همدیگه جدان و ما schema جدا بغیر از یوزر هم داریم که به یوزر کاری نداره. در حقیقت دیتابیس یه نوع schema است.
هر بانک اطلاعاتی شامل دو ساختار فیزیکی و منطقی است. ساختار فیزیکی همان فایل هایی هستند که بر روی هارد دیسک ذخیره میشوند (DataBase)، ساختار منطقی نیز دسترسی کاربران را به ساختار فیزیکی مقدور می سازد (DataBase Instance).
در حقیقت اطلاعات در قسمت Physical ذخیره میشه ولی تا لایه Logical بالا نباشه شما از لایه Phusical نمیتونید استفاده کنید. واکشی و ریختن اطلاعات از لایه یا بر لایه Phusical نیازمند بالا بودن بایه Logical است.
اگه بخوایم خیلی ساده بیان کنیم لایه Loical روی CPU و RAM شماست و لایه Physical روی هارد دیسک شماست.
برای اینکه بخوایم به هارد دسترسی داشته باشیم حتماً باید از CPU, RAM استفاده کنیم تا بتونیم یه پردازشی رو استارت کنیم.
نکته:در زمانهایی اگر بیان کردیم instance بالاست یا پایینه منظورمون لایه Logical است.
همچنین در نکاهی کلی اگر instance پایین باشه شما نمیتونید با دیتابیس در ارتباط باشید حتی اگه لایه Physical وجود داشته باشه.
به اطلاعات زیر دقت کنید:
نام | فامیل | شهر |
مهدی | غفاری | تهران |
احسان | جلالی | تهران |
فرزاد | کارخانی | تهران |
تعریف داده(Data): به موجودیت مهدی یا جلالی یا تهران داده میگویند.
تعریف فیلد(Field): به موجودیتی که درون خودش داده رو ذخیره میکنه فیلد میگویند. مثل: نام، فامیل، شهر
تعریف رکورد(Record): به مجموعهای از دادهها که در کنار هم قرار بگیرن و یک موجودیت رو تفسیر کنن رکورد میگویند. مثل: مهدی غفاری تهران که مهدی غفاری رو تفسیر میکنه
تعریف جدول(Table): به مجموعه فیلدها جدول میگویند.
از ویکیپدیا: در عصر کلاسیک، وخشور یا وخشگر یا هاتف یا اوراکل (به انگلیسی: Oracle) واسطهای بود که گمان میرفت بتواند اندرزها و مشاورههای بخردانه بدهد یا پیشگویی و پیشبینی و غیبگویی کند یا ملهَم از وقایع آینده باشد و به نوعی مورد عنایت خدایان قرار گرفته باشد.
اولین چیزی که باید بدونیم اینه که بانکاطلاعاتی اوراکل (دیتابیس اوراکل) محصول شرکتی است به نام شرکت اوراکل و این شرکت ایران رو تحریم کرده و ما از داخل ایران حتی نمیتونیم محصولات اوراکل رو دانلود کنیم. همچنین اوراکل یکی از گرونترین بانکهای اطلاعاتی جهانه.
البته این گرونی بابت خود محصول اوارکل نیست و تو فاز توسعه (Development) محصول مجانیه.
ولی وقتی وارد فاز (Production) میشید باید برای خرید لایسنس اقدام کنید، البته این لایسنس فقط برای پشتیبانی محصوله.
نکته: بانکاطلاعاتی پیچیدهای مثل اوراکل حتماً احتیاج به پشتیبانی از سمت خود شرکت اوراکل رو داره.
شرکت اوراکل در دهه ۷۰ میلادی توسط شخصی بنام لارنس (لری) الیسون تأسیس شد. اولین مشتری شرکت اوراکل CIA بوده و امروزه اوراکل یکی از بزرگترین و قدرتمندترین شرکتهای حوزه It محسوب میشه، این در صورتیه که شرکت اوراکل PeopleSoft رو خریده Sun Microsystems رو خریده چون Sun رو خریده پس هم صاحب Java و هم Mysql شده همچنین Weblogic رو خریده و به همین شدت داره توسعه پیدا میکنه تا جایی که امروزه شرکت اوراکل خطوط هوایی داره و جزوی از سهامداران شرکت تویوتا است.