6 WebLogic永続ストアの管理
永続ストアの管理
WebLogicストア管理ユーティリティを使用すると、管理者はWebLogic永続ストアのトラブルシューティングを行うことができます。ストア・ユーティリティは、実行中のサーバー・インスタンスによって現在開かれていないストアのみで動作します。このユーティリティは、Javaコマンド行またはWebLogic Scripting Tool (WLST)から実行できます。詳細は、「Javaコマンド行を使用したストアの管理」および「WLSTを使用したストアの管理」を参照してください。
ストア管理の最も一般的な使用例は、サイズを減らすためにファイル・ストアを圧縮する場合や、トラブルシューティングを目的としてファイル・ストアまたはJDBCストアの内容をXMLファイルにダンプする場合です。これらの使用例については後ほど説明します。
表6-1に、JavaおよびWLSTで使用できるストア管理コマンドを示します。
表6-1 永続ストアの管理オプション
Javaコマンド | WLSTメソッド | 機能 |
---|---|---|
|
|
使用できるコマンド、使用方法、使用例を表示します。 |
|
|
ファイル・ストアによって占有されているスペースを圧縮およびデフラグします。このコマンドはオフラインでのみ機能し、JDBCストアには使用できません。 ノート: ファイル・ストアの圧縮は、通常、ファイル・ストアが再び現在のサイズになるとわかっている場合は必要ありません。ファイル・ストアは、削除したレコードによって解放されたスペースを自動的に再利用し、新しいレコードに対して内部スペースが足りない場合にのみ展開します。また、ファイル・ストアは通常、ほとんどの永続レコードは存続期間が短いため、断片化されません。 |
|
|
それ以降の処理のために既存のファイル・ストアを開きます。ファイル・ストアが存在しない場合は、 |
|
|
それ以降の処理のために既存のJDBCストアを開きます。JDBCストアが存在しない場合は、開かれた状態の新しいJDBCストアが作成されます。 |
|
|
ストアまたは接続の内容を、人間が読取れる形式でユーザー指定のXMLファイルにダンプします。XMLファイルの形式は、永続ストアの診断イメージで使用する形式と同じです。 |
|
|
ストア名、開かれているストア、またはストア内の接続を一覧表示します。 |
|
|
指定したストア内の接続のリストを戻します(スクリプト・アクセス用)。 |
|
|
開かれているストアのリストを戻します(スクリプト・アクセス用)。 |
|
|
ストア管理ツールの呼出しオプションを一覧表示します。 |
|
|
追加情報(スタック・トレースなど)の表示を制御します。 |
|
|
開かれているストアを閉じます。 |
|
|
ストア管理セッションを終了します。 |
永続ストアは、ファイル・システム(ファイル・ストア)またはJDBC対応のデータベース(JDBCストア)によってバッキングできます。openfile
/openfilestore()
オプションとopenjdbc
/openjdbcstore()
オプションを除けば、これら2種類のストアを操作するオプションに違いはありません。
ほとんどのコマンドとメソッドはストア名に対して実行でき、それ以外のコマンドやメソッドも接続名に対して実行できます。ストア接続は、永続ストア内のレコードの論理グループです。たとえば、JMSおよびJTAサブシステムでは、それぞれに対応するレコードが同じファイル・ストア内の別々の接続に永続化されます。
Javaコマンド行を使用したストア管理
Javaコマンド行から永続ストア管理ユーティリティを起動するには、次のように入力します。
> java weblogic.store.Admin > storeadmin->
ストア管理ヘルプの使用
help
と入力すると、使用できるストア管理コマンドの詳細な説明と、典型的なコマンド使用例が表示されます。たとえば、次の包括的なヘルプは、ストア名、開かれているストア、またはストア内の接続を一覧表示するlist
コマンドに提供されます。
storeadmin->help list Command: list Description: lists store names, open stores, or connections in a store Usage: list [-store storename|-dir dir] Examples: list #lists all opened stores by storename list -store store1 #lists all connections in store1 list -dir dir1 #lists all storenames found in dir1
ファイル・ストアの内容のダンプ
ここでは、一連のストア管理コマンドを使用して、myfilestore
に指定したファイル・ストアの内容を、人間が読取れるXMLファイル形式で一時ディレクトリにエクスポートする例を示します。この例では、ストアの接続名や実際のレコードの内容はダンプされません。これらをダンプするには、-conn
パラメータや-deep
パラメータを指定する必要があります。
> storeadmin-> list -dir . > storeadmin-> openfile -store myfilestore -dir . > storeadmin-> dump -store myfilestore -out d:\tmp\filestore1-out > storeadmin-> close -store myfilestore
list
コマンドは、現在のディレクトリ内にあるすべてのストア名を表示します。dump
やlist
(開かれているストアを一覧表示する場合のみ)などの管理機能を呼び出す前に、まずopenfile
コマンドやopenjdbc
コマンドを実行してファイルやJDBCストアを開く(または作成して開く)必要があります。開かれているストアの管理操作が完了したら、close
コマンドでストアを閉じる必要があります。
ファイル・ストアの圧縮
ここでは、mystores
ディレクトリ内でファイル・ストアによって占有されるスペースを、compact
コマンドを使用して圧縮する例を示します。
> storeadmin->compact -dir c:\mystores -tempdir c:\tmp
compactコマンドは、開かれていないファイル・ストアに対してのみ実行できます。-dir
ソース・ディレクトリ内のファイルを格納するストアはすべて閉じておく必要があります。また、「tempdir」
一時ディレクトリには、少なくともソース・ディレクトリと同程度の余分なスペースが必要です。一時ディレクトリとして、ソース・ディレクトリ内のディレクトリを指定することはできません。圧縮が正常に完了すると、新たに圧縮されたストア・ファイルがmystores
ディレクトリに格納されます。さらに、tmp
ディレクトリの下に一意の名前の新しいディレクトリが作成され、圧縮前のストア・ファイルが格納されます。
WLSTを使用したストア管理
WLSTインタフェースには、Javaコマンド行にはないメソッドが用意されています。たとえば、関連するJavaオブジェクトを戻し、WLSTのスクリプトで使用できるgetopenstores
およびgetstoreconns
などです。
ノート:
このリリースでは、WebLogic Scripting Tool (WLST)をオフラインで使用する場合には、ThreeStepThreshold
、Worker Count
およびWorker Preferred Batch Size
はサポートされません。
ストア管理ヘルプの使用
WLSTから永続ストア管理ユーティリティにアクセスするには、次のように入力します。
> java weblogic.WLST
helpstore()
と入力すると、使用できるストア管理コマンドの詳細な説明と、典型的なコマンド使用例が表示されます。たとえば、次のヘルプが、ストア名、開いているストア、またはストア内の接続を一覧表示するlist
コマンドに提供されます。
> wls:/offline> helpstore(liststore) lists storenames, opened stores, or connections (for interactive access) Parameters store and dir cannot both be specified concurrently. Usage: liststore(store='null',dir='null') @param store [optional] a previously opened JDBC or File store's name. If store is specified, all connections in the store are listed. @param dir [optional] directory for which to list available store names If dir is specified, all store names in the directory are listed. If neither store nor dir are specified, all open store names are listed. @return 1 on success, 0 on failure
なお、等号記号=
が付いているパラメータは省略可能です。たとえば、compactstore
メソッドは、compactstore(dir='storename', tempdir='/tmp')
のように呼び出すこともできますが、compactstore(store='storename')
のように呼び出してtempdir
のデフォルト値を使用することもできます。省略可能なパラメータのデフォルト値は、コマンド固有のヘルプに一覧表示されます。
WLSTを使用したJDBCストアの内容のダンプ
ここでは、dumpstore
メソッド(store、outfile、conn='null'、deep='false'
)を使用して、myJDBCStore
というJDBCストアの内容を、人間が読めるXMLファイル形式でmystoredump-out.xml
というファイルにエクスポートする例を示します。この例では、ストアの接続名や実際のレコードの内容はダンプされません。これらをダンプするには、オプションのconn
とdeep
パラメータを指定する必要があります。
> wls:/offline> openjdbcstore('myJDBCStore', 'oracle.jdbc.OracleDriver', 'jdbc:oracle:thin:@test2k31:1521:test120a', './wlstoreadmin-dump.props', 'jmstest', 'jmstest', '', 'jdbcstoreprefix') dumpstore('myJDBCStore', 'mystoredump-out') closestore('myJDBCStore')
dumpstore
やliststore
(開かれているストアを一覧表示する場合のみ)などの管理機能を呼び出す前に、まずopenjdbcstore
メソッドやopenfilestore
メソッドを使用してストアを開く(または作成して開く)必要があります。開かれているストアの管理操作が完了したら、closestore
コマンドでストアを閉じる必要があります。
WLSTを使用したファイル・ストアの圧縮
ここでは、compactstore
メソッド(dir,tempdir='null')
を使用してmystores
ディレクトリ内でファイル・ストアのファイルによって占有されるスペースを圧縮するWLSTスクリプトの例を示します。
> wls:/offline> compactstore('c:\mystores','c:\tmpmystore.dir')
compactstore()
メソッドは、開かれていないファイル・ストアに対してのみ使用できます。「dir」
ソース・ディレクトリ内のファイルを格納するストアはすべて閉じておく必要があります。また、「tempdir」
一時ディレクトリには、少なくともソース・ディレクトリと同程度の余分なスペースが必要です。一時ディレクトリとして、ソース・ディレクトリ内のディレクトリを指定することはできません。圧縮が正常に完了すると、新たに圧縮されたストア・ファイルがmystores
ディレクトリに格納されます。さらに、tmpmystore
ディレクトリの下に一意の名前の新しいディレクトリが作成され、圧縮前のストア・ファイルが格納されます。