نصب اوراکل 18c در محیط non-Exadata

همانطور که مطلع هستید، اوراکل 18c صرفا در محیط exadata قابل استفاده می باشد حال اگر قصد نصب این نرم افزار در محیط  non-Exadata را داشته باشید، این کار مشابه نصب نسخه های قبلی اوراکل قابل انجام است ولی در زمان ایجاد بانک اطلاعاتی(به طور دقیق تر، در زمان استارت instance)، با خطای زیر مواجه خواهید شد:

ORA-12754: Feature ‘startup’ is disabled due to missing capability ‘Runtime Environment’.

برای جلوگیری از رخ دادن این خطا، می توان از پارامتر مخفی _exadata_feature_on در زمان اجرای دستور dbca استفاده کرد:

dbca -createDatabase -initParams “_exadata_feature_on=true”

با این دستور، instance بدون خطا استارت می شود و پس از ان بانک اطلاعاتی ایجاد خواهد شد.

TDE در اوراکل نسخه 11g

در نوشتاری که چندی قبل برای مبحث database vault ارائه شد، چگونگی جلوگیری از دسترسی و یا اصلاح اطلاعات خاص توسط مدیران بانکهای اطلاعاتی و یا افرادی که در سطوح بالایی به بانک اطلاعاتی دسترسی دارند، مورد بررسی قرار گرفته شد همانطور که در ان مطلب بیان کردیم، database vault تنها برای کنترل دسترسی در سطح بانک اطلاعاتی کاربرد دارد و برای جلوگیری از دسترسی غیر ایمن به اطلاعات در لایه سیستم عامل، باید از روشهای دیگری چون TDE استفاده کرد که در این نوشتار به این مهم خواهیم پرداخت.

(بیشتر…)

انواع Checkpoint

همانطور که می دانید با رخ دادن checkpoint در اوراکل، dirty bufferهای موجود در بافرکش توسط پروسس DBWR از حافظه به دیسک نوشته خواهند شد و همچنین هدر دیتافایل و کنترل فایل توسط پروسس CKPT بروز خواهد شد. به عبارتی دیگر، در زمان checkpoint دو اتفاق زیر و یا یکی از این دو رخ خواهد داد:

(بیشتر…)

ممانعت از ثبت پیام در alert log

در صورتی که به هر دلیلی به این نتیجه رسیده باشید که از ثبت پیامهای اوراکل در فایل alert log جلوگیری کنید(در محیط لینوکس)، می توانید این کار را به سادگی و با ایجاد یک soft link بر روی این فایل انجام دهید. برای انجام این کار، ابتدا فایل alert log را حذف می کنیم:

[root@hkm4 ~]# cd /u01/oracle/diag/rdbms/db11g/db11g/trace/
[root@hkm4 trace]# rm -rf alert_db11g.log

بلافاصله و قبل از ایجاد مجدد این فایل توسط بانک، soft linkای را از این فایل به /dev/null/ ایجاد می کنیم:

[root@hkm4 trace]# ln -s /dev/null alert_db11g.log
[root@hkm4 trace]# ls -l
lrwxrwxrwx 1 root root 9 Mar 14 11:58 alert_db11g.log -> /dev/null

با این کار، از ثبت هرگونه پیام در فایل alert log جلوگیری خواهیم کرد. همچنین برای حذف این soft link، باید از دستور زیر استفاده کرد:

[root@hkm4 trace]# unlink alert_db11g.log

دستور rman checksyntax

در صورتی که قصد داشته باشیم بدون اجرای یک دستور در محیط rman، ان را به لحاظ syntax مورد بررسی قرار دهیم، می توانیم از محیط rman checksyntax استفاده کنیم.

مثال زیر را ببینید:

[oracle@trac1 ~]$ rman checksyntax
Recovery Manager: Release 11.2.0.4.0 – Production on Sun Mar 4 22:04:23 2018

RMAN> backup database;
The command has no syntax errors

RMAN> crosscheck archivelog all;
The command has no syntax errors

همانطور که می بینید، هر دو دستور به لحاظ syntax، بدون مشکل هستند.

اختصاص فضا به جدول از یک دیتافایل مشخص

معمولا در هنگام ایجاد یک جدول، حداکثر به تعیین tablespaceای که قرار است جدول در ان قرار بگیرد بسنده می شود ولی در موارد نادری ممکن است نیاز باشد تا تعیین شود که جدول در کدام دیتافایل یا دیتافایلها ذخیره شود و در هر کدام به چه اندازه امکان تخصیص فضا را دارد.

این کار در زمان ساخت جدول و یا بعد از ایجاد آن هم ممکن است. برای مثال با اجرای دستور زیر، جدول tbl1 حداکثر می تواند به اندازه 5 مگابایت از دیتافایل test2.dbf را مصرف کند:

alter table tbl1 ALLOCATE EXTENT(DATAFILE ‘/acfs/test2.dbf’ size 5m);

تنظیم پارامترها در سطح پرس و جو از طریق هینت OPT_PARAM

همانطور که می دانید بعضی از پارامترها قابلیت تغییر در سطح session را دارند و برای تغییر این پارامترها می توان از دستور alter session استفاده کرد:

alter session set parameter_name=value;

حال ممکن است نیاز باشد بعضی از این پارامترها را صرفا در سطح یک دستور خاص تغییر داد نه در سطح کل session.

برای این کار می توان از هینتی به نام OPT_PARAM استفاده کرد که ساختار ان به صورت زیر می باشد:

opt_param(<parameter_name> [,] <parameter_value>)

برای مثال، در پرس و جوی زیر، پارامتر optimizer_features_enable را به مقدار 11.2.0.4 تغییر می دهیم:

select /*+ opt_param(‘optimizer_features_enable’,’11.2.0.4′)*/ * from tbl1;

نکته: البته این هینت همه پارامترها را پشتیبانی نمی کند. نمونه هایی که از پارامترهایی که توسط این هینت پشتیبانی می شوند:

optimizer_index_caching
optimizer_index_cost_adj
hash_join_enabled
optimizer_dynamic_sampling
optimixer_features_enable
optimizer_mode
optimizer_secure_view_merging
star_transformation_enabled