Automatic Big table caching

همانطور که می دانید، با انتقال بلاک یک جدول از دیسک به حافظه(بافرکش) و دسترسی کاربر به اطلاعات موجود در آن، این بلاک برای مدت زمانی در حافظه باقی خواهد ماند(البته در صورت امکان) تا در صورت نیاز به رجوع مجدد، لزومی به انجام physical read دوباره برای دستیابی به این اطلاعات نباشد. مکرر در مستندات اوراکلی خوانده ایم که مدیریت این caching در سطح بلاک(نه در سطح object) و با کمک الگوریتم (LRU(least recently used انجام می شود.

(بیشتر…)

INHERIT PRIVILEGE

قبلا در مورد invoker right و definer right مطلبی را ارائه کردیم(ادرس مطلب) و نشان دادیم که استفاده از عبارت AUTHID CURRENT_USER چه مزیت امنیتی ای را به همراه دارد اما استفاده از invoker right در زمانی که مجوزهای invoker از definer بیشتر باشد، نقایصی را هم به لحاظ امنیتی در برخواهد داشت که در ادامه با ارائه مثالی، به این نقصان خواهیم پرداخت.

(بیشتر…)

مجوز alter user در اوراکل 12c

با اهدای مجوز alter user به یک کاربر در اوراکل 11g، ان کاربر می تواند تغییراتی چون تغییر پسورد را برای کاربر sys اعمال کند. مثال زیر را ببینید:

SQL*Plus: Release 11.2.0.3.0 Production on Tue Jun 12 12:57:22 2018

SQL> create user usef identified by a;

User created.

SQL> grant connect,resource to usef;

Grant succeeded.

SQL> grant alter user to usef;

Grant succeeded.

SQL> conn usef/a

Connected.

SQL> alter user sys identified by a;

User altered.

در اوراکل 12c، این امکان برای کاربر usef از بین خواهد رفت:

SQL*Plus: Release 12.2.0.1.0 Production on Tue Jun 12 13:29:04 2018

SQL> alter user vahid identified by a;

User altered.

SQL>  alter user sys  identified by a;

ORA-01031: insufficient privileges

پارامتر remap_directory در دستور impdp

قبل از برگرداندن دامپ به صورت کامل(full=y)، باید مسیر دیتافایلها را ایجاد نمود در غیر این صورت، عملیات بازیابی در هنگام ایجاد tablespace با خطا متوقف خواهد شد:

ORA-39083: Object type TABLESPACE:”TBS2″ failed to create with error:
ORA-01119: error in creating database file ‘/db/oradata/datafile/tbs02.dbf’

(بیشتر…)

توقف اجرای دستور یک کاربر(CANCEL SQL)

برای توقف اجرای دستور یک کاربر در اوراکل 11g، می توان از دستور kill session استفاده کرد که سبب خروج کاربر از بانک هم خواهد شد. از اوراکل 12cR2 این قابلیت بوجود امد تا بدون اخراج کاربر از بانک، صرفا دستور در حال اجرای ان کاربر را متوقف نمود.

(بیشتر…)

FLEX ASM

با نصب کلاستر به صورت standard ASM(روش رایج در نسخه 11g)، هر نود شامل یک ASM instance و یک db instance خواهد بود که با افتادن ASM instance در یک نود، db instance موجود در ان نود هم به خطا برخواهد خورد و امکان استفاده از ASM instanceهای دیگر برای این db instance ممکن نخواهد بود به عبارت دیگر، هر db instance تنها به ASM instance موجود در سرورش متکی می باشد. در اوراکل 12c ویژگی ای ارائه شد که می تواند این نقصان را برطرف کند، این ویژگی FLEX ASM نام دارد و می توان به کمک ان، همه نودهای موجود در فضای کلاستر را تنها به اعتبار یک ASM instance سرپا نگه داشت البته این ویژگی مزیتهای دیگری هم به همراه دارد که به تعدادی از انها در این نوشتار خواهیم پرداخت.

(بیشتر…)

ویژگی های جدید SecureFile در 12c

1parallel DML: در نسخه 11g صرفا برای LOB segmentای که در جدول پارتیشن قرار دارد، امکان انجام عملیات parallel DML وجود دارد. در نسخه 12c، این امکان برای جداول پارتیشن بندی نشده هم به وجود آمد:

alter session force parallel dml;

insert into usef.sec_lob select * from usef.aks;

2پیش فرض شدن SecureFile برای ذخیره سازی LOB: در اوراکل 12c، مقدار پیش فرض پارامتر db_securefile برابر PREFERRED می باشد که سبب خواهد شد تا هر Lob segmentای که ایجاد می شود، به صورت SecureFile باشد.

3.زمانی که جدولی با استفاده از data pump به اوراکل 12c منتقل میشود ، lobsegment آن را می توان به صورت SecureFile ایجاد نمود:

TRANSFORM=LOB_STORAGE:SECUREFILE|BASICFILE|DEFAULT|NO_CHANGE

با تنظیم این پارامتر به SecureFile می توان به این هدف رسید:

impdp hr/hr DIRECTORY=dpdump_dir DUMPFILE=hr.dmp TRANSFORM=LOB_STORAGE:SECUREFILE