2017-08-03 8 views
0

CaptureChangeMySQLプロセッサのテスト用にNifi 1.3.0およびMySQL Server 5.7を使用して作業する。残念ながら、変更を追跡したいスキーマはschema-name-here.table_is_fineのようにハイフンで表示され、CaptureChangeMySQLプロセッサーの「データベース/スキーマ名パターン」プロパティーでは理解できません。NifiプロセッサのCaptureChangeMySQLは、スキーマ名パターンでハイフンを処理できますか?

NiFiには、この種の名前を扱う方法がありますか?

答えて

2

データベース/スキーマ名パターンフィールドには、Java正規表現が必要ですが、スキーマ名はJavaの正規表現が必要です。パターン文字列CaptureChangeMySQL processor documentationから:。

の正規表現(regex)CDCイベントのリストに対して(あなたのRDBMS」専門用語に応じて、またはスキーマ)のデータベースを合わせるためそのまま正規表現は、データベース名と一致する必要があります。 RDBMSに格納される。

だから、はい、どんなスキーマ名でも扱えるはずです。内部的に有効な正規表現パターン文字列を使用していることを確認してください。Pattern.compile(YOUR_SCHEMA_NAME_PATTERN)に渡されます。データベース/スキーマ名パターンフィールドにはYOUR_SCHEMA_NAME_PATTERNが入力されます。

これが役に立ちます。

+0

'-'は正規表現のコンパイルで特定の意味を持つため、パターンを' \ -'でエスケープする必要があります。 'schema \ -name \ -here'を試してみてください。 – Andy

+0

HI Andy。そのエスケープスタイルを試しましたが、同じ構文エラーです。私はそれと一緒に遊ぶつもりです。 – Rick

関連する問題