منبع اصلی نوشتار زیر در این لینک قرار دارد

دوره آموزشی Oracle Database 11g: SQL Tuning Workshop

یکی از تخصص‌های ضروری برای Programmerها و DBAهای پایگاه‌داده دانش SQL Tuning است. SQL Tuning یکی از حرفه‌ای‌ترین و پیچیده‌ترین اموری است که یک متخصص SQL در هر جایگاهی می‌تواند انجام دهد. این تخصص عمدتاً هم از DBAای بالاتر است و هم از برنامه‌نویسی به خصوص در شرکت‌های بزرگ که امروزه با توجه به حجم کثیر اطلاعات دارای افت کارایی و عملکرد می‌باشند.

امروزه عملیات Tuning در کشور های خارج از ایران، یکی از مهمترین و پر درآمدترین مشاغل IT می باشد، و تسلط بر این دانش در استخدام‌ها یک مزیت بزرگ محسوب می‌شود.

دوره Oracle Database 11g: SQL Tuning Workshop دانشگاه اوراکل به این تخصص مهم می‌پردازد.

What you will learn

This Oracle Database 11g: SQL Tuning Workshop Release 2 training assists database developers, DBAs and SQL developers in identifying and tuning inefficient SQL statements. You’ll explore investigative methods to reveal varying levels of detail about how the Oracle database executes the SQL statement; this helps you determine the root causes of the inefficient SQL statements.

Learn To:

– Use Oracle tools to identify inefficient SQL statements.
– Use Automatic SQL Tuning.
– Use Real Time SQL monitoring.
– Write more efficient SQL statements.
– Monitor and trace high load SQL statements.
– Manage optimizer statistics on database objects.
– Interpret execution plans, and the different ways in which data can be accessed.

Benefits to You

Gain expertise in relational database data management as you learn how to effectively use SQL commands against your business data. These features will help you query and manipulate data within the database, use the dictionary views to retrieve metadata and create reports about their schema objects.

Explore the Optimizer

Expert instructors will also help you explore how the optimizer chooses the path. You’ll also learn how to influence the optimizer to ensure the best method is used.

Automatic SQL Tuning Tools

This course covers Automatic SQL Tuning tools and resources available in the Automatic Workload Repository. Furthermore, take advantage of bind variables, trace files and different types of indexes.

Note: this course is based on Oracle Database 11g Release 2.

ادامه مطلب

ادامه مطلب

منبع اصلی نوشتار زیر در این لینک قرار دارد

دوره آموزشی Oracle Database: SQL Fundamentals II

Oracle Database: SQL Fundamentals II

Duration: 2 Days

What you will learn
This Oracle Database: SQL Fundamentals II training is designed for application developers with basic SQL language
skills. Expert instructors will teach you how to add new users with different levels of access privileges, use scalar and
correlated subqueries and more.

Learn To:

– Control privileges at the object and system level.
– Create indexes, constraints and alter existing schema objects.
– Create and query external tables and use the advanced features of SQL to query and manipulate data within the
database.
– Use the dictionary views to retrieve metadata and create reports about their schema objects.
– Write SQL statements that include the new functions introduced in Oracle Database 11g to enhance regular expression
support functionality.
– Use Oracle SQL Developer as the main tool; SQL*Plus is available as an optional tool.
– Control database access to specific objects.
– Manage schema objects.
– Manipulate large data sets in the Oracle database by using subqueries.
– Manage data in different time zones.
– Retrieve data by using advanced subqueries.
– Use the regular expression support in SQL to search, match, and replace strings in terms of regular expressions.

Benefits to You

Gain expertise in relational database data management as you learn how to effectively use SQL commands against your business data. These features will help you query and manipulate data within the database, use the dictionary views to retrieve metadata and create reports about their schema objects.

دریافت سرفصل‌ها
حجم: 32.5 کیلوبایت

ادامه مطلب

ادامه مطلب

منبع اصلی نوشتار زیر در این لینک قرار دارد

حذف آرشیو لاگ‌ها با استفاده از RMAN

اگه دیسک شما پر شده شما باید بک‌آپ‌ها و آرشیو لاگ‌های قدیمی رو پاک کنید یا به tape انتقال بدید. اگه نیاز دارید آرشیو لاگ‌ها رو پاک کنید می‌تونید از دستورات زیر در RMAN استفاده کنید. البته توصیه میکنم بعد از گرفتن بک‌آپ یا انتقال آرشیوها به گارد اینکار رو انجام بدید و درکل حواستون به خطرات اینکار باشه

گرفتن لیست آرشیو لاگ‌ها

RMAN> list archivelog all;
RMAN> list copy of archivelog until time ‘SYSDATE-10’;
RMAN> list copy of archivelog from time ‘SYSDATE-10’
RMAN> list copy of archivelog from time ‘SYSDATE-10’ until time ‘SYSDATE-2’;
RMAN> list copy of archivelog from sequence 1000;
RMAN> list copy of archivelog until sequence 1500;
RMAN> list copy of archivelog from sequence 1000 until sequence 1500;

پاک‌کردن آرشیو لاگ‌ها

RMAN> delete archivelog all;
RMAN> delete archivelog until time ‘SYSDATE-10’;
RMAN> delete archivelog from time ‘SYSDATE-10’
RMAN> delete archivelog from time ‘SYSDATE-10’ until time ‘SYSDATE-2’;
RMAN> delete archivelog from sequence 1000;
RMAN> delete archivelog until sequence 1500;
RMAN> delete archivelog from sequence 1000 until sequence 1500;

اگه خواستید از این دستورات در اسکریپت استفاده کنید و به پیفام زیر بر نخورید:

از دستور noprompt استفاده کنید تا پیغام yes-no رو نبینید.

RMAN> delete noprompt archivelog until time 'SYSDATE-10';

حالا اگه موقع حذف آرشیولاگها به مشکل زیر برخورد کردید:

RMAN-08137: WARNING: archived log not deleted, needed for standby or upstream capture process
archived log file name=+FRA/dwh/archivelog/2017_08_17/thread_1_seq_103136.56752.952282449 thread=1 sequence=103136
RMAN-08137: WARNING: archived log not deleted, needed for standby or upstream capture process
archived log file name=+FRA/dwh/archivelog/2017_08_17/thread_1_seq_103137.56751.952282463 thread=1 sequence=103137
RMAN-08137: WARNING: archived log not deleted, needed for standby or upstream capture process
archived log file name=+FRA/dwh/archivelog/2017_08_17/thread_1_seq_103138.56748.952282479 thread=1 sequence=103138
RMAN-08137: WARNING: archived log not deleted, needed for standby or upstream capture process
archived log file name=+FRA/dwh/archivelog/2017_08_17/thread_1_seq_103139.56744.952282493 thread=1 sequence=103139
RMAN-08137: WARNING: archived log not deleted, needed for standby or upstream capture process
archived log file name=+FRA/dwh/archivelog/2017_08_17/thread_1_seq_103140.56740.952282509 thread=1 sequence=103140

می‌تونید از force استفاده کنید:

RMAN> delete force noprompt archivelog until time 'SYSDATE-7';

خودکارسازی فرآیند

برای خودکارسازی فرآیند من از ۲ اسکریپت زیر استفاده کردم و با استفاده از سرویس cron اسکریپتها رو برای اجرای هفته‌ای زمانبندی کردم:

دریافت اسکریپت RMAN
حجم: 132 بایت

دریافت اسکرپت شل لینوکس
حجم: 423 بایت

منبع:

http://www.fatihacar.com/blog/delete-archivelog-using-rman-in-oracle

ادامه مطلب

منبع اصلی نوشتار زیر در این لینک قرار دارد

جلسه پنجم IranOUG (گروه کاربران اوراکل ایران)

⁣⁣⁣⁣⁣⁣⁣⁣ #رویداد_ویژه:

⁣جلسه پنجم Iran OUG (گروه کاربران اوراکل ایران)
⁣پنج‌شنبه ۲۳ شهریور، تهران

❇️ اطلاعات بیشتر:

https://evand.com/events/iranoug5

 

گروه کاربران اوراکل ایران یک سازمان بدون هدف انتفاع است که برای اهداف پشتیبانی و آموزش کاربران اوراکل تشکیل می‌شود. افراد داوطلب گروه عموماً به صورت فیزیکی دور هم جمع می‌شوند و با هم تعامل دارند.

 

گروه تلگرام:

https://telegram.me/joinchat/AAAAAD8OPBgDIBwKu785Yg

ادامه مطلب

منبع اصلی نوشتار زیر در این لینک قرار دارد

نمایش کل متن sql از v$sql

خیلی وقتها که میخوایم وضعیت SQL STATEMENTهایی که یوزرها زدن رو ببینیم از ویوی V$SQL و معمولاً از کوئری‌ای شبیه زیر استفاده میکنیم:

select v.SQL_TEXT,
v.PARSING_SCHEMA_NAME,
v.FIRST_LOAD_TIME,
v.DISK_READS,
v.ROWS_PROCESSED,
v.ELAPSED_TIME,
v.service
from v$sql v
where to_date(v.FIRST_LOAD_TIME,'YYYY-MM-DD hh24:mi:ss')>ADD_MONTHS(trunc(sysdate,'MM'),-2)

نکته: WHERE تو کوئری بالا به صورت اختیاریه ولی درکل یادمون باشه میتونیم با استفاده از فیلد FIRST_LOAD_TIME رو تاریخ و زمان اجرای اون کوئری مانور بدیم تا گزارشهای بهتری داشته باشیم.

همونطور که می‌بینید ما اکثر مواقع از فیلد SQL_TEXT استفاده میکنیم ولی با توجه به اینکه میدونیم محدودیت کاراکتری VARCHAR2 دقیقا ۱۰۰۰ کاراکتره احتمالا خیلی از دستورات رو نمیتونیم به صورت کامل ببینیم

اینجاست که بهتره بدونیم V$SQL و V$SQLAREA شامل فیلدی به اسم SQL_FULLTEXT هستن که این فیلد تمام دستور SQL کاربر رو تو دیتاتایپ CLOB ذخیره میکنه پس میشه رشته‌ها رو تا حداکثر سایزی که یک STATEMENT میتونه باشه رو نشون داد(۴۰۰۰ کاراکتر) بیاین باهم ببینیم که چجوری میشه رشته‌ها رو از این فیلد استخراج کرد.

set linesize 132 pagesize 999
column sql_fulltext format a60 word_wrap
break on sql_text skip 1

select
replace(translate(sql_fulltext,'0123456789','999999999'),'9','')
SQL_FULLTEXT
from v$sql
where sql_text like '%TEXT IDENTIFIER%'
group by replace(translate(sql_fulltext,'0123456789','999999999'),'9','')
/

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

SQL_FULLTEXT 
------------------------------------------------------------ 
select /*aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa 
... query text ...
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa */ from b

امیدوارم براتون مفید باشه

ادامه مطلب

منبع اصلی نوشتار زیر در این لینک قرار دارد

تعویض پسورد SYS در محیط DataGuard

خب اگه شما پسورد کاربر SYS رو با دستور ALTER USER SYS IDENTIFIED BY NEWPASSWORD در دیتابیسprimary عوض کنید SYNC از طرف سرور Primary متوقف می‌شود و آرشیولاگهای جدید به سمت دیتابیس Standby فرستاده نمی‌شودند. در این حالت شما خطای زیر رو در فایل alertlog می‌بینید:

------------------------------------------------------------------
Check that the primary and standby are using a password file
and remote_login_passwordfile is set to SHARED or EXCLUSIVE,
and that the SYS password is same in the password files.
returning error ORA-16191
------------------------------------------------------------------

این به این دلیله که شما از دستور ALTER USER برای تعویض پسورد کاربر SYS استفاده کرده‌اید و پسورد شما هم در فایل پسورد و هم در دیتادیکشنری به درستی در سرور Primary آپدیت شده ولی در سرور Standby تغییرات اعمال نشده‌اند.

شما با دستور زیر می‌تونید پسورد SYS رو در سرور Standby آپدیت کنید:

orapwd file=$ORACLE_HOME/dbs/orapwSID password=newpassword;

فراموش نکنید که فایل قبلی رو حذف کنید (توصیه میشه فقط اسم فایل رو عوض کنید تا اگه به مشکلی خوردید بتونید از فایل قبلی استفاده کنید، من خودم آخر فایلها یه پسوند old اضافه میکنم.)

نکته: حواستون باشه اصلاً مهم نیست پسورد SYS سمت Primary رو عوض کردید یا Standby در آخر باید این پسوردها یکی باشن

ادامه مطلب

منبع اصلی نوشتار زیر در این لینک قرار دارد

ابزار پیکربندی Oracle Database Gateway

ابزار ارائه شده برای کانفیگ Oracle Database Gateway توانایی پیکربندی سریع gateway رو داره با این ابزار می‌تونید به سادگی Gateway رو برای SQL Server، Sybase، DRDA، Informix, Teradata و ODBC کانفیگ کنید.

ادامه مطلب

ادامه مطلب

منبع اصلی نوشتار زیر در این لینک قرار دارد

راهنمای گام به گام – نحوه deploy کردن agent ویندوز با cygwin در OEM 13C – قسمت پنجم

لاگین دوباره به OEM 13C

با کاربر sysman وارد می‌شویم:

اگه پیغامی مبنی بر منقضی شدن session و ادامه کار دریافت کردید بر روی OK کلیک کنید.

ادامه مطلب

ادامه مطلب

منبع اصلی نوشتار زیر در این لینک قرار دارد

راهنمای گام به گام – نحوه deploy کردن agent ویندوز با cygwin در OEM 13C – قسمت چهارم

پیکربندی Cygwin

فایل C:\cygwin\cygwin.bat را ویرایش کنید و خط زیر را بین خطوط chdir و bash اضافه کنید:

set CYGWIN=binmode ntsec

فایل باید به این شکل باشه:

ادامه مطلب

ادامه مطلب

منبع اصلی نوشتار زیر در این لینک قرار دارد

راهنمای گام به گام – نحوه deploy کردن agent ویندوز با cygwin در OEM 13C – قسمت دوم

نصب Cygwin

نصب Cygwin خوشبختانه می‌تواند به دو روش آنلاین و آفلاین صورت گیرد، اگر host شما دسترسی به اینترنت را دارد توصیه می‌شود از روش آنلاین استفاده شود.

نکته۱: قبل از اینکه نصب Cygwin  رو شروع کنید مطمئن بشید که هیچ سرویس SSH دیگه‌ای روی ماشین راه‌اندازی نشده باشه، وگرنه به conflictهای وحشتناکی می‌خورید.

نکته۲: اوراکل صراحتاً OpenSSH و MKSNT رو برای سرویس SSH معرفی کرده، اگه هر کدوم از اینها رو قبلاً نصب و راه‌اندازی کردید سرویس مورد نظر را stop و متغیرهای محیطی را از PATH سیستم حذف کنید.

نکته۳: فایروالهای امنیتی به سادگی می‌توانند شما را دیوانه کنند!! قبل از اینکه دیوانه شوید ارتباط ماشین را بر روی پورت دیفالت SSH یا همان 22 تست کنید(مثلاً با telnet) و در صورت اختلال در مسیر از ادمینهای فایروال محترمانه درخواست کنید ارتباط شما را براساس پالیسی‌های خود باز کنند.

روش آنلاین

نصاب را از لینک زیر دانلود کنید:

https://cygwin.com/install.html

دسترسی کاربر ادمین

برای نصب نیاز به دسترسی کاربر ادمین داریم:

ادامه مطلب

ادامه مطلب

به سیاره لینوکس امتیاز دهید

به اين صفحه امتياز دهيد