پارامتر views_as_tables  در data pump

با این ویژگی، امکان گرفتن دامپ از خروجی یک ویو هم مهیا خواهد شد همچنین در زمان برگرداندن این ویو، جدولی در بانک مقصد ایجاد خواهد شد:

expdp usef/abc@pdb1 directory=usef dumpfile=test.dmp views_as_tables=usef_view1

Export: Release 12.1.0.2.0 – Production on Sat Jul 2 10:41:26 2016

Starting “USEF”.”SYS_EXPORT_TABLE_01″:  usef/********@pdb1 directory=usef dumpfile=test.dmp views_as_tables=usef_view1

Total estimation using BLOCKS method: 16 KB

. . exported “USEF”.”USEF_VIEW1″                         163.3 KB    5086 rows

Master table “USEF”.”SYS_EXPORT_TABLE_01″ successfully loaded/unloaded

Job “USEF”.”SYS_EXPORT_TABLE_01″ successfully completed at Sat Jul 2 10:41:38 2016 elapsed 0 00:00:11

برگرداندن ویو به صورت جدول در بانک مقصد:

impdp usef/abc@pdb1 directory=usef dumpfile=test.dmp views_as_tables=usef_view1

Import: Release 12.1.0.2.0 – Production on Sun Jul 3 09:40:23 2016

Starting “USEF”.”SYS_IMPORT_TABLE_01″:  usef/********@pdb1 directory=usef dumpfile=test.dmp views_as_tables=usef_view1

. . imported “USEF”.”USEF_VIEW1″                         163.3 KB    5086 rows

Job “USEF”.”SYS_IMPORT_TABLE_01″ successfully completed at Sun Jul 3 09:40:25 2016 elapsed 0 00:00:01

غیرفعال سازی 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 ویژگی جدید را ارائه کرده است که در این مقاله قصد داریم بعضی از این ویژگی ها را مورد بررسی قرار دهیم.

(بیشتر…)

عبارت Multisection در backp as copy

در صورت استفاده از BIGFILE Tablespace در یک دیتابیس، استفاده از شیوه های مرسوم بکاپ/ریکاوری آن هم در سطح tablespace، کارایی چندان مطلوبی را در پی نخواهد داشت!

شاید به همین دلیل از اوراکل نسخه 11g، عبارت SECTION SIZE هم به گزینه های دستور BACKUP اضافه شد که می توان با استفاده از این عبارت، ابتدا فایل را به چند قسمت تقسیم کرده(بلاکهای همجوار در یک دسته قرار می گیرند) و در نهایت هر قسمت را به یک کانال مجزا سپرد تا به صورت موازی از یک فایل بکاپ تهیه شود.

(بیشتر…)

اجرای دستورات Sql در محیط RMAN

از اوراکل 12cR1 می توان بدون هیچ پیش شرطی دستورات sqlای را در محیط RMAN اجرا کرد:

RMAN> select status from v$instance;

STATUS     

————

OPEN       

RMAN> desc usef.a;

using target database control file instead of recovery catalog

 Name                                      Null?    Type

 —————————————– ——– —————————-

 FILE#                                              NUMBER                     

 NAME                                               VARCHAR2(513)  

SESSION LEVEL SEQUENCES

یکی از ویژگی های اوراکل در نسخه 12c، ایجاد نوعی از sequence می باشد که در سطح session مقدار می گیرد.

CREATE SEQUENCE seq_new START WITH 1 INCREMENT BY 1 SESSION;

session 1:

select seq_new.nextval from dual;

1

session 2:

select seq_new.nextval from dual;

1

برای تغییر حالت این sequence از سطح session به سطح global و بالعکس، باید از دستور زیر استفاده کرد:

alter sequence seq_new global;

alter sequence seq_new session;

ویژگی Data Redaction در اوراکل 12c

در صورتی که بخواهیم قسمتی از اطلاعات یک جدول، برای تعدادی از کاربران مخفی و یا غیرواقعی نمایش داده شود، می توانیم از ویژگی data redaction که از اوراکل 12c ارائه شد، استفاده کنیم به این صورت که ابتدا کاربر پرس و جویی را اجرا کرده و منتظر دریافت خروجی خواهد بود، بر روی داده درخواستی کاربر، عملیات redact انجام شده و در نهایت کاربر مورد نظر، داده را بر اساس آن فرمتی که از قبل تعریف کرده ایم، خواهد دید.

(بیشتر…)

READ ANY TABLE

مجوز select any table، علاوه بر امکان مشاهده اطلاعات جداول، قابلیتهای اضافه ای را هم به کاربران خواهد داد نظیر:

select * from .. for update;

مجوز جدیدی در اوراکل 12c ارائه شد که read any table نام دارد و می توان از آن به عنوان جایگزینی برای select any table استفاده کرد این مجوز، صرفا امکان مشاهده اطلاعات را به کاربران خواهد داد و قابلیتهای اضافه مربوط به مجوز select any table را ندارد.

(بیشتر…)

MATERIALIZED VIEW

همانطور که می دانید ویو(view) ذخیره پرس و جو در بانک اطلاعاتی به یک اسم خاص می باشد که عمده  کاربرد آن در امنیت و استقلال منظقی داده ها می باشد ویوها هیچ فضایی را برای ذخیره داده مصرف نمی کنند و با هر بار اجرا، پرس وجو را هم اجرا می کنند. همانند ویو، شی دیگری نیز وجود دارد که شامل یک پروس و جو می باشد که برخلاف ویو، خروجی پرس و جو را هم در جایی ذخیره می کند و در مواقع ضروری می توان آن را بروز کرد این شی Materialized View نام دارد.

(بیشتر…)