Amazon RDS for SQL Server での SQL Server Integration Services のサポート
Microsoft SQL Server Integration Services (SSIS) は、幅広いデータ移行タスクの実行に使用できるコンポーネントです。SSIS は、データ統合およびワークフローアプリケーションに対応したプラットフォームです。データの抽出、変換、ロード (ETL) に使用されるデータウェアハウジングツールを備えています。このツールを使用して、SQL Server データベースのメンテナンスと多次元キューブデータの更新を自動化することもできます。
SSIS プロジェクトはパッケージに編成されて、XML ベースの .dtsx ファイルとして保存されます。パッケージには、制御フローとデータフローを含めることができます。データフローを使用して、ETL オペレーションを表します。デプロイ後、パッケージは SQL Server の SSISDB データベースに保存されます。SSISDB は、完全復旧モードで動作するオンライントランザクション処理 (OLTP) データベースです。
Amazon RDS for SQL Server は RDS DB インスタンスでの SSIS の直接実行をサポートしています。既存または新規の DB インスタンスで SSIS を有効にできます。SSIS はデータベースエンジンと同じ DB インスタンスにインストールされます。
RDS は、次のバージョンで SQL Server スタンダードエディションおよびエンタープライズエディションの SSIS をサポートします。
-
SQL Server 2022、すべてのバージョン
-
SQL Server 2019、バージョン 15.00.4043.16.v1 以降
-
SQL Server 2017、バージョン 14.00.3223.3.v1 以降
-
SQL Server 2016、バージョン 13.00.5426.0.v1 以降
制限と推奨事項
RDS for SQL Server で SSIS を実行する場合は、以下の制限と推奨事項が適用されます。
-
また、DB インスタンスには、
clr enabled
パラメータが 1 に設定されたパラメータグループが関連付けられている必要があります。詳細については、「SSIS のパラメータの変更」を参照してください。注記
SQL Server 2017 または 2019 で
clr enabled
パラメータを有効にしている場合、DB インスタンスで共通言語ランタイム (CLR) を使用できません。詳細については、「サポート対象外の機能とサポートが制限されている機能」を参照してください。 -
以下の制御フロータスクがサポートされています。
Analysis Services DDL 実行タスク
Analysis Services 処理タスク
一括挿入タスク
データベース整合性チェックタスク
データフロータスク
データマイニングクエリタスク
データプロファイリングタスク
パッケージ実行タスク
SQL Server エージェントジョブ実行タスク
SQL 実行タスク
T-SQL ステートメント実行タスク
オペレーター通知タスク
インデックス再構築タスク
インデックス再編成タスク
データベース縮小タスク
データベース転送タスク
ジョブ転送タスク
ログイン転送タスク
SQL Server オブジェクト転送タスク
統計更新タスク
-
プロジェクトのデプロイのみがサポートされています。
-
SQL Server エージェントを使用した SSIS パッケージの実行がサポートされています。
-
SSIS ログレコードは、ユーザーが作成したデータベースにのみ挿入できます。
-
ファイルの操作には
D:\S3
フォルダのみを使用します。他のディレクトリにあるファイルは削除されます。ファイルの場所について、そのほか以下の詳細にも注意してください。-
SSIS プロジェクトの入力ファイルと出力ファイルは
D:\S3
フォルダに配置します。 -
データフロータスクの場合、
BLOBTempStoragePath
とBufferTempStoragePath
の場所をD:\S3
フォルダ内のファイルに変更します。ファイルパスはD:\S3\
で始まる必要があります。 -
ファイル接続に使用されるすべてのパラメータ、可変、表現が
D:\S3
フォルダを指していることを確認します。 -
マルチ AZ インスタンスでは、SSIS によって
D:\S3
フォルダに作成されたファイルは、フェイルオーバー後に削除されます。詳細については、「S3 統合のマルチ AZ の制限」を参照してください。 -
SSIS によって
D:\S3
フォルダに作成されたファイルは、耐久性を高めるために、Amazon S3 バケットにアップロードします。
-
-
列のインポートと列のエクスポートの変換、およびデータフロータスクのスクリプトコンポーネントはサポートされていません。
-
SSIS パッケージの実行時にダンプを有効にしたり、SSIS パッケージにデータタップを追加したりすることはできません。
-
SSIS スケールアウト機能はサポートされていません。
-
プロジェクトを直接デプロイすることはできません。この機能を実行するための RDS ストアドプロシージャが提供されています。詳細については、「SSIS プロジェクトのデプロイ」を参照してください。
-
RDS にデプロイする SSIS プロジェクト (.ispac) ファイルは
DoNotSavePasswords
保護モードで構築します。 -
SSIS は、リードレプリカを使用する Always On インスタンスではサポートされていません。
-
SSIS
オプションに関連付けられている SSISDB データベースをバックアップすることはできません。 -
SSIS の他のインスタンスからの SSISDB データベースのインポートと復元はサポートされていません。
-
他の SQL Server DB インスタンスまたは Oracle データソースに接続できます。RDS for SQL Server 上の SSIS では、MySQL または PostgreSQL などの他のデータベースエンジンへの接続はサポートされていません。Oracle データソースへの接続に関する詳細については、Oracle OLEDB とリンクされたサーバー を参照してください。
SSIS の有効化
SSIS を有効にするには、DB インスタンスに SSIS オプションを追加します。以下のプロセスを使用します。
-
新しいオプショングループを作成するか、既存のオプショングループを選択します。
-
オプショングループに [
SSIS
] オプションを追加します。 -
新しいパラメータグループを作成するか、既存のパラメータグループを選択します。
-
パラメータグループを変更して、
clr enabled
パラメータを 1 に設定します。 -
オプショングループとパラメータグループを DB インスタンスに関連付けます。
-
Amazon S3 統合を有効にする
注記
DB インスタンスに既に SSISDB という名前のデータベースがある場合や、SSIS ログインが予約されている場合、そのインスタンスで SSIS を有効にすることはできません。
SSIS のオプショングループの作成
SSIS を使用するには、使用する DB インスタンスの SQL Server のエディションとバージョンに対応するオプショングループを作成または変更します。そのためには、AWS Management Console または AWS CLI を使用します。
次の手順では、SQL Server Standard Edition 2016 のオプショングループを作成します。
オプショングループを作成するには
AWS Management Console にサインインし、Amazon RDS コンソール (https://console.aws.amazon.com/rds/
) を開きます。 -
ナビゲーションペインで、[オプショングループ] を選択します。
-
[Create group] (グループの作成) を選択します。
-
[Create subnet group(オプショングループの作成)] ウィンドウで以下を行います。
-
[名前] に、AWS アカウント内で一意のオプショングループ名 (
ssis-se-2016
など) を入力します。名前には、英字、数字、ハイフンのみを使用できます。 -
[説明] に、オプショングループの簡単な説明 (
SSIS option group for SQL Server SE 2016
など) を入力します。この説明は表示用に使用されます。 -
[エンジン] で [sqlserver-se] を選択します。
-
[メジャーエンジンのバージョン] で、[13.00] を選択します。
-
-
[作成] を選択します。
次の手順では、SQL Server Standard Edition 2016 のオプショングループを作成します。
オプショングループを作成するには
-
以下のいずれかのコマンドを実行します。
Linux、macOS、Unix の場合:
aws rds create-option-group \ --option-group-name
ssis-se-2016
\ --engine-namesqlserver-se
\ --major-engine-version13.00
\ --option-group-description "SSIS option group for SQL Server SE 2016
"Windows の場合:
aws rds create-option-group ^ --option-group-name
ssis-se-2016
^ --engine-namesqlserver-se
^ --major-engine-version13.00
^ --option-group-description "SSIS option group for SQL Server SE 2016
"
オプショングループへの SSIS オプションの追加
次に、AWS Management Console または AWS CLI を使用して SSIS
オプションをオプショングループに追加します。
SSIS オプションを追加するには
AWS Management Console にサインインし、Amazon RDS コンソール (https://console.aws.amazon.com/rds/
) を開きます。 -
ナビゲーションペインで、[オプショングループ] を選択します。
-
作成したオプショングループ (この例では ssis-se-2016) を選択します。
-
[オプションの追加] を選択します。
-
[オプションの詳細] で、[オプション名] として [SSRS] を選択します。
-
[スケジュール] で、オプションをすぐに追加するか、次のメンテナンスウィンドウで追加するかを選択します。
-
[オプションを追加] を選択します。
SSIS オプションを追加するには
-
オプショングループに [
SSIS
] オプションを追加します。Linux、macOS、Unix の場合:
aws rds add-option-to-option-group \ --option-group-name
ssis-se-2016
\ --options OptionName=SSIS \ --apply-immediatelyWindows の場合:
aws rds add-option-to-option-group ^ --option-group-name
ssis-se-2016
^ --options OptionName=SSIS ^ --apply-immediately
SSIS のパラメータグループの作成
SSIS で使用する DB インスタンスの SQL Server のエディションとバージョンに対応する clr enabled
パラメータのパラメータグループを作成または変更します。
以下の例では、SQL Server Standard Edition 2016 のパラメータグループを作成します。
パラメータグループを作成するには
AWS Management Console にサインインし、Amazon RDS コンソール (https://console.aws.amazon.com/rds/
) を開きます。 -
ナビゲーションペインで、[パラメータグループ] を選択します。
-
[パラメータグループの作成] を選択します。
-
[パラメータグループの作成] ペインで、次の操作を行います。
-
[パラメータグループファミリー] で、[sqlserver-se-13.0] を選択します。
-
[グループ名] に、パラメータグループの識別子 (
ssis-sqlserver-se-13
など) を入力します。 -
[説明] に「
clr enabled parameter group
」と入力します。
-
-
[作成] を選択します。
以下の例では、SQL Server Standard Edition 2016 のパラメータグループを作成します。
パラメータグループを作成するには
-
以下のいずれかのコマンドを実行します。
Linux、macOS、Unix の場合:
aws rds create-db-parameter-group \ --db-parameter-group-name
ssis-sqlserver-se-13
\ --db-parameter-group-family "sqlserver-se-13.0
" \ --description "clr enabled parameter group
"Windows の場合:
aws rds create-db-parameter-group ^ --db-parameter-group-name
ssis-sqlserver-se-13
^ --db-parameter-group-family "sqlserver-se-13.0
" ^ --description "clr enabled parameter group
"
SSIS のパラメータの変更
DB インスタンスの SQL Server のエディションとバージョンに対応するパラメータグループの clr enabled
パラメータを変更します。SSIS の場合、clr
enabled
パラメータを 1 に設定します。
以下の手順では、SQL Server Standard Edition 2016 用に作成したパラメータグループを変更します。
パラメータグループを変更するには
AWS Management Console にサインインし、Amazon RDS コンソール (https://console.aws.amazon.com/rds/
) を開きます。 -
ナビゲーションペインで、[パラメータグループ] を選択します。
-
[ssis-sqlserver-se-13] などのパラメータグループを選択します。
-
[パラメータ] で、パラメータのリストを
clr
でフィルタ処理します。 -
[clr enabled (clr 有効化)] を選択します。
-
[Edit parameters] を選択します。
-
[Values (値)] から [1] を選択します。
-
[Save changes] (変更を保存) をクリックします。
以下の手順では、SQL Server Standard Edition 2016 用に作成したパラメータグループを変更します。
パラメータグループを変更するには
-
以下のいずれかのコマンドを実行します。
Linux、macOS、Unix の場合:
aws rds modify-db-parameter-group \ --db-parameter-group-name
ssis-sqlserver-se-13
\ --parameters "ParameterName='clr enabled',ParameterValue=1
,ApplyMethod=immediate"Windows の場合:
aws rds modify-db-parameter-group ^ --db-parameter-group-name
ssis-sqlserver-se-13
^ --parameters "ParameterName='clr enabled',ParameterValue=1
,ApplyMethod=immediate"
オプショングループとパラメータグループを DB インスタンスに関連付ける
SSIS オプショングループおよびパラメータグループを DB インスタンスに関連付けるには、AWS Management Console または AWS CLI を使用します。
注記
既存のインスタンスを使用する場合は、このインスタンスに Active Directory ドメインと AWS Identity and Access Management (IAM) ロールが既に関連付けられている必要があります。新しいインスタンスを作成する場合は、既存の Active Directory ドメインと IAM ロールを指定します。詳細については、「RDS for SQL Server による Active Directory の操作」を参照してください。
SSIS の有効化を完了するには、SSIS オプショングループおよびパラメータグループを新規または既存の DB インスタンスに関連付けます。
-
新しい DB インスタンスの場合は、インスタンスを起動するときにそれらを関連付けます。詳細については、「Amazon RDS DB インスタンスの作成」を参照してください。
-
既存の DB インスタンスの場合は、インスタンスを変更することでそれらを関連付けます。詳細については、「Amazon RDS DB インスタンスを変更する」を参照してください。
SSIS オプショングループおよびパラメータグループを新規または既存の DB インスタンスに関連付けることができます。
SSIS オプショングループおよびパラメータグループを使用してインスタンスを作成するには
-
オプショングループの作成時に使用したものと同じ DB エンジンのタイプとメジャーバージョンを指定します。
Linux、macOS、Unix の場合:
aws rds create-db-instance \ --db-instance-identifier
myssisinstance
\ --db-instance-classdb.m5.2xlarge
\ --enginesqlserver-se
\ --engine-version13.00.5426.0.v1
\ --allocated-storage100
\ --manage-master-user-password \ --master-usernameadmin
\ --storage-typegp2
\ --license-modelli
\ --domain-iam-role-namemy-directory-iam-role
\ --domainmy-domain-id
\ --option-group-namessis-se-2016
\ --db-parameter-group-namessis-sqlserver-se-13
Windows の場合:
aws rds create-db-instance ^ --db-instance-identifier
myssisinstance
^ --db-instance-classdb.m5.2xlarge
^ --enginesqlserver-se
^ --engine-version13.00.5426.0.v1
^ --allocated-storage100
^ --manage-master-user-password ^ --master-usernameadmin
^ --storage-typegp2
^ --license-modelli
^ --domain-iam-role-namemy-directory-iam-role
^ --domainmy-domain-id
^ --option-group-namessis-se-2016
^ --db-parameter-group-namessis-sqlserver-se-13
インスタンスを変更し、SSIS オプショングループおよびパラメータグループを関連付けるには
-
以下のいずれかのコマンドを実行します。
Linux、macOS、Unix の場合:
aws rds modify-db-instance \ --db-instance-identifier
myssisinstance
\ --option-group-namessis-se-2016
\ --db-parameter-group-namessis-sqlserver-se-13
\ --apply-immediatelyWindows の場合:
aws rds modify-db-instance ^ --db-instance-identifier
myssisinstance
^ --option-group-namessis-se-2016
^ --db-parameter-group-namessis-sqlserver-se-13
^ --apply-immediately
S3 統合を有効にする
SSIS プロジェクト (.ispac) ファイルをデプロイのためにホストにダウンロードするには、S3 ファイル統合を使用します。詳細については、「Amazon RDS for SQL Server DB インスタンスと Amazon S3 の統合」を参照してください。
SSISDB の管理権限
SSIS オプションを使用してインスタンスを作成または変更すると、その結果、SSISDB データベースのマスターユーザーには、ssis_admin および ssis_logリーダー ロールが付与されます。マスターユーザーには SSISDB に対する以下の権限があります。
-
ssis_admin ロールの変更
-
ssis_logリーダー ロールの変更
-
任意のユーザーの変更
マスターユーザーは SQL 認証ユーザーであるため、マスターユーザーを使用して SSIS パッケージを実行することはできません。マスターユーザーはこれらの権限を使用して新しい SSISDB ユーザーを作成し、それらのユーザーを ssis_admin および ssis_logリーダー ロールに追加できます。これは、ドメインユーザーに SSIS を使用するアクセス許可を付与するのに役立ちます。
SSIS 用の Windows 認証ユーザーの設定
マスターユーザーは、以下のコード例を使用して、SSISDB に Windows 認証ログインを設定し、必要な手順に対するアクセス許可を付与できます。これにより、ドメインユーザーに SSIS パッケージのデプロイと実行、S3 ファイル転送手順の使用、認証情報の作成、および SQL Server エージェントプロキシの操作を行うアクセス許可が付与されます。詳細については、Microsoft ドキュメントの「Credentials (Database Engine)
注記
必要に応じて、Windows 認証ユーザーに以下のアクセス許可の一部またはすべてを付与できます。
-- Create a server-level SQL login for the domain user, if it doesn't already exist USE [master] GO CREATE LOGIN [
mydomain
\user_name
] FROM WINDOWS GO -- Create a database-level account for the domain user, if it doesn't already exist USE [SSISDB] GO CREATE USER [mydomain
\user_name
] FOR LOGIN [mydomain
\user_name
] -- Add SSIS role membership to the domain user ALTER ROLE [ssis_admin] ADD MEMBER [mydomain
\user_name
] ALTER ROLE [ssis_logreader] ADD MEMBER [mydomain
\user_name
] GO -- Add MSDB role membership to the domain user USE [msdb] GO CREATE USER [mydomain
\user_name
] FOR LOGIN [mydomain
\user_name
] -- Grant MSDB stored procedure privileges to the domain user GRANT EXEC ON msdb.dbo.rds_msbi_task TO [mydomain
\user_name
] with grant option GRANT SELECT ON msdb.dbo.rds_fn_task_status TO [mydomain
\user_name
] with grant option GRANT EXEC ON msdb.dbo.rds_task_status TO [mydomain
\user_name
] with grant option GRANT EXEC ON msdb.dbo.rds_cancel_task TO [mydomain
\user_name
] with grant option GRANT EXEC ON msdb.dbo.rds_download_from_s3 TO [mydomain
\user_name
] with grant option GRANT EXEC ON msdb.dbo.rds_upload_to_s3 TO [mydomain
\user_name
] with grant option GRANT EXEC ON msdb.dbo.rds_delete_from_filesystem TO [mydomain
\user_name
] with grant option GRANT EXEC ON msdb.dbo.rds_gather_file_details TO [mydomain
\user_name
] with grant option GRANT EXEC ON msdb.dbo.sp_add_proxy TO [mydomain
\user_name
] with grant option GRANT EXEC ON msdb.dbo.sp_update_proxy TO [mydomain
\user_name
] with grant option GRANT EXEC ON msdb.dbo.sp_grant_login_to_proxy TO [mydomain
\user_name
] with grant option GRANT EXEC ON msdb.dbo.sp_revoke_login_from_proxy TO [mydomain
\user_name
] with grant option GRANT EXEC ON msdb.dbo.sp_delete_proxy TO [mydomain
\user_name
] with grant option GRANT EXEC ON msdb.dbo.sp_enum_login_for_proxy to [mydomain
\user_name
] with grant option GRANT EXEC ON msdb.dbo.sp_enum_proxy_for_subsystem TO [mydomain
\user_name
] with grant option GRANT EXEC ON msdb.dbo.rds_sqlagent_proxy TO [mydomain
\user_name
] WITH GRANT OPTION -- Add the SQLAgentUserRole privilege to the domain user USE [msdb] GO ALTER ROLE [SQLAgentUserRole] ADD MEMBER [mydomain
\user_name
] GO -- Grant the ALTER ANY CREDENTIAL privilege to the domain user USE [master] GO GRANT ALTER ANY CREDENTIAL TO [mydomain
\user_name
] GO
SSIS プロジェクトのデプロイ
RDS では、SQL Server Management Studio (SSMS) または SSIS の手順を使用して SSIS プロジェクトを直接デプロイすることはできません。Amazon S3 からプロジェクトファイルをダウンロードしてデプロイするには、RDS ストアドプロシージャを使用します。
ストアドプロシージャを実行するには、ストアドプロシージャの実行アクセス許可を付与した任意のユーザーとしてログインします。詳細については、「SSIS 用の Windows 認証ユーザーの設定」を参照してください。
SSIS プロジェクトをデプロイするには
-
プロジェクト (.ispac) ファイルをダウンロードします。
exec msdb.dbo.rds_download_from_s3 @s3_arn_of_file='arn:aws:s3:::
bucket_name
/ssisproject
.ispac', [@rds_file_path='D:\S3\ssisproject
.ispac'], [@overwrite_file=1]; -
以下のことを確認してから、デプロイタスクを送信します。
-
フォルダが SSIS カタログに存在する。
-
プロジェクト名が、SSIS プロジェクトの開発中に使用したプロジェクト名と一致する。
exec msdb.dbo.rds_msbi_task @task_type='SSIS_DEPLOY_PROJECT', @folder_name='
DEMO
', @project_name='ssisproject
', @file_path='D:\S3\ssisproject
.ispac'; -
デプロイタスクのステータスのモニタリング
デプロイタスクのステータスを追跡するには、rds_fn_task_status
関数を呼び出します。2 つのパラメータを使用します。1 つめのパラメータは、SSIS に適用されないため、常に NULL
を設定してください。2 つめのパラメータは、タスク ID を受け入れます。
全タスクのリストを見るには、以下の例にあるように、初期のパラメータを NULL
に設定し、2 つめのパラメータを 0
に設定します。
SELECT * FROM msdb.dbo.rds_fn_task_status(NULL,
0
);
特定のタスクを受け取るには、以下の例にあるように、初期のパラメータを NULL
に設定し、2 つめのパラメータをタスク ID に設定します。
SELECT * FROM msdb.dbo.rds_fn_task_status(NULL,
42
);
rds_fn_task_status
機能は次の情報を返します。
出力パラメータ |
説明 |
---|---|
|
タスクの ID。 |
|
|
|
SSIS タスクには該当しません。 |
|
タスクの進行状況の割合。 |
|
タスクにかかった時間 (分単位)。 |
|
タスクのステータス。有効な状態には以下のものがあります。
|
|
タスクに関する追加情報。処理中にエラーが発生した場合、この列にエラーに関する情報が含まれます。 |
|
タスクのステータスが最後に更新された日時。 |
|
タスクが作成された日時。 |
|
SSIS タスクには該当しません。 |
|
SSIS タスクには該当しません。 |
|
SSIS タスクには該当しません。 |
|
SSIS タスクには該当しません。 |
|
SSIS タスクには該当しません。 |
|
SSIS タスクに関連付けられたメタデータ。 |
SSIS の使用
SSIS プロジェクトを SSIS カタログにデプロイした後、SSMS から直接パッケージを実行するか、SQL Server エージェントを使用してパッケージをスケジュールできます。SSIS パッケージを実行するには、Windows 認証のログインを使用する必要があります。詳細については、「SSIS 用の Windows 認証ユーザーの設定」を参照してください。
トピック
SSIS プロジェクトのデータベース接続マネージャーの設定
接続マネージャーを使用する場合、以下のタイプの認証を使用できます。
-
AWS Managed Active Directory を使用したローカルデータベース接続の場合、SQL 認証または Windows 認証を使用できます。Windows 認証の場合、接続文字列のサーバー名として
を使用します。DB_instance_name
.fully_qualified_domain_name
例えば、
myssisinstance.corp-ad.example.com
を使用します。ここで、myssisinstance
は DB インスタンス名、corp-ad.example.com
は完全修飾ドメイン名です。 -
リモート接続の場合は、常に SQL 認証を使用します。
-
セルフマネージド Active Directory を使用したローカルデータベース接続の場合、SQL 認証または Windows 認証を使用できます。Windows 認証の場合、接続文字列のサーバー名として
または.
を使用します。LocalHost
SSIS プロキシの作成
SQL Server エージェントを使用して SSIS パッケージをスケジュールできるようにするには、SSIS 認証情報と SSIS プロキシを作成します。これらの手順を Windows 認証ユーザーとして実行します。
SSIS 認証情報を作成するには
-
プロキシの認証情報を作成します。そのためには、SSMS または以下の SQL ステートメントを使用できます。
USE [master] GO CREATE CREDENTIAL [SSIS_Credential] WITH IDENTITY = N'
mydomain
\user_name
', SECRET = N'mysecret
' GO注記
IDENTITY
はドメイン認証ログインであることが必要です。
をドメイン認証ログインのパスワードに置き換えます。mysecret
SSISDB プライマリホストが変更されるたびに、SSIS プロキシ認証情報を変更して、新しいホストがそれらのホストにアクセスできるようにします。
SSIS プロキシを作成するには
-
以下の SQL ステートメントを使用して、プロキシを作成します。
USE [msdb] GO EXEC msdb.dbo.sp_add_proxy @proxy_name=N'SSIS_Proxy',@credential_name=N'SSIS_Credential',@description=N'' GO
-
以下の SQL ステートメントを使用して、他のユーザーにプロキシへのアクセスを許可します。
USE [msdb] GO EXEC msdb.dbo.sp_grant_login_to_proxy @proxy_name=N'SSIS_Proxy',@login_name=N'
mydomain
\user_name
' GO -
以下の SQL ステートメントを使用して、SSIS サブシステムにプロキシへのアクセスを許可します。
USE [msdb] GO EXEC msdb.dbo.rds_sqlagent_proxy @task_type='GRANT_SUBSYSTEM_ACCESS',@proxy_name='SSIS_Proxy',@proxy_subsystem='SSIS' GO
プロキシとそのプロキシに対する許可を表示するには
-
以下の SQL ステートメントを使用して、プロキシの被付与者を表示します。
USE [msdb] GO EXEC sp_help_proxy GO
-
以下の SQL ステートメントを使用して、サブシステムの許可を表示します。
USE [msdb] GO EXEC msdb.dbo.sp_enum_proxy_for_subsystem GO
SQL Server エージェントを使用した SSIS パッケージのスケジュール
認証情報とプロキシを作成し、SSIS にプロキシへのアクセスを許可したら、SQL Server エージェントジョブを作成して SSIS パッケージをスケジュールできます。
SSIS パッケージをスケジュールするには
-
SSMS または T-SQL を使用して、SQL Server エージェントジョブを作成できます。以下の例では T-SQL を使用しています。
USE [msdb] GO DECLARE @jobId BINARY(16) EXEC msdb.dbo.sp_add_job @job_name=N'MYSSISJob', @enabled=1, @notify_level_eventlog=0, @notify_level_email=2, @notify_level_page=2, @delete_level=0, @category_name=N'[Uncategorized (Local)]', @job_id = @jobId OUTPUT GO EXEC msdb.dbo.sp_add_jobserver @job_name=N'MYSSISJob',@server_name=N'(local)' GO EXEC msdb.dbo.sp_add_jobstep @job_name=N'MYSSISJob',@step_name=N'ExecuteSSISPackage', @step_id=1, @cmdexec_success_code=0, @on_success_action=1, @on_fail_action=2, @retry_attempts=0, @retry_interval=0, @os_run_priority=0, @subsystem=N'SSIS', @command=N'/ISSERVER "\"\SSISDB\MySSISFolder\MySSISProject\MySSISPackage.dtsx\"" /SERVER "\"my-rds-ssis-instance.corp-ad.company.com/\"" /Par "\"$ServerOption::LOGGING_LEVEL(Int16)\"";1 /Par "\"$ServerOption::SYNCHRONIZED(Boolean)\"";True /CALLERINFO SQLAGENT /REPORTING E', @database_name=N'master', @flags=0, @proxy_name=N'SSIS_Proxy' GO
プロキシからの SSIS アクセスの取り消し
以下のストアドプロシージャを使用して、SSIS サブシステムへのアクセスを取り消し、SSIS プロキシを削除できます。
アクセスを取り消してプロキシを削除するには
-
サブシステムのアクセスを取り消します。
USE [msdb] GO EXEC msdb.dbo.rds_sqlagent_proxy @task_type='REVOKE_SUBSYSTEM_ACCESS',@proxy_name='SSIS_Proxy',@proxy_subsystem='SSIS' GO
-
プロキシに対する許可を取り消します。
USE [msdb] GO EXEC msdb.dbo.sp_revoke_login_from_proxy @proxy_name=N'SSIS_Proxy',@name=N'
mydomain
\user_name
' GO -
プロキシを削除します。
USE [msdb] GO EXEC dbo.sp_delete_proxy @proxy_name = N'SSIS_Proxy' GO
SSIS の無効化
SSIS を無効にするには、オプショングループから SSIS
オプションを削除します。
重要
SSIS オプションを削除しても SSISDB データベースは削除されないため、SSIS プロジェクトを失うことなくこのオプションを安全に削除できます。
削除後に SSIS
オプションを再度有効にして、前に SSIS カタログにデプロイされていた SSIS プロジェクトを再利用できます。
以下の手順では、SSIS
オプションを削除します。
SSIS オプションをオプショングループから削除するには
AWS Management Console にサインインし、Amazon RDS コンソール (https://console.aws.amazon.com/rds/
) を開きます。 -
ナビゲーションペインで、[オプショングループ] を選択します。
-
SSIS
オプションが含まれているオプショングループ (前の例ではssis-se-2016
) を選択します。 -
[オプションの削除] を選択します。
-
[オプションの削除] で、[削除するオプション] として [SSIS] を選択します。
-
[すぐに適用] で、オプションをすぐに削除する場合は [はい] を選択し、次のメンテナンスウィンドウで削除する場合は [いいえ] を選択します。
-
[削除] を選択します。
以下の手順では、SSIS
オプションを削除します。
SSIS オプションをオプショングループから削除するには
-
以下のいずれかのコマンドを実行します。
Linux、macOS、Unix の場合:
aws rds remove-option-from-option-group \ --option-group-name
ssis-se-2016
\ --options SSIS \ --apply-immediatelyWindows の場合:
aws rds remove-option-from-option-group ^ --option-group-name
ssis-se-2016
^ --options SSIS ^ --apply-immediately
SSISDB データベースの削除
SSIS オプションを削除しても、SSISDB データベースは削除されません。SSISDB データベースを削除するには、SSIS オプションを削除した後、rds_drop_ssis_database
ストアドプロシージャを使用します。
SSIS データベースを削除するには
-
次のストアドプロシージャを使用します。
USE [msdb] GO EXEC dbo.rds_drop_ssis_database GO
SSISDB データベースを削除した後、SSIS オプションを再度有効にすると、新しい SSISDB カタログが取得されます。