Identity Column در اوراکل 12c

تا قبل از اوراکل نسخه 12c، برای مقدار دهی خودکار ستون کلید اصلی، معمولا از sequence استفاده می شد. در اوراکل 12c، این کار با کمک قابلیت Identity Column قابل انجام است البته اوراکل هم در پس زمینه این ویژگی، از sequence استفاده می کند و استفاده از ویژگی Identity Column، منجر به ایجاد sequence خواهد شد.

(بیشتر…)

Privilege Analysis در اوراکل 12c

اهدای حداقلی مجوزها به کاربران، یکی از دغدغه های مهم dba برای ایجاد محیطی امن می باشد در صورتی که تعداد کاربران و به تبع آن، تنوع درخواست ها زیاد باشد، اهدای حداقلی مجوزها، امر بسیار پیچیده ای خواهد بود.

از اوراکل 12c، ویژگی جدیدی به نام privilege analysis ارائه شد که می توان از طریق آن، مجوزهای مورد استفاده کاربران را در یک بازه زمانی مشخص، مانیتور نمود و در نهایت، مجوزهای اضافی را(در صورت وجود!)، از کاربران سلب کرد.

(بیشتر…)

بروزرسانی Out of Place – ویژگی جدید MATERIALIZED VIEW در اوراکل 12c

تا قبل از اوراکل نسخه 12c، معمولا بروزرسانی به طور مستقیم در جدول مربوط به MV اتفاق می افتاد(ابتدا اطلاعات حذف شده و سپس در همان session، اطلاعات جدید درج می شوند و نهایتا commit رخ خواهد داد) به بیانی دیگر، در این نسخه ها،  بروزرسانی تنها به صورت in place (در جا) اتفاق می افتد که مرحله delete آن ممکن است متناسب با حجم جدول، زمان زیادی را صرف کند.

در نسخه 12c این امکان بوجود امد تا بدون هرگونه تغییر جدول اصلی مربوط به MATERIALIZED VIEW، بروزرسانی انجام شود که این شکل از بروزرسانی، Out of Place نام دارد.

(بیشتر…)

ستون نامریی(Invisible Column) در اوراکل 12c

ایجاد ستون نامریی از اوراکل 12c امکان پذیر شد این نوع از ستون، به صورت پیش فرض در لیست ستونهای جدول، قابل مشاهده نیستند و برای دسترسی به اطلاعات آن، باید به صراحت از نام این ستون در دستور استفاده کرد.

(بیشتر…)

Oracle Lock Management

زمانی که در یک بانک اطلاعاتی کاربران متعددی مشغول خواندن و نوشتن هستند، ممکن است دو کاربر به صورت همزمان قصد اصلاح یک شی را داشته باشند در این شرایط، درصورت عدم کنترل دسترسی، ممکن است داده ای از بین رفته و یا داده های ان شی ناسازگار شوند.

برای مدیریت و کنترل دسترسی همزمان، اوراکل از مکانیزمی به نام lock استفاده می کند که در این متن، قصد داریم در مورد آن مطالبی را ارائه کنیم.

(بیشتر…)

غیرفعال سازی logging بهنگام impdp

برای بهبود سرعت برگرداندن اطلاعات dumpfile، می توان از پارامتر logging به هنگام اجرای دستور impdp استفاده کرد و با تنظیم این پارامتر(که از اوراکل 12c ارائه شد) به مقدار DISABLE_ARCHIVE_LOGGING:Y، مانع از ایجاد آرشیولاگ در زمان impdp شد:

 impdp directory=usef dumpfile=c.dmp schemas=usef  TRANSFORM=DISABLE_ARCHIVE_LOGGING:Y

Import: Release 12.1.0.2.0 – Production on Tue Jul 5 15:02:28 2016

. . imported “USEF”.”COM_LOC”                      533.490 MB    226333 rows

در صورت استفاده از data guard در چنین محیطی، اطلاعات import شده به سمت data guard منتقل نخواهند شد و با رجوع به این جدول در محیط data guard، با خطای زیر مواجه خواهیم شد:

select count(*) from usef.com_loc

ORA-01578: ORACLE data block corrupted (file # 6, block # 555)

ORA-01110: data file 6: ‘/u02/oradata/usef2/datafile/users.258.916411623’

ORA-26040: Data block was loaded using the NOLOGGING option

البته اگر دیتابیس در حالت force logging قرار داشته باشد، امکان استفاده از چنین ویژگی ای وجود ندارد(معمولا قبل از راه اندازی data guard، اوراکل تاکید دارد تا این گزینه فعال شود).

 این ویژگی در سطح ایندکس هم قابل استفاده می باشد:

TRANSFORM=DISABLE_ARCHIVE_LOGGING:Y:INDEX

ویژگی های جدید اوراکل در نسخه 12c

بانک اطلاعاتی اوراکل با هر نسخه جدیدی که ارائه می کند معمولا بسیاری از باگهای ایجاد شده در نسخه های قبلی را برطرف کرده و علاوه بر آن، ویژگی های جدیدی را هم عرضه می کند.

به همین منوال، اوراکل در نسخه 12c، بیش از 500 ویژگی جدید را ارائه کرده است که در این مقاله قصد داریم بعضی از این ویژگی ها را مورد بررسی قرار دهیم.

(بیشتر…)

بازیابی دیتافایل بانک اصلی از استندبای

در صورت از دست دادن سیستم عاملی یک دیتافایل در محیط بانک اصلی، با دیتافایل موجود در سرور دیتاگارد، این فقدان قابل جبران است(البته بشرط سازگاری).

برای انجام این کار در نسخه های ماقبل 12c، نیاز بود تا dba به صورت دستی و در سطح سیستم عامل این دیتافایل را از محیط دیتاگارد به بانک اصلی انتقال دهد.

این کار در نسخه 12c، تنها با استفاده از یک دستور در محیط RMAN، قابل انجام می باشد:

(بیشتر…)