اوراکل 12cR2- مروری بر دو بهبود ساده در دیتاپامپ

اوراکل 12c قابلیتهای را در زمینه Data Pump ارائه کرد که قبلا بعضی از آنها را مورد بررسی قرار داده ایم. در این متن به دو بهبود ساده اوراکل 12cR2 در این زمینه خواهیم پرداخت.

(بیشتر…)

ویژگی Partial Indexing برای جداول پارتیشن شده

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

(بیشتر…)

تاثیر عملیات NOLOGGING در دیتاگارد(اوراکل 11g و 12c و 18c)

یکی از مراحل پیکربندی دیتاگارد، قراردادن دیتابیس در حالت force logging می باشد این کار سبب خواهد شد تا کاربران امکان اجرای عملیات را به صورت Nologging نداشته باشند و در نتیجه، همه اطلاعاتی که در دیتابیس اصلی درج می شود، به دیتاگارد هم منتقل خواهد شد.

با در نظر داشتن این مسئله، اگر دیتابیس اصلی در حالت force logging قرار نگیرد، تکلیف عملیات Nologging در دیتاگارد چه خواهد شد و برای رفع بلاکهای خراب یا اصطلاحا nonlogged چه عملیاتی را باید در دیتاگارد انجام داد؟

پاسخ به این سوال، در نسخه های مختلف اوراکل، متفاوت خواهد بود که در ادامه، به بررسی این مسئله در نسخه های 11g، 12c و 18c خواهیم پرداخت.

(بیشتر…)

دستور ALTER SEQUENCE RESTART

برای تغییر مقدار جاری یک sequence، روشهای مختلفی وجود دارد که یکی از این روشها، استفاده از دستور ALTER SEQUENCE RESTART می باشد که در اوراکل 12cR2 ارائه شد. در ادامه متن، شیوه استفاده از این دستور را مشاهده خواهید کرد.

(بیشتر…)

پارتیشن بندی انلاین جداول در اوراکل 12cR2

با ارائه نسخه 12cR2 قابلیت جدیدی در زمینه پارتیشن بندی ارائه شد که به لحاظ پیاده سازی، پیچیدگی بسیار کمتری را نسبت به روشهای رایج پارتیشن بندی نظیر بسته dbms_redefintion دارد و صرفا با اجرای یک دستور ALTER TABLE .. MODIFY، پارتیشن بندی را برای جداول امکان پذیر خواهد کرد.

(بیشتر…)

پروسیجر EXPAND_SQL_TEXT

یک ویو ممکن است از یک پرس و جوی بسیار پیچیده و با متن طولانی ایجاد شده باشد و حتی بعضا، در متن پرس و جو، به ویوهای پیچیده دیگری هم رجوع شده باشد با این شرایط، برای ارائه راه حلهای پرفورمنسی  و همچنین انجام تغییری در متن کد، داشتن متن کامل پرس و جو(بدون ارجاع به هیچ ویوی دیگر)، می تواند در مواردی راهگشا باشد.

(بیشتر…)

تهیه دامپ از جداول auditing در اوراکل 12c

در اوراکل 11g، امکان گرفتن دامپ از جدول $aud با کمک data pump وجود ندارد:

[oracle@myhost ~]$ expdp directory=mrm dumpfile=aud.dmp tables=aud$

Export: Release 11.2.0.4.0 – Production on Sat Dec 8 17:30:47 2018

Connected to: Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 – 64bit Production

With the Partitioning, OLAP, Data Mining and Real Application Testing options

Starting “SYS”.”SYS_EXPORT_TABLE_01″:  sys/******** AS SYSDBA directory=mrm dumpfile=aud.dmp tables=aud$

Estimate in progress using BLOCKS method…

Total estimation using BLOCKS method: 0 KB

ORA-39166: Object SYS.AUD$ was not found.

ORA-31655: no data or metadata objects selected for job

Job “SYS”.”SYS_EXPORT_TABLE_01″ completed with 2 error(s) at Sat Dec 8 17:30:59 2018 elapsed 0 00:00:04

(بیشتر…)

انجام duplicate با کمک Data Guard

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

(بیشتر…)

ایجاد synonym برای کاربران

ایجاد synonym برای کاربران در اوراکل 12c امکان پذیر است. این کار با کمک پارامتر مخفی enable_schema_synonyms_ قابل انجام می باشد:

SQL> alter system set “_enable_schema_synonyms” = true scope=spfile;

System altered.

برای مثال، بعد از تنظیم این پارامتر، می توانیم با کمک دستور زیر، برای کاربر usef، نام دیگری هم تعیین می کنیم:

SQL>  create schema synonym new_name for usef;

Schema synonym created.

(بیشتر…)

Substitution Variableهای جدید برای expdp/impdp

در زمان تهیه دامپ به صورت همروند، خروجی دامپ در فایلهای متعددی قرار خواهد گرفت که در نسخه های قبل از 12cR2، اسامی هر کدام از این فایلها با کمک متغیر %U و با یک شماره از هم متمایز می شد به عبارت دیگر، ایجاد دامپ همروند تنها از طریق این Substitution Variable قابل انجام بود:

 expdp \’sys/sy AS SYSDBA\’  directory=dr dumpfile=dump_%U.dmp schemas=usef parallel=4

 Export: Release 11.2.0.4.0 – Production on Sun Apr 15 16:33:35 2018

Dump file set for SYS.SYS_EXPORT_SCHEMA_01 is:

/u01/oracle/dump_01.dmp

/u01/oracle/dump_02.dmp

/u01/oracle/dump_03.dmp

(بیشتر…)