記録されたプロキシ セッション データの管理
プロキシ記録機能を有効にすると、エンタープライズ管理サーバは、プロキシ セッションを中央データベースに格納します。 データベースのサイズは、記録されたプロキシ セッション データによって増加します。 データの増加を管理し、データをアーカイブすることによって、データベースのパフォーマンスを向上させてください。
cminder12901jp
プロキシ記録機能を有効にすると、エンタープライズ管理サーバは、プロキシ セッションを中央データベースに格納します。 データベースのサイズは、記録されたプロキシ セッション データによって増加します。 データの増加を管理し、データをアーカイブすることによって、データベースのパフォーマンスを向上させてください。
記録されたプロキシ セッション データのアーカイブ(Microsoft SQL Server)
Microsoft SQL Server の bcp ユーティリティを使用して、記録されたプロキシ セッション データをアーカイブします。
以下の手順に従います。
- 以下のコマンドを実行し、プロキシ記録テーブルからアーカイブする行を選択します:RECORDING_FILE、RECORDING_SESSION、PROXY_SESSION、RECORDING_EVENTSSet query1="select * from [Database_name].dbo.RECORDING_FILE where [condition]"Set query2="select * from [Database_name].dbo.RECORDING_SESSION where SESSION_ID in(select SESSION_ID from [Database_name].dbo.RECORDING_FILE where [condition])"Set query3="select * from [Database_name].dbo.PROXY_SESSION where SESSION_ID in(select SESSION_ID from [Database_name].dbo.RECORDING_FILE where [condition])"Set query4="select * from [Database_name].dbo.RECORDING_EVENTS where SESSION_ID in(select SESSION_ID from [Database_name].dbo.RECORDING_FILE where [condition])"プロキシ セッション データをアーカイブするために一般的に使用される条件は、以下のとおりです。
- RECORDING_FILE_SIZE:記録されたファイルのサイズを指定します。Set query1="select * from My_Database.dbo.RECORDING_FILE where RECORDING_FILE_SIZE<=1GB"Set query2="select * from My_Database.dbo.RECORDING_SESSION where SESSION_ID in(select SESSION_ID from My_Database.dbo.RECORDING_FILE where RECORDING_FILE_SIZE<=1GB)"Set query3="select * from My_Database.dbo.PROXY_SESSION where SESSION_ID in(select SESSION_ID from My_Database.dbo.RECORDING_FILE where RECORDING_FILE_SIZE<=1GB)"Set query4="select * from My_Database.dbo.RECORDING_EVENTS where SESSION_ID in(select SESSION_ID from My_Database.dbo.RECORDING_FILE where RECORDING_FILE_SIZE<=1GB)"
- CREATE_TIME:プロキシ セッション作成日を指定します。Set query1="select * from My_Database.dbo.RECORDING_FILE where CREATE_TIME<=1415286431177"Set query2="select * from My_Database.dbo.RECORDING_SESSION where SESSION_ID in(select SESSION_ID from My_Database.dbo.RECORDING_FILE where CREATE_TIME<=1415286431177)"Set query3="select * from My_Database.dbo.PROXY_SESSION where SESSION_ID in(select SESSION_ID from My_Database.dbo.RECORDING_FILE where CREATE_TIME<=1415286431177)"Set query4="select * from My_Database.dbo.RECORDING_EVENTS where SESSION_ID in(select SESSION_ID from My_Database.dbo.RECORDING_FILE where CREATE_TIME<=1415286431177)"ヒント:時間を人間が理解しやすい形式に変換するには、エポック コンバータを使用します。
- SESSION_ID:プロキシ セッション ID を指定します。
- 手順 1 で説明した 4 つのテーブルのそれぞれに対して、アーカイブ ファイル内のプロキシ セッション データをアーカイブする場所を設定します。set archive_file_RECORDING_FILE="Drive:\<path><archive_file_RECORDING_FILE>.dat"set archive_file_RECORDING_SESSION="Drive:\<path><archive_file_RECORDING_SESSION>.dat"set archive_file_PROXY_SESSION="Drive:\<path><archive_file_PROXY_SESSION>.dat"set archive_file_RECORDING_EVENTS="Drive:\<path><archive_file_RECORDING_EVENTS>.dat"
- 以下のコマンドを実行し、手順 1 で説明した 4 つのテーブルのそれぞれに対して、bcp ユーティリティを使用してデータをアーカイブします。bcp %query1% queryout %archive_file_RECORDING_FILE% -n -t, -U [Database_User] -P [Database_Password] -S [Database_Server]bcp %query2% queryout %archive_file_RECORDING_SESSION% -n -t, -U [Database_User] -P [Database_Password] -S [Database_Server]bcp %query3% queryout %archive_file_PROXY_SESSION% -n -t, -U [Database_User] -P [Database_Password] -S [Database_Server]bcp %query4% queryout %archive_file_RECORDING_EVENTS% -n -t, -U [Database_User] -P [Database_Password] -S [Database_Server]注:エンタープライズ管理管理データベース サーバで bcp ユーティリティを実行する場合は、-S はオプションです。
- データをアーカイブした後に、以下と同じ順番で、記録されたプロキシ セッション データをデータベースから削除します。delete [Database_name].dbo.RECORDING_SESSION where SESSION_ID in(select SESSION_ID from [Database_name].dbo.RECORDING_FILE where [condition]);delete [Database_name].dbo.PROXY_SESSION where SESSION_ID in(select SESSION_ID from [Database_name].dbo.RECORDING_FILE where [condition]);delete [Database_name].dbo.RECORDING_EVENTS where SESSION_ID in(select SESSION_ID from [Database_name].dbo.RECORDING_FILE where [condition]);delete [Database_name].dbo.RECORDING_FILE where [condition];例:delete My_Database.dbo.RECORDING_SESSION where SESSION_ID in(select SESSION_ID from My_Database.dbo.RECORDING_FILE where CREATE_TIME<=1415286431177);delete My_Database.dbo.PROXY_SESSION where SESSION_ID in(select SESSION_ID from My_Database.dbo.RECORDING_FILE where CREATE_TIME<=1415286431177);delete My_Database.dbo.RECORDING_EVENTS where SESSION_ID in(select SESSION_ID from My_Database.dbo.RECORDING_FILE where CREATE_TIME<=1415286431177);delete My_Database.dbo.RECORDING_FILE where CREATE_TIME<=1415286431177;
記録されたプロキシ セッション データが SQL Server にアーカイブされました。
アーカイブされたプロキシ セッション データのリストア(Microsoft SQL Server)
bcp ユーティリティを使用して、アーカイブされたファイルからそれぞれのテーブルに、データをリストアします。 アーカイブされたファイル パスは、セクション 記録されたプロキシ セッション データの管理 のポイント 2 で設定したものと同じである必要があります。
- アーカイブされたプロキシ セッション データをリストアする場所を設定します。set archive_file_RECORDING_FILE="Drive:\<archive_file_RECORDING_FILE>.dat"set archive_file_RECORDING_SESSION="Drive:\<archive_file_RECORDING_SESSION>.dat"set archive_file_PROXY_SESSION="Drive:\<archive_file_PROXY_SESSION>.dat"set archive_file_RECORDING_EVENTS="Drive:\<archive_file_RECORDING_EVENTS>.dat"
- 以下のコマンドを実行します。bcp [database_Name].dbo.RECORDING_TABLE in %archive_file_RECORDING_FILE% -n -t, -U [Database_User] -P [Database_Password]bcp [database_Name].dbo.RECORDING_TABLE in %archive_file_RECORDING_SESSION% -n -t, -U [Database_User] -P [Database_Password]bcp [database_Name].dbo.RECORDING_TABLE in %archive_file_PROXY_SESSION% -n -t, -U [Database_User] -P [Database_Password]bcp [database_Name].dbo.RECORDING_TABLE in %archive_file_RECORDING_EVENTS% -n -t, -U [Database_User] -P [Database_Password]
アーカイブされたプロキシ セッション データがリストアされました。
記録されたプロキシ セッション データのアーカイブ(Oracle)
Oracle の expdp ユーティリティを使用して、記録されたプロキシ セッション データをアーカイブします。
以下の手順に従います。
- アーカイブ ディレクトリを作成します。以下のコマンドを実行します。#mkdir /work/task_archive
- 作成するアーカイブ ディレクトリを定義します。task_archive
- 作成したディレクトリの Oracle ユーザにフル アクセス権を付与します。以下のコマンドを実行します。#chmod 777 /work/task_archive
- Oracle データベースにシステム ユーザとしてログインします。 作成したディレクトリの Oracle データベース ユーザに読み取り/書き込みアクセス権を付与します。以下のコマンドを実行します。CREATE OR REPLACE DIRECTORYpim-recordings-archiveAS '/work/task_archive';GRANT READ, WRITE ON DIRECTORYpim-recordings-archiveTOpimDBUser;
- Oracle データベース ユーザ名を定義します。pimDBUser
- 作成するアーカイブ ディレクトリを定義します。pim-recordings-archive
- 以下のクエリを使用して、RECORDING_FILE テーブルからデータをアーカイブします。expdppimDBUser/pimDBPassworddirectory=pim-recordings-archivedumpfile=pimRecordedSessions_1410211852.dmp logfile=pimRecordedSessions_1410211852.loginclude=table:\"=\'RECORDING_FILE\'\" query=RECORDING_FILE:\"WHERE [Condition]\"
- Oracle データベース ユーザ名を定義します。pimDBUser
- データベース ユーザ パスワードを定義します。pimDBPassword
- 作成したアーカイブ ディレクトリを定義します。pim-recordings-archive
- データをアーカイブする条件を指定します。 データをアーカイブするために一般的に使用される条件は、以下のとおりです。Condition
- RECORDING_FILE_SIZE記録されたファイルのサイズを指定します。例:expdppimDBUser/pimDBPassworddirectory=pim-recordings-archivedumpfile=pimRecordedSessions_1410211852.dmp logfile=pimRecordedSessions_1410211852.loginclude=table:\"=\'RECORDING_FILE\'\" query=RECORDING_FILE:\"WHERE RECORDING_FILE_SIZE>2GB\"
- CREATE_TIMEプロキシ セッション作成日を指定します。CREATE_TIME では、指数形式でセッション時間が格納されます(例: 1.4153E+12)。 以下のクエリを使用して、指数形式を Oracle クエリが理解できる形式に変換します。select count(RECORDING_FILE_SIZE), to_char(CREATE_TIME,'99999999999999999999999999990')from recording_file group by CREATE_TIME例:expdppimDBUser/pimDBPassworddirectory=pim-recordings-archivedumpfile=pimRecordedSessions_1410211852.dmp logfile=pimRecordedSessions_1410211852.loginclude=table:\"=\'RECORDING_FILE\'\" query=RECORDING_FILE:\"WHERE CREATE_TIME<=1415286431177\"時間を人間が理解しやすい形式に変換するには、エポック コンバータを使用します。
- SESSION_IDプロキシ セッション ID を指定します。 RECORDING_SESSION テーブルのプロキシ セッションの詳細を使用することにより、この条件を使用して RECORDING_FILE テーブルにデータをアーカイブします。以下の出力が表示されます。Export: Release 11.2.0.2.0 - Production on Tue Oct 28 18:22:03 2014 Copyright (c) 1982, 2009, Oracle and/or its affiliates. All rights reserved. Connected to: Oracle Database 11g Express Edition Release 11.2.0.2.0 - Production Starting "PIM"."SYS_EXPORT_SCHEMA_01": pimDBUser/******** directory=pim-recordings-archive dumpfile=pimRecordedSessions_1413732319919.dmp logfile=pimRecordedSessions_1413732319919.log include=table:"='RECORDING_FILE'" query=RECORDING_FILE:"WHERE CREATE_TIME <= 1413732319919" Estimate in progress using BLOCKS method... Processing object type SCHEMA_EXPORT/TABLE/TABLE_DATA Total estimation using BLOCKS method: 2.062 MB Processing object type SCHEMA_EXPORT/TABLE/TABLE Processing object type SCHEMA_EXPORT/TABLE/INDEX/INDEX Processing object type SCHEMA_EXPORT/TABLE/CONSTRAINT/CONSTRAINT . . exported "PIM"."RECORDING_FILE" 1.083 MB 2 rows Master table "PIM"."SYS_EXPORT_SCHEMA_01" successfully loaded/unloaded ****************************************************************************** Dump file set for PIM.SYS_EXPORT_SCHEMA_01 is: C:\ORA_BACKUP\PIMRECORDEDSESSIONS_1410211852.DMP Job "PIM"."SYS_EXPORT_SCHEMA_01" successfully completed at 18:22:07
- データをアーカイブした後に、記録されたプロキシ セッション データを Oracle データベースから削除します。以下のコマンドを実行します。delete from RECORDING_FILE WHERE [Condition]; commit;記録されたプロキシ セッション データが Oracle サーバにアーカイブされました。
アーカイブされたプロキシ セッション データのリストア(Oracle)
Oracle の impdp ユーティリティを使用して、アーカイブされたプロキシ セッション データをリストアします。
以下のコマンドを実行します。
impdppimDBUser/pimDBPassworddirectory=pim-recordings-archivedumpfile=pimRecordedSessions_1413732319919.dmp logfile= pimRecordedSessions_1413732319919_imp.logTABLE_EXISTS_ACTION=APPEND
以下の出力が表示されます。
Import: Release 11.2.0.2.0 - Production on Tue Oct 28 18:24:45 2014 Copyright (c) 1982, 2009, Oracle and/or its affiliates. All rights reserved. Connected to: Oracle Database 11g Express Edition Release 11.2.0.2.0 - ProductionMaster table "PIM"."SYS_IMPORT_FULL_01" successfully loaded/unloadedStarting "PIM"."SYS_IMPORT_FULL_01": pimDBUser/******** directory=pim-recordings-archive dumpfile=pimRecordedSessions_1413732319919.dmp logfile=pimRecordedSessions_1413732319919_imp.log TABLE_EXISTS_ACTION=APPENDProcessing object type SCHEMA_EXPORT/TABLE/TABLETable "PIM"."RECORDING_FILE" exists. Data will be appended to existing table but all dependent metadata will be skipped due to table_exists_action of appendProcessing object type SCHEMA_EXPORT/TABLE/TABLE_DATA. . imported "PIM"."RECORDING_FILE" 1.083 MB 2 rowsProcessing object type SCHEMA_EXPORT/TABLE/INDEX/INDEXProcessing object type SCHEMA_EXPORT/TABLE/CONSTRAINT/CONSTRAINTJob "PIM"."SYS_IMPORT_FULL_01" successfully completed at 18:24:48
アーカイブされたプロキシ セッション データがリストアされました。