پارامتر USE_SID_AS_SERVICE_listener

برای اتصال از راه دور(از طریق tns) به یک pdb، نیاز است تا در فایل tnsnames.ora، به جای استفاده از sid، از service_name استفاده شود. حال اگر برنامه ای(app) در محیط کاری موجود باشد که صرفا از sid پشتیبانی می کند، طبیعتا امکان اتصال به pdb از طریق این برنامه امکان پذیر نخواهد بود.

برای حل این مشکل، می توان پارامتر USE_SID_AS_SERVICE_listener را به فایل listener.ora اضافه کرد تا sid تعریف شده در برنامه ها به صورت service_name لحاظ شوند:

vi $ORACLE_HOME/network/admin/listener.ora
USE_SID_AS_SERVICE_listener=on

برای اعمال این تغییر، نیاز است تا سرویس لیسنر reload شود:

lsnrctl reload

قابلیت PLUGGABLE DATABASE در اوراکل 12cR1

فرض کنید نقش مدیریت مجموعه “نگهداشت دیتابیس” را در سازمانی برعهده دارید که در آن سازمان، دیتابیسهای متعددی با حجم بارکاری بسیار پایین وجود دارند با توجه به بارکاری کم این دیتابیسها، اگر به ازای هر دیتابیس از سرور و یا ماشین مجزایی استفاده کنید، با چالشهای احتمالی زیادی روبه رو خواهید شد چالشهایی از قبیل:

1.ممکن است نیاز شود تعداد dbaها را افزایش دهید.

2.با توجه به حجم پایین بارکاری دیتابیسها، احتمالا از همه منابع سرور استفاده نخواهد شد و در صورت عدم استفاده از virtualization، ممکن است منابع زیادی به هدر برود.

3.در صورتی که سیاست سازمان به راه اندازی دیتاگارد باشد، باید برای هرکدام از دیتابیسها، دیتاگارد جداگانه ای راه اندازی شود که در این صورت، نگهداری سرورها و دیتاگاردها نیاز به هزینه بالایی خواهد داشت.

4.برای گرفتن بکاپ روزانه از دیتابیسها، باید مستقلا از همه آنها بکاپ گرفت که این کار برای تعداد بالای دیتابیس می تواند پرهزینه باشد.

با این فرض که نسخه اوراکل استفاده شده در این سازمان برابر با 11g است، دو راهکار جایگزین دیگر هم برای نگهداری این دیتابیسها وجود دارد که در ادامه چالشهای هر کدام از آنها را مورد بررسی قرار خواهیم داد.

راهکار اول: تجمیع همه دیتابیسها در قالب یک دیتابیس و ایجاد اسکیمای مجزا برای هر دیتابیس. تعدادی از معایب و چالشهای این راهکار را در ادامه می بینید:

1.با اهدای مجوز و یا نقش سطح بالا یه یک کاربر، آن کاربر می تواند دیتای همه اسکیماها و یا به عبارتی دیگر همه سامانه ها را ببینید و یا تغییر دهد.

2.در صورتی که کاربری منابع زیادی را از سیستم بگیرد، روی سامانه های دیگر هم اثر منفی خواهد گذاشت.

3.این ساختار بسیار مستعد اختلاط می باشد و اگر روزی تصمیم به جدا کردن سامانه ای را گرفته اید، روشهای زمانبری را برای جدا کردن آن سامان در پیش خواهید داشت.

راهکار دوم: استفاده از چند instance و قرار دادن چند دیتابیس به صورت مجزا از هم در یک سرور. چالشهای این راهکار بسیار بدیهی است و مدیریت دیتابیسها در این محیط می تواند برای dba ایجاد چالش کند.

حال در اوراکل 12c، ویژگی جدیدی ارائه شد که نه تنها مشکلات مذکور را مرتفع می کند بلکه قابلیتهای جدیدی را هم به همراه دارد این ویژگی (pluggable database(PDB نام دارد.

(بیشتر…)