

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# のソースとしての SAP ASE データベースの使用 AWS DMS
<a name="CHAP_Source.SAP"></a>

を使用して、以前は Sybase と呼ばれていた SAP Adaptive Server Enterprise (ASE) データベースからデータを移行できます AWS DMS。SAP ASE データベースをソースとして使用すると、サポートされている他の AWS DMS ターゲットデータベースにデータを移行できます。

がソースとして AWS DMS サポートする SAP ASE のバージョンについては、「」を参照してください[のソース AWS DMS](CHAP_Introduction.Sources.md)。

SAP ASE データベースと の操作の詳細については AWS DMS、以下のセクションを参照してください。

**Topics**
+ [SAP ASE データベースを のソースとして使用するための前提条件 AWS DMS](#CHAP_Source.SAP.Prerequisites)
+ [SAP ASE を のソースとして使用する場合の制限 AWS DMS](#CHAP_Source.SAP.Limitations)
+ [のソースとして SAP ASE を使用するために必要なアクセス許可 AWS DMS](#CHAP_Source.SAP.Security)
+ [切り捨てポイントの削除](#CHAP_Source.SAP.Truncation)
+ [SAP ASE を のソースとして使用する場合のエンドポイント設定 AWS DMS](#CHAP_Source.SAP.ConnectionAttrib)
+ [SAP ASE のソースデータ型](#CHAP_Source.SAP.DataTypes)

## SAP ASE データベースを のソースとして使用するための前提条件 AWS DMS
<a name="CHAP_Source.SAP.Prerequisites"></a>

SAP ASE データベースをソースにするには AWS DMS、次の操作を行います。
+ `sp_setreptable` コマンドを使用して、テーブルで SAP ASE レプリケーションを有効にします。詳細については、「[Sybase Infocenter アーカイブ]( http://infocenter.sybase.com/help/index.jsp?topic=/com.sybase.dc32410_1501/html/refman/X37830.htm)」をご参照ください。
+ SAP ASE データベースの `RepAgent` を無効にします。詳細については、「[プライマリデータベースの RepAgent スレッド停止と無効化](http://infocenter-archive.sybase.com/help/index.jsp?topic=/com.sybase.dc20096_1260/html/mra126ag/mra126ag65.htm)」をご参照ください。
+ 非ラテン文字 (例: 中国語) 用に設定された、Windows EC2 インスタンスで、SAP ASE バージョン 15.7 にレプリケーションするには、ターゲットコンピュータに SAP ASE 15.7 SP121 をインストールします。

**注記**  
継続的変更データ　キャプチャ (CDC) レプリケーションでは DMS が `dbcc logtransfer` と `dbcc log` を実行して、トランザクションログからデータを読み取ります。

## SAP ASE を のソースとして使用する場合の制限 AWS DMS
<a name="CHAP_Source.SAP.Limitations"></a>

SAP ASE データベースを AWS DMSのソースとして使用する場合は、以下の制限が適用されます。
+ SAP ASE データベースごとに継続的なレプリケーションまたは CDC を使用して実行できる AWS DMS タスクは 1 つだけです。フルロードのみのタスクは複数で並行して実行できます。
+ テーブルの名前を変更することはできません。たとえば、以下のコマンドは失敗します。

  ```
  sp_rename 'Sales.SalesRegion', 'SalesReg;
  ```
+ 列の名前を変更することはできません。たとえば、以下のコマンドは失敗します。

  ```
  sp_rename 'Sales.Sales.Region', 'RegID', 'COLUMN';
  ```
+ バイナリデータ型文字列の末尾にあるゼロ値は、ターゲットデータベースにレプリケートされるときに切り捨てられます。たとえば、ソーステーブル内の `0x0000000000000000000000000100000100000000` はターゲットテーブルでは `0x00000000000000000000000001000001` になります。
+ データベースのデフォルトが NULL 値を許可しないように設定されている場合、 は NULL 値を許可しない列を持つターゲットテーブル AWS DMS を作成します。したがって、全ロードまたは CDC レプリケーションタスクに空の値が含まれている場合、 はエラーを AWS DMS スローします。以下のコマンドを使用してソースデータベースで NULL 値を許容することにより、これらのエラーを防ぐことができます。

  ```
  sp_dboption database_name, 'allow nulls by default', 'true'
  go
  use database_name
  CHECKPOINT
  go
  ```
+ `reorg rebuild` インデックスコマンドはサポートされていません。
+ AWS DMS では、クラスターや MSA (マルチサイト可用性)/ウォームスタンバイをソースとして使用することはできません。
+ `AR_H_TIMESTAMP` 変換ヘッダー式はマッピングルールで使用され、追加された列ではミリ秒がキャプチャされません。
+ CDC 中に Merge 操作を実行すると、回復不可能なエラーが発生します。ターゲットを同期状態に戻すには、フルロードを実行します。
+ ロールバックトリガーイベントは、データ行ロックスキームを使用するテーブルではサポートされません。
+ AWS DMS は、ソース SAP データベースからタスクスコープ内のテーブルを削除した後、レプリケーションタスクを再開できません。DMS レプリケーションタスクが停止し、DML 操作 (INSERT、UPDATE、DELETE) が実行された後にテーブルを削除した場合、レプリケーションタスクをもう一度開始する必要があります。

## のソースとして SAP ASE を使用するために必要なアクセス許可 AWS DMS
<a name="CHAP_Source.SAP.Security"></a>

SAP ASE データベースを AWS DMS タスクのソースとして使用するには、 アクセス許可を付与する必要があります。 AWS DMS データベース定義で指定されたユーザーアカウントに、SAP ASE データベースで次のアクセス許可を付与します。
+ sa\$1role
+ replication\$1role
+ sybase\$1ts\$1role
+ デフォルトでは、`sp_setreptable`ストアドプロシージャを実行するアクセス許可が必要な場合、 は SAP ASE レプリケーションオプション AWS DMS を有効にします。データベースエンドポイントから直接、 AWS DMS それ自体ではなくテーブル`sp_setreptable`で を実行する場合は、`enableReplication`追加の接続属性を使用できます。詳細については、「[SAP ASE を のソースとして使用する場合のエンドポイント設定 AWS DMS](#CHAP_Source.SAP.ConnectionAttrib)」を参照してください。

## 切り捨てポイントの削除
<a name="CHAP_Source.SAP.Truncation"></a>

タスクが開始されると、 は`syslogshold`システムビューに`$replication_truncation_point`エントリ AWS DMS を確立し、レプリケーションプロセスが進行中であることを示します。 AWS DMS が動作している間、ターゲットに既にコピーされているデータの量に応じて、レプリケーション切り捨てポイントを一定の間隔で進めます。

`$replication_truncation_point` エントリが確立されたら、データベースログが過度に大きくならないように AWS DMS タスクを実行したままにします。 AWS DMS タスクを完全に停止する場合は、次のコマンドを発行してレプリケーション切り捨てポイントを削除します。

```
dbcc settrunc('ltm','ignore')
```

切り捨てポイントが削除されると、 AWS DMS タスクを再開することはできません。ログは、引き続きチェックポイントで自動的に切り捨てられます (自動切り捨てが設定されている場合)。

## SAP ASE を のソースとして使用する場合のエンドポイント設定 AWS DMS
<a name="CHAP_Source.SAP.ConnectionAttrib"></a>

追加の接続属性の使用と同様、エンドポイントの設定を使用して、ソースの SAP ASE データベースを設定できます。 AWS DMS コンソールを使用するか、`--sybase-settings '{"EndpointSetting": "value", ...}'`JSON 構文で の `create-endpoint` コマンドを使用して[AWS CLI](https://docs.aws.amazon.com/cli/latest/reference/dms/index.html)、ソースエンドポイントを作成するときに設定を指定します。

次の表は、ソースとして SAP ASE を使用できるエンドポイント設定を説明しています。

[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ja_jp/dms/latest/userguide/CHAP_Source.SAP.html)

## SAP ASE のソースデータ型
<a name="CHAP_Source.SAP.DataTypes"></a>

の使用 AWS DMS 時にサポートされる SAP ASE ソースデータ型と AWS DMS 、データ型からのデフォルトのマッピングのリストについては、次の表を参照してください。 AWS DMS は、ユーザー定義型 (UDT) データ型の列を持つ SAP ASE ソーステーブルをサポートしていません。このデータ型のレプリケートされた列は NULL として作成されます。

ターゲットにマッピングされるデータ型を表示する方法については、ターゲットエンドポイントの [「データ移行のターゲット」](CHAP_Target.md) セクションをご参照ください。

 AWS DMS データ型の詳細については、「」を参照してください[AWS Database Migration Service のデータ型](CHAP_Reference.DataTypes.md)。


|  SAP ASE のデータ型  |  AWS DMS データ型  | 
| --- | --- | 
| BIGINT | INT8 | 
| UNSIGNED BIGINT | UINT8 | 
| INT | INT4 | 
| UNSIGNED INT | UINT4 | 
| SMALLINT | INT2 | 
| UNSIGNED SMALLINT | UINT2 | 
| TINYINT | UINT1 | 
| DECIMAL | NUMERIC | 
| NUMERIC | NUMERIC | 
| FLOAT | REAL8 | 
| DOUBLE | REAL8 | 
| REAL | REAL4 | 
| MONEY | NUMERIC | 
| SMALLMONEY | NUMERIC | 
| DATETIME | DATETIME | 
| BIGDATETIME | DATETIME(6) | 
| SMALLDATETIME | DATETIME | 
| DATE | DATE | 
| TIME | TIME | 
| BIGTIME | TIME | 
| CHAR | STRING | 
| UNICHAR | WSTRING | 
| NCHAR | WSTRING | 
| VARCHAR | STRING | 
| UNIVARCHAR | WSTRING | 
| NVARCHAR | WSTRING | 
| BINARY | BYTES | 
| VARBINARY | BYTES | 
| BIT | BOOLEAN | 
| TEXT | CLOB | 
| UNITEXT | NCLOB | 
| IMAGE | BLOB | 