dtutil ユーティリティ
更新 : 2006 年 7 月 17 日
dtutil コマンド プロンプト ユーティリティを使用すると、SQL Server 2005 Integration Services (SSIS) パッケージを管理できます。このユーティリティを使用して、パッケージのコピー、移動、削除を行ったり、パッケージの存在を確認することができます。これらの操作は SSIS パッケージ上で実行できます。このパッケージは、Microsoft SQL Server データベース、SSIS パッケージ ストア、およびファイル システムの 3 つの場所のいずれかに格納されます。パッケージのストレージ型は /SQL、/FILE、および /DTS オプションで指定します。
メモ : |
---|
64 ビット コンピュータでは、32 ビット版と 64 ビット版の両方の dtutil ユーティリティ (dtexec.exe) が Integration Services によってインストールされます。 |
メモ : |
---|
Integration Services のインスタンスに接続している場合、dtutil によって実行される操作の多くは、SQL Server Management Studio で確認しながら実行することもできます。詳細については、「Integration Services パッケージの管理」を参照してください。 |
オプションを入力する順序は任意です。パイプ (|) 文字は OR 演算子を表し、利用可能な値を示すために使用されます。OR パイプで区切られたオプションのうちの 1 つを使用する必要があります。
すべてのオプションは、スラッシュ (/) またはマイナス記号 (-) で始まる必要があります。
引数は、引用符で囲むか、空白を含まない文字列を指定する必要があります。
引用符で囲まれた文字列内に二重引用符がある場合は、単一引用符がエスケープされていることを表します。
パスワードを除いて、オプションおよび引数では大文字と小文字が区別されません。
構文
dtutil /option [value] [/option [value]]...
パラメータ
オプション
説明
/?
コマンド プロンプト オプションを表示します。
/C[opy] location;destinationPathandPackageName
SSIS パッケージに対するコピー操作を指定します。このパラメータを使用するには、先に /FI、/SQ、または /DT オプションを使用してパッケージの場所を指定し、次に、コピー先の場所とコピー先のパッケージ名を指定します。destinationPathandPackageName 引数には、SSIS パッケージのコピー先を指定します。コピー先の location が SQL の場合は、DestUser、DestPassword、および DestServer 引数もコマンドで指定する必要があります。
Copy 操作でコピー先に既存のパッケージが見つかった場合、dtutil によって、パッケージの上書きを確認するプロンプトが表示されます。パッケージを上書きする場合は Y、プログラムを終了する場合は N と応答します。コマンドに Quiet 引数が含まれている場合は、プロンプトは表示されず、既存のパッケージはすべて上書きされます。
/Dec[rypt] password
(省略可)。パスワードが暗号化されているパッケージを読み込むときに使用する暗号化解除用パスワードを設定します。
/Del[ete]
SQL、DTS、または FILE オプションによって指定されたパッケージを削除します。dtutil がパッケージを削除できない場合、プログラムは終了します。
/DestP[assword] password
SQL Server 認証を使用している SQL Server インスタンスに接続するために SQL オプションで使用されるパスワードを指定します。コマンド ラインで DTSUSER オプションを指定せずに DESTPASSWORD を指定すると、エラーが生成されます。
メモ :
可能な場合は、Windows 認証を使用します。.
/DestS[erver] server_instance
保存先が SQL Server となる操作で使用されるサーバー名を指定します。これは、SSIS パッケージの保存時に、ローカル以外のサーバーまたは既定以外のサーバーを識別するために使用されます。コマンド ラインで SQL Server と関連する操作を指定せずに DESTSERVER を指定すると、エラーになります。このオプションとの組み合わせが適しているのは、SIGN SQL、COPY SQL、または MOVE SQL オプションなどの操作を行うコマンドです。
SQL Server インスタンス名は、円記号とインスタンス名をサーバー名に追加することによって指定します。
/DestU[ser] username
SQL Server 認証を使用する SQL Server インスタンスへ接続するために、SIGN SQL オプション、COPY SQL オプション、MOVE SQL オプションで使用するユーザー名を指定します。コマンド ラインで SIGN SQL オプション、COPY SQL オプション、または MOVE SQL オプションを指定せずに DESTUSER を指定すると、エラーになります。
/DT[S] filespec
このオプションは、実行される SSIS パッケージが SSIS パッケージ ストアに存在することを指定します。filespec 引数は相対パスであるため、SSIS パッケージ ストアのルートから始まるパスを指定します。
DT[S] オプションが、次のオプションのいずれかと同じコマンド ライン上に指定された場合、DTEXEC_DTEXECERROR が返されます。
- FILE
- SQL
- SOURCEUSER
- SOURCEPASSWORD
- SOURCESERVER
/En[crypt] {SQL | FILE}; Path;ProtectionLevel[;password]
(省略可)。読み込まれたパッケージを指定された保護レベルおよびパスワードで暗号化し、それを Path で指定された場所に保存します。パスワードが必要かどうかは、ProtectionLevel で判断されます。
- SQL - Path には保存先となるパッケージ名を指定します。
- FILE - Path にはパッケージの完全修飾パスとファイル名を指定します。
- DTS - このオプションは現在サポートされていません。
ProtectionLevel オプションには以下のレベルがあります。
Level 0: 重要な情報を切り離します。
Level 1: ローカル ユーザーの資格情報を使用して重要な情報を暗号化します。
Level 2: 必要なパスワードを使用して重要な情報を暗号化します。
Level 3: 必要なパスワードを使用してパッケージを暗号化します。
Level 4: ローカル ユーザーの資格情報を使用してパッケージを暗号化します。
Level 5: パッケージは SQL Server ストレージの暗号化を使用します。
/Ex[ists]
(省略可)。パッケージが存在するかどうかを判断するために使用されます。dtutil は、SQL オプション、DTS オプション、または FILE オプションのいずれかによって指定されたパッケージを検索します。dtutil が指定されたパッケージを見つけることができない場合、DTEXEC_DTEXECERROR が返されます。
/FC[reate] {SQL | DTS};ParentFolderPath;NewFolderName
(省略可)。NewFolderName で指定された名前で新しいフォルダを作成します。新しいフォルダの場所は、ParentFolderPath によって指定されます。
/FDe[lete] {SQL | DTS}[;ParentFolderPath;FolderName]
(省略可)。FolderName で指定された名前のフォルダを SQL Server または SSIS から削除します。削除するフォルダの場所は、ParentFolderPath で指定されます。
/FDi[rectory] {SQL | DTS};FolderPath[;S]
(省略可)。SSIS または SQL Server 上にあるフォルダの内容 (フォルダとパッケージの両方) を一覧表示します。省略可能な FolderPath パラメータには、内容を表示するフォルダを指定します。S パラメータは、FolderPath で指定されたフォルダのサブフォルダの内容を表示する場合に指定します。
/FE[xists ] {SQL | DTS};FolderPath
(省略可)。指定されたフォルダが SSIS 上または SQL Server 上にあるかどうかを確認します。FolderPath パラメータは、確認するフォルダのパスおよび名前です。
/Fi[le] filespec
このオプションは、実行される SSIS パッケージがファイル システムに存在することを指定します。filespec の値は、汎用名前付け規則 (UNC) パスまたはローカル パスのどちらかで指定できます。
File オプションが、次のオプションのいずれかと同じコマンド ライン上に指定された場合、DTEXEC_DTEXECERROR が返されます。
- DTS
- SQL
- SOURCEUSER
- SOURCEPASSWORD
- SOURCESERVER
/FR[ename] {SQL | DTS} [;ParentFolderPath; OldFolderName;NewFolderName]
(省略可)。SSIS 上または SQL Server 上にあるフォルダの名前を変更します。ParentFolderPath は、名前を変更するフォルダの場所です。OldFolderName はフォルダの現在の名前で、NewFolderName はそのフォルダに付ける新しい名前です。
/H[elp] option
dtutil の各オプションとその使用方法を詳細に説明するヘルプ テキストを表示します。このオプションの引数は省略可能です。引数が含まれている場合、ヘルプ テキストには、指定されたオプションに関する詳細情報が表示されます。次の例では、すべてのオプションに関するヘルプが表示されます。
dtutil /H
次の 2 つの例では、/H オプションを使用して、特定のオプション (この例では /Q [uiet] オプション) に関する詳細なヘルプが表示されます。
dtutil /Help Quiet
dtutil /H Q
/I[DRegenerate]
パッケージの新しい GUID を作成し、パッケージ ID のプロパティを更新します。パッケージをコピーするときに、パッケージ ID が同じままだと、両方のパッケージが同じ GUID でログ ファイルに表示されることになります。この操作では、新しくコピーされたパッケージ用に新しい GUID が作成され、元のパッケージと区別されます。
/M[ove] {SQL | File | DTS}; pathandname
SSIS パッケージに対する移動操作を指定します。このパラメータを使用するには、先に /FI、/SQ、または /DT オプションを使用してパッケージの場所を指定し、次に Move 操作を指定します。この操作には、2 つの引数をセミコロンで区切って指定する必要があります。
- 移動先の引数には、SQL、FILE、または DTS を指定できます。SQL の移動先には、DESTUSER オプション、DESTPASSWORD オプション、および DESTSERVER オプションを含めることができます。
- pathandname 引数には、パッケージの場所を指定します。SQL ではパッケージのパスおよびパッケージ名、FILE では UNC またはローカル パス、DTS では SSIS パッケージ ストアのルートを基準とした相対的な場所をそれぞれ使用します。移動先が FILE または DTS の場合、パスの引数にはファイル名を含めません。代わりに、指定された場所にあるパッケージ名をファイル名として使用します。
MOVE 操作で移動先に既存のパッケージが見つかった場合、dtutil によって、パッケージの上書きを確認するプロンプトが表示されます。パッケージを上書きする場合は Y、プログラムを終了する場合は N と応答します。コマンドに QUIET オプションが含まれている場合は、プロンプトは表示されず、既存のパッケージはすべて上書きされます。
/Q[uiet]
COPY オプション、MOVE オプション、または SIGN オプションを含むコマンドの実行時に示される確認プロンプトが表示されないようにします。この確認プロンプトは、指定されたパッケージと同じ名前のパッケージが対象となるコンピュータに既に存在する場合や、指定されたパッケージが既に署名されている場合に表示されます。
/R[emark] text
コメントをコマンド ラインに追加します。コメントの引数は省略可能です。コメント テキストが空白を含む場合、テキストを引用符で囲む必要があります。1 行のコマンド ラインに複数の REM オプションを含めることができます。
/Si[gn] {SQL | File | DTS}; path; hash
SSIS パッケージに署名します。この操作には、3 つの引数をセミコロンで区切って指定する必要があります。
- 移動先の引数には、SQL、FILE、または DTS を指定できます。SQL の移動先には、DESTUSER オプション、DESTPASSWORD オプション、および DESTSERVER オプションを含めることができます。
- path 引数には、操作の対象となるパッケージの場所を指定します。
- hash 引数には、さまざまな長さの 16 進数文字列で表される認証識別子を指定します。
証明書に関する情報は、CertMgr ユーティリティを使って確認できます。詳細については、MSDN ライブラリのトピック「Signing and Checking Code with Authenticode」 (Authenticode を使用したコードの署名と検証) の「CertMgr」を参照してください。
/SourceP[assword] password
SQL Server 認証を使用する SQL Server インスタンスのデータベースに格納されている SSIS パッケージを取得できるように、SQL オプションおよび SOURCEUSER オプションで使用されるパスワードを指定します。コマンド ラインで SOURCEUSER オプションを指定せずに SOURCEPASSWORD を指定すると、エラーになります。
メモ :
可能な場合は、Windows 認証を使用します。
/SourceS[erver] server_instance
SQL Server に格納されている SSIS パッケージを取得できるように、SQL オプションで使用されるサーバー名を指定します。コマンド ラインで SIGN SQL オプション、COPYSQL オプション、または MOVESQL オプションを指定せずに SOURCESERVER を指定すると、エラーになります。
SQL Server インスタンス名は、円記号とインスタンス名をサーバー名に追加することによって指定します。
/SourceU[ser] username
SQL Server 認証を使用する SQL Server に格納されている SSIS パッケージを取得できるように、SOURCESERVER オプションで使用されるユーザー名を指定します。コマンド ラインで SIGN SQL オプション、COPY SQL オプション、または MOVE SQL オプションを指定せずに SOURCEUSER を指定すると、エラーになります。
メモ :
可能な場合は、Windows 認証を使用します。
/SQ[L] package_path
SSIS パッケージの場所を指定します。このオプションは、パッケージが msdb データベースに格納されることを示します。package_path 引数には、SSIS パッケージのパスと名前を指定します。フォルダ名の最後には円記号を入力します。
SQL オプションが、次のオプションのいずれかと同じコマンド ライン上に指定された場合、DTEXEC_DTEXECERROR が返されます。
- DTS
- FILE
SQL オプションは、オプションを使用しないか、次のオプションのいずれか 1 つを使用します。 - SOURCEUSER
- SOURCEPASSWORD
- SOURCESERVER
SOURCEUSERNAME が含まれていない場合、パッケージへのアクセスに Windows 認証が使用されます。SOURCEPASSWORD は SOURCEUSER が存在する場合のみ使用できます。SOURCEPASSWORD が含まれていない場合、空白のパスワードが使用されます。
重要 :
空白のパスワードは使用しないでください。強力なパスワードを使用してください。
dtutil 終了コード
構文エラーの検出、不適切な引数の使用、オプションの不適切な組み合わせの指定などがあった場合、dtutil は警告を表示して終了コードを設定します。それ以外の場合、"操作は正常に完了しました。"というメッセージが表示されます。次の表は、dtutil ユーティリティが終了時に設定できる値を示しています。
値 | 説明 |
---|---|
0 |
ユーティリティが正常に実行されました。 |
1 |
ユーティリティが失敗しました。 |
4 |
ユーティリティは要求されたパッケージを見つけることができません。 |
5 |
ユーティリティは要求されたパッケージを読み込むことができません。 |
6 |
コマンド ラインに構文エラーまたはセマンティクス エラーのいずれかが含まれているため、ユーティリティはコマンド ラインを解決できません。 |
解説
dtutil でコマンド ファイルやリダイレクトを使用することはできません。
コマンド ライン内でのオプションの順序は重要ではありません。
例
次の例では、コマンド ラインの使用に関する一般的なシナリオについて説明します。
コピーの例
Windows 認証を使用する SQL Server のローカル インスタンス上に msdb データベースがあり、このデータベースに格納されているパッケージを SSIS パッケージ ストアにコピーするには、次の構文を使用します。
dtutil /SQL srcPackage /COPY DTS;destPackage
パッケージをファイル システム上の場所から別の場所にコピーし、そのコピーに別の名前を付けるには、次の構文を使用します。
dtutil /FILE c:\myPackages\mypackage.dtsx /COPY FILE;c:\myTestPackages\mynewpackage.dtsx
ローカル ファイル システム上のパッケージを、別のコンピュータ上でホストされている SQL Server インスタンスにコピーするには、次の構文を使用します。
dtutil / FILE c:\sourcepkg.dtsx / COPY SQL;destpkgname
/DestU[ser] オプションと /DestP[assword] オプションが使用されていないため、Windows 認証の使用が想定されています。
コピー後にパッケージ用の新しい ID を作成するには、次の構文を使用します。
dtutil /I /FILE copiedpkg.dtsx
特定のフォルダにあるすべてのパッケージの新しい ID を作成するには、次の構文を使用します。
for %%f in (C:\test\SSISPackages\*.dtsx) do dtutil.exe /I /FILE %%f
コマンド プロンプトでコマンドを入力するときは、パーセント記号を 1 つ (%) 使用します。バッチ ファイル内でコマンドを使用するときは、パーセント記号を 2 つ (%%) 使用します。
削除の例
Windows 認証を使用する SQL Server のインスタンス上に msdb データベースがあり、このデータベースに格納されているパッケージを削除するには、次の構文を使用します。
dtutil /SQL delPackage /DELETE
SQL Server 認証を使用する SQL Server のインスタンス上に msdb データベースがあり、このデータベースに格納されているパッケージを削除するには、次の構文を使用します。
dtutil /SQL delPackage /SOURCEUSER srcUserName /SOURCEPASSWORD #8nGs*w7F /DELETE
メモ : |
---|
パッケージを名前付きサーバーから削除するには、SOURCESERVER オプションおよびそのオプションの引数を含めます。SQL を使用する場合にのみサーバーを指定できます。 |
SSIS パッケージ ストアに格納されているパッケージを削除するには、次の構文を使用します。
dtutil /DTS delPackage.dtsx /DELETE
ファイル システムに格納されているパッケージを削除するには、次の構文を使用します。
dtutil /FILE c:\delPackage.dtsx /DELETE
存在確認の例
Windows 認証を使用する SQL Server のローカル インスタンス上に msdb データベースがあり、このデータベースにパッケージが存在するかどうかを判断するには、次の構文を使用します。
dtutil /SQL srcPackage /EXISTS
SQL Server 認証を使用する SQL Server のローカル インスタンス上に msdb データベースがあり、このデータベースにパッケージが存在するかどうかを判断するには、次の構文を使用します。
dtutil SQL srcPackage /SOURCEUSER srcUserName /SOURCEPASSWORD *hY$d56b /EXISTS
メモ : |
---|
パッケージが名前付きサーバーに存在するかどうかを判断するには、SOURCESERVER オプションおよびその引数を含めます。サーバーの指定は、SQL オプションを使用することによってのみ行えます。 |
パッケージがローカルのパッケージ ストアに存在するかどうかを判断するには、次の構文を使用します。
dtutil /DTS srcPackage.dtsx /EXISTS
パッケージがローカルのファイル システムに存在するかどうかを判断するには、次の構文を使用します。
dtutil /FILE c:\srcPackage.dtsx /EXISTS
移動の例
SSIS パッケージ ストアに格納されているパッケージを、Windows 認証を使用する SQL Server のローカル インスタンス上の msdb データベースに移動するには、次の構文を使用します。
dtutil /DTS srcPackage.dtsx /MOVE SQL;destPackage
SQL Server 認証を使用する SQL Server のローカル インスタンス上の msdb データベースに格納されているパッケージを、SQL Server 認証を使用する SQL Server の別のローカル インスタンス上の msdb データベースに移動するには、次の構文を使用します。
dtutil /SQL srcPackage /SOURCEUSER srcUserName /SOURCEPASSWORD $Hj45jhd@X /MOVE SQL;destPackage /DESTUSER destUserName /DESTPASSWORD !38dsFH@v
メモ : |
---|
ある名前付きサーバーから別の名前付きサーバーにパッケージを移動するには、SOURCES オプションと DESTS オプション、および関連する引数を含めます。SQL を使用する場合にのみサーバーを指定できます。 |
SSIS パッケージ ストアに格納されているパッケージを移動するには、次の構文を使用します。
dtutil /DTS srcPackage.dtsx /MOVE DTS;destPackage.dtsx
ファイル システムに格納されているパッケージを移動するには、次の構文を使用します。
dtutil /FILE c:\srcPackage.dtsx /MOVE FILE;c:\destPackage.dtsx
署名の例
Windows 認証を使用する SQL Server のローカル インスタンス上に SQL Server データベースがあり、このデータベースに格納されているパッケージに署名するには、次の構文を使用します。
dtutil /FILE srcPackage.dtsx /SIGN FILE;destpkg.dtsx;1767832648918a9d989fdac9819873a91f919
証明書に関する情報を確認するには、CertMgr を使用します。ハッシュ コードを確認するには、CertMgr ユーティリティで証明書を選択し、[表示] をクリックしてプロパティを表示します。[詳細] タブで、証明書に関する詳細な情報を確認できます。Thumbprint プロパティはハッシュ値として使用されます。このとき、スペースは削除されます。
メモ : |
---|
上の例で使用しているハッシュは実際のハッシュではありません。 |
詳細については、「Signing and Checking Code with Authenticode」 (Authenticode を使用したコードの署名と検証) の「CertMgr」を参照してください。
暗号化の例
次の例では、完全パッケージ暗号化とパスワードを使用してファイルベースの PackageToEncrypt.dtsx を暗号化し、ファイルベースの EncryptedPackage.dts として保存します。暗号化に使用されるパスワードは、EncPswd です。
dtutil /FILE PackageToEncrypt.dtsx /ENCRYPT file;EncryptedPackage.dtsx;3;EncPswd
参照
その他の技術情報
Business Intelligence Development Studio でパッケージを実行する方法
64 ビット コンピュータ上での Integration Services の使用上の注意
ヘルプおよび情報
変更履歴
リリース | 履歴 |
---|---|
2006 年 7 月 17 日 |
|
2005 年 12 月 5 日 |
|