یک ویو ممکن است از یک پرس و جوی بسیار پیچیده و با متن طولانی ایجاد شده باشد و حتی بعضا، در متن پرس و جو، به ویوهای پیچیده دیگری هم رجوع شده باشد با این شرایط، برای ارائه راه حلهای پرفورمنسی و همچنین انجام تغییری در متن کد، داشتن متن کامل پرس و جو(بدون ارجاع به هیچ ویوی دیگر)، می تواند در مواردی راهگشا باشد.
سیر تکاملی ذخیره سازی پسورد کاربران dblink(ویژگی DICTIONARY CREDENTIALS ENCRYPT)
در اوراکل 10gR1، پسورد کاربران استفاده شده برای dblink، بدون رمزنگاری و بصورت کاملا شفاف(clear text) در جداول data dictionary ذخیره می شدند و امکان مشاهده کلمه عبور به صورت clear text، از طریق ویوهای data dictionary امکان پذیر بود:
SQL*Plus: Release 10.1.0.4.2 – Production on Wed Apr 18 11:23:01 2018
SQL> create database link dblinkname connect to usef identified by “pass@123” using ‘tns_name’;
Database link created.
SQL> select DB_LINK,USERNAME,PASSWORD from USER_DB_LINKS;
DB_LINK USERNAME PASSWORD
——————– ———- ———-
DBLINKNAME USEF pass@123
تهیه دامپ از جداول 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
نصب Grid Infrastructure 18c و راه اندازی ASM
در این متن قصد داریم به نصب نرم افزار Grid Infrastructure 18c بپردازیم.
برای نصب نرم افزار گرید، ابتدا باید مقدماتی را در سطح سیستم عامل انجام داد که مشابه آن را قبلا در مطلبی برای نصب نرم افزار اوراکل، ارائه داشته ایم(در صورت لزوم، می توانید از طریق این لینک به آن مطلب رجوع بفرمایید.). با این حال، در ابتدای متن پیش رو، نیازمندیهای اختصاصی نصب نرم افزار گرید را هم از نظر خواهید گذراند.
Data Masking از طریق Data Pump
در زمان انتقال اطلاعات از یک بانک عملیاتی به یک بانک تستی، ممکن است نیاز باشد تا اطلاعات حساس به طور شفاف به بانک مقصد منتقل نشوند در این صورت اگر از data pump برای جابجایی دیتا استفاده می کنیم، می توانیم در زمان برگرداندن دیتا با دستور impdp، داده های حساس را دستکاری کنیم. این کار، از طریق پارامتر REMAP_DATA و یک function(که از قبل در بانک تستی موجود است)، قابل انجام خواهد بود.
REMAP_DATA=[schema.]tablename.column_name:[schema.]pkg.function
دست گرمی با پسوردفایل
همانطور که می دانید، برای لاگین از راه دور به بانک اطلاعاتی، آن هم از طریق administrative privilegeها(از قبیل sysdba و sysoper)، ناگزیر باید password file را برای بانک ایجاد کرده باشیم در غیر این صورت، با خطا مواجه خواهیم شد:
[oracle@myhost ~]$ sqlplus “sys/a@mydb1 as sysdba”
SQL*Plus: Release 18.0.0.0.0 – Production on Sat Aban 26 12:27:51 1397
Version 18.3.0.0.0
Copyright (c) 1982, 2018, Oracle. All rights reserved.
ERROR:
ORA-01017: invalid username/password; logon denied
Enter user-name:
نصب اوراکل 18c با کمک RPM
در این متن قصد داریم به شیوه نصب اوراکل 18c با کمک RPM بپردازیم. قبل از نصب نرم افزار، باید بسته های مورد نیاز را در سطح سیستم عامل نصب کرده و مقدمات لازم را برای نصب نرم افزار فراهم کنیم.
ایجاد Block Device برای ASM(دستور truncate – fallocate – dd)
در زمان راه اندازی Oracle ASM در یک محیط تستی، یکی از ملزومات، داشتن دیسک و یا پارتیشن اضافه و ازاد در سرور/ماشین می باشد. حال اگر به هر دلیلی اضافه کردن دیسک به سرور/ماشین امکان پذیر نباشد، چه باید کرد؟
در محیط لینوکس، این مسئله با ایجاد یک فایل حجیم و همچنین تبدیل ان به یک block device(با کمک loop device) قابل انجام خواهد بود. قرار است این فایل حجیم، نقش دیسک را در زمان راه اندازی و نگهداری Oracle ASM ایفا کند.
برای ایجاد فایل حجیم در محیط لینوکس، دستورات متنوعی وجود دارند که در ادامه به بررسی سه مورد از این دستورات می پردازیم.
تهیه گزارش AWR در محیط ADG
همانطور که می دانید؛ ایجاد گزارش awr در محیط ADG به صورت روتین امکان پذیر نمی باشد این اتفاق به دلیل عدم امکان ایجاد snapshot بر روی بانکی که در حالت read only قرار دارد، کاملا منطقی بنظر می رسد. در اوراکل 12cR2، راهکاری برای این مسئله اندیشیده شد و امکان تهیه این گزارش برای ADG هم فراهم شده است.
ویژگی Multi Instance Redo Apply
در اوراکل 11g با پیاده سازی دیتاگارد به صورت کلاستر، تنها نودی که دستور alter database manage recover بر روی ان اجرا شده(برای اولین بار!)، مسئولیت اعمال کردن redoها را برعهده خواهد داشت و مابقی نودها می توانند برای گزارش گیری، تهیه بکاپ و یا دریافت redo (یا آرشیو) و… مورد استفاده قرار بگیرند.
در اوراکل 12cR2، بهبودی در این زمینه رخ داد که می توان با کمک آن، همه نودها را در recovery سهیم کرد. این قابلیت که (Multi Instance Redo Apply (MIRA نام دارد، امکان اعمال redoها را با کمک چند instance ممکن می سازد.