Oracle Database Cloud Serviceインスタンスのサブスクライブ時に、サポートされているOracle CPU (OCPU)とプロセッサのRAMの組合せのリストから、インスタンスの仮想マシンの計算能力を選択します。 一部のデータベース初期化パラメータの値は、OC1M (1 OCPU、15GB RAM)やOC3M (4 OCPU、60GB RAM)という組合せで、これはパフォーマンスの問題が発生することがあります。 この項では、これらのデータベース・パラメータを設定し、追加タスクを実行してパフォーマンスを向上する方法について説明します。
データベース・パラメータをチューニングする手順:
SYS
ユーザー・アカウントで接続します。
SQL> alter system set distributed_lock_timeout = 1400 scope = spfile; alter system set Processes = 1500 scope = spfile; alter system set db_securefile = ALWAYS;
スループットを上げるため、redo logのサイズを2GBに変更します。
許容されている最大サイズに等しい初期サイズで、Oracle SOAスキーマのデータファイルを作成します。 そうしないと、データソース関連のエラーがレポートされます。 例:
SQLRecoverableException: IO Error: Socket read timed out
SOADataSourceの最大容量を400
に設定します。
SOAIncomingRequests_maxThreadsの数を60
に設定します。
SOAInternalProcessing_maxThreadsの数を150
に設定します。
ディスク満杯エラーを避けるため、期限切れのアーカイブ・ファイルを削除します。
SYS
ユーザー・アカウントで接続します。
SQL*Plusで、次のSQL構文を実行します。
SQL> alter system set db_flashback_retention_target = 45 scope=both; restart DB
次のdelArch.sh
スクリプトを実行して、期限切れのアーカイブ・ログ・ファイルを定期的に削除します。
#!/bin/sh ####################################################### ## ## ## Purge Database Archive Logs ## ## ## ####################################################### source /home/oracle/.bashrc test -z ${ORACLE_HOME} && echo "Please set ORACLE_HOME first" && exit 1; test ! -d ${ORACLE_HOME} && echo "Please make sure you have set ORACLE_HOME correctly: ${ORACLE_HOME}" && exit 1; #delete ${1} archivelog until time 'SYSDATE-1/(24*6)'; function rmArch(){ ${ORACLE_HOME}/bin/rman target / <<EOF crosscheck archivelog all; delete ${1} archivelog until time 'SYSDATE-1/(24*6)'; YES delete backup; YES delete datafilecopy all; YES exit EOF } totalcount=0 #interval=${1:-1800} interval=${1:-300} while [ : ] do rmArch $2 ts=$(date) let "totalcount=totalcount+1" echo "" echo "" echo "===================================" echo "== ==" echo "== SUMMARY ==" echo "== ==" echo "===================================" echo "" echo "" tname='v$asm_diskgroup'; tname2='v$recovery_file_dest'; ${ORACLE_HOME}/bin/sqlplus -s sys/welcome1 as sysdba <<EOF set feedback 0 set serveroutput on execute dbms_output.put_line('Disk Group space usage (In GigaByte)'); col total format 999,999,999.00 col available format 999,999,999.00 SELECT ROUND(total_mb / 1024) "TOTAL", ROUND(free_mb / 1024 ) "AVAILABLE" FROM ${tname} ; execute dbms_output.put_line('Archive Log space usage (In Gigabyte)'); col space_total format 999,999,999.00 col prc_used format 999,999,999.00 SELECT ROUND(SPACE_LIMIT / (1024*1024*1024)) SPACE_total,ROUND(((SPACE_USED / (1024*1024*1024)) * 100) / (SPACE_LIMIT / (1024*1024*1024)), 2) PRC_USED FROM ${tname2}; EOF echo "TotalCount: $totalcount" echo "Last run at $ts" echo "Will start another run in $interval seconds" sleep $interval done
Domain_Home
/bin/setStartupEnv.sh
ファイルに追加します。
-XX:ReservedCodeCacheSize=1024m