در اوراکل 12c، اجرای دستور duplicate در سطح یک pdb امکان پذیر است منتها با این محدودیت که برای انجام duplicate، لازم است تا cdb جدیدی هم ایجاد شود در غیر این صورت، اجرای دستور با خطا مواجه خواهد شد:
INHERIT PRIVILEGE
قبلا در مورد invoker right و definer right مطلبی را ارائه کردیم(ادرس مطلب) و نشان دادیم که استفاده از عبارت AUTHID CURRENT_USER چه مزیت امنیتی ای را به همراه دارد اما استفاده از invoker right در زمانی که مجوزهای invoker از definer بیشتر باشد، نقایصی را هم به لحاظ امنیتی در برخواهد داشت که در ادامه با ارائه مثالی، به این نقصان خواهیم پرداخت.
استفاده از Preplugin Backup در اوراکل 18c
از اوراکل 18c،با plug کردن یک pdb به cdb دیگر، امکان استفاده از بکاپهای قدیمی این pdb در cdb جدید امکان پذیر است. در ادامه با یک مثال، خواهیم دید که چگونه می توان از بکاپ pdb18c که ماقبل عملیات plug تهیه شده است، استفاده کرد و دیتافایلهای از دست رفته ای را بدون از دست دادن حتی رکوردی(چه قبل از plug و چه بعد از ان) برگرداند.
Real-Time materialized view
زمان اجرای دو پرس و جوی زیر را با هم مقایسه کنید:
SQL> set timing on
پرس و جوی اول:
SQL> select /*+FULL(TBL1)*/ count(*) from tbl1;
COUNT(*)
———-
176000000
Elapsed: 00:00:02.33
مجوز 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
تغییر نام کاربر در اوراکل
برای تغییر نام یک کاربر در اوراکل، تا قبل از نسخه 11g، دستور مشخصی وجود نداشت و برای انجام این کار، نیاز بود تا از عملیات پرهزینه ای چون expdp/impdp، exp/imp و … استفاده کرد که البته استفاده از این روشها در بسیاری از محیطها، بسیار دشوار و تا حدودی نشدنی بود.
PDB switchover در اوراکل 18c
شیوه بروزرسانی از راه دور pdb در اوراکل 12c قبلا مورد بررسی قرار گرفت(ایجاد و بروزرسانی pdb به صورت از راه دور) در اوراکل 18c قابلیت جدیدی در این زمینه ارائه شد که امکان تغییر نقش pdb مبدا و مقصد و به عبارت دیگر، switchover بین این pdbها را هموار می کند.
رفع گپ استندبای در اوراکل 18c
برطرف کردن گپ استندبای از اوراکل 10g با کمک incremental backup قابل انجام است البته به صورت کاملا دستی! انجام این کار نیازمند تعیین شماره scn، تهیه بکاپ از بانک اصلی(بصورت incremental)، ارسال فایل به سرور استندبای و …. بود از اوراکل 12cR1، بهبودهایی در این زمینه صورت پذیرفت و قسمتی از این عملیات به صورت خودکار قابل انجام است ولی کماکان نیاز بود با طی چند مرحله این کار انجام شود:
پارامتر 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’
اجرای exp/expdp در محیط data guard
برای تهیه دامپ در محیط data guard، می توان از ابزار Exp بصورت مستقیم و از ابزار Expdp به صورت غیرمستقیم(با کمک database link) استفاده کرد همچنین با تبدیل data guard به snapshot standby، هم می توان مجددا از ابزار Expdp به صورت مستقیم بهره گرفت.
در ادامه به بررسی این سه روش خواهیم پرداخت.