Unified Auditing

همانطور که می دانید، ثبت وقایع برای نسخه های قبل از اوراکل 12c، از طریق standard auditing امکان پذیر است. با کمک این شیوه از auditing، می توان تمامی عملیات کاربران حاضر در بانک اطلاعاتی را مانیتور نمود (البته به غیر از کاربرانی که با مجوز sysdba به بانک لاگین کرده اند.) این شیوه از auditing در کنار مزیتهای فراوانی که به همراه دارد، با محدودیتهایی هم روبروست، محدودیتهایی نظیر:

1.امکان دستکاری راحت audit record توسط کاربر sys

2.عدم ثبت وقایع کاربر sys در جدولی از بانک

3.عدم امکان auditing بر اساس role کاربران

4.عدم پارتیشن بندی پیش فرض جدول $aud و مشقتهای حذف بازه ای اطلاعات آن(delete + HWM)

5.عدم امکان auditing بر اساس مولفه هایی چون rman، datapump، sqlldr و …

6.عدم امکان auditing بر مبنای host name، ip address و …

و …

(بیشتر…)

ویژگی PDB RELOCATE

یکی از قابلیتهای جدید نسخه 12cR2، جابجایی(relocate) انلاین pdb از یک cdb به cdb دیگر می باشد. این کار مشابه ویژگی pdb hot clone می باشد که قبلا در مورد ان مطلبی ارائه شد(ایجاد انلاین pdb به صورت از راه دور)، با این تفاوت که در ویژگی pdb relocate، بعد از انجام عملیات کپی، pdb از بانک مبدا حذف خواهد شد و امکان باز بودن این pdb در هر دو cdb، ان هم در یک زمان وجود نخواهد داشت.

(بیشتر…)

ریکاوری استندبای تا یک تاریخ یا scn مشخص

برای ریکاوری استندبای(با این فرض که استندبای عقب یا در حالت delay قرار دارد) تا یک تاریخ یا scn، مشخص می توان از دستور زیر استفاده کرد:

SQL> ALTER DATABASE RECOVER automatic standby database until time ‘2017-05-15 06:15:47’;

Database altered.

در این صورت با رسیدن ریکاوری به زمان تعیین شده، پیامی مشابه با پیام زیر، در alert log قابل مشاهده خواهد بود:

Incomplete Recovery applied until change 41254778 time 05/15/2017 06:15:47

Media Recovery Complete (DBSTEST)

Completed: ALTER DATABASE RECOVER automatic standby database until time ‘2017-05-15 06:15:47’

سفارشی سازی خط فرمان با متغیر PS1

در محیط لینوکس ساختار خط فرمان( command prompt) در حالت پیش فرض به صورت زیر می باشد:

[username@hostname CurrentWorkingDirectory]#

برای تغییر این ساختار، باید با متغیر PS1 و معانی مقادیری که می توان به ان اختصاص داد، اشنا بود. به طور پیش فرض، این متغیر مقدار زیر را دارد:

PS1=[\u@\h \W]\$

(بیشتر…)

فراخوانی lobs با dblink در اوراکل 12cR2

در اوراکل 11g، با کمک dblink نمی توان فیلدی که از نوع داده lobs می باشد را به صورت زیر فراخواند:

select * from usef.tbl@db11g;
ORA-22992: cannot use LOB locators selected from remote tables

همچنین اگر جدول مورد نظر در اوراکل ماقبل از نسخه 12cR2 باشد و فراخوانی ان در نسخه 12cR2 انجام شود، کماکان با خطا مواجه خواهد شد:

–in 12cR2 to 11g

select * from tbl@db11g;

ORA-65510: Distributed LOB operations are not supported on pre-12.2 databases.

حال اگر طرفین 12cR2 باشند، این محدودیت برطرف خواهد شد:

select * from tbl@db12r2;
1 <CLOB>

چالشهای دیتاگارد در محیط Multitenant

پرسش: در محیط Multitenant، با ایجاد یک pdb جدید، چه اتفاقی برای دیتاگارد رخ خواهد داد؟ آیا دیتاگارد از حالت ریکاور خارج خواهد شد؟ چگونه میتوان در زمان انجام عملیات pdb cloning  و یا remote hot clone ، دیتاگارد را در حالت همسان با بانک اصلی نگه داشت؟ و …

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

(بیشتر…)

بررسی روشهای خاتمه دادن به یک session

برای از بین بردن یک Session و یا به عبارت دیگر kill session، می توان از دستورات مختلفی در سطح بانک و یا سیستم عامل استفاده کرد که در ادامه به بررسی تعدادی از این دستورات خواهیم پرداخت.

(بیشتر…)

اهدای مجوز به کاربران عادی برای اجرای دستورات به شکلی خاص

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

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

(بیشتر…)