Skip Navigation
Show nav
Heroku Dev Center Dev Center
  • Get Started
  • ドキュメント
  • Changelog
  • Search
Heroku Dev Center Dev Center
  • Get Started
    • Node.js
    • Ruby on Rails
    • Ruby
    • Python
    • Java
    • PHP
    • Go
    • Scala
    • Clojure
    • .NET
  • ドキュメント
  • Changelog
  • More
    Additional Resources
    • Home
    • Elements
    • Products
    • Pricing
    • Careers
    • Help
    • Status
    • Events
    • Podcasts
    • Compliance Center
    Heroku Blog

    Heroku Blog

    Find out what's new with Heroku on our blog.

    Visit Blog
  • Log in or Sign up
View categories

Categories

  • Heroku のアーキテクチャ
    • コンピューティング (dyno)
      • dyno の管理
      • dyno の概念
      • dyno の動作
      • dyno の参照資料
      • dyno のトラブルシューティング
    • スタック (オペレーティングシステムイメージ)
    • ネットワーキングと DNS
    • プラットフォームポリシー
    • プラットフォームの原則
    • buildpack
  • 開発者ツール
    • AI の操作
    • コマンドライン
    • Heroku の VS Code 拡張機能
  • デプロイ
    • Git を使用したデプロイ
    • Docker によるデプロイ
    • デプロイ統合
  • 継続的デリバリーとインテグレーション (Heroku Flow)
    • 継続的統合
  • 言語サポート
    • Node.js
      • Node.js アプリのトラブルシューティング
      • Node.js の操作
      • Heroku での Node.js の動作
    • Ruby
      • Rails のサポート
        • Rails の操作
      • Bundler の使用
      • Ruby の操作
      • Heroku での Ruby の動作
      • Ruby アプリのトラブルシューティング
    • Python
      • Python の操作
      • Python でのバックグラウンドジョブ
      • Heroku での Python の動作
      • Django の使用
    • Java
      • Heroku での Java の動作
      • Java の操作
      • Maven の使用
      • Spring Boot の使用
      • Java アプリのトラブルシューティング
    • PHP
      • Heroku での PHP の動作
      • PHP の操作
    • Go
      • Go の依存関係管理
    • Scala
    • Clojure
    • .NET
      • .NET の操作
  • データベースとデータ管理
    • Heroku Postgres
      • Postgres の基礎
      • Postgres スターターガイド
      • Postgres のパフォーマンス
      • Postgres のデータ転送と保持
      • Postgres の可用性
      • Postgres の特別なトピック
      • Heroku Postgres への移行
    • Heroku Key-Value Store
    • Apache Kafka on Heroku
    • その他のデータストア
  • AI
    • Inference の基礎知識
    • Inference API
    • Heroku Inference のクイックスタートガイド
    • AI モデル
    • ツールの使用
    • AI 連携
    • ベクトルデータベース
  • モニタリングとメトリクス
    • ログ記録
  • アプリのパフォーマンス
  • アドオン
    • すべてのアドオン
  • 共同作業
  • セキュリティ
    • アプリのセキュリティ
    • ID と認証
      • シングルサインオン (SSO)
    • Private Space
      • インフラストラクチャネットワーキング
    • コンプライアンス
  • Heroku Enterprise
    • Enterprise Accounts
    • Enterprise Team
  • パターンとベストプラクティス
  • Heroku の拡張
    • Platform API
    • アプリの Webhook
    • Heroku Labs
    • アドオンのビルド
      • アドオン開発のタスク
      • アドオン API
      • アドオンのガイドラインと要件
    • CLI プラグインのビルド
    • 開発ビルドパック
    • Dev Center
  • アカウントと請求
  • トラブルシューティングとサポート
  • Salesforce とのインテグレーション
    • Heroku AppLink
      • Heroku AppLink リファレンス
      • Heroku AppLink の使用
      • Heroku AppLink スターターガイド
    • Heroku Connect (Salesforce 同期)
      • Heroku Connect の管理
      • Heroku Connect のリファレンス
      • Heroku Connect のトラブルシューティング
    • その他の Salesforce 統合
  • Salesforce とのインテグレーション
  • Heroku Connect (Salesforce 同期)
  • Heroku Connect の管理
  • Heroku Connect のメンテナンス操作

Heroku Connect のメンテナンス操作

日本語 — Switch to English

Table of Contents [expand]

  • Heroku Connect のメンテナンス
  • Heroku Postgres データベースのプランの変更
  • Heroku Postgres データベースのバージョンのアップグレード
  • データベースロールバック後の同期の回復
  • 同期の一時停止
  • 接続の再作成
  • Salesforce でのフィールド定義の変更

この記事の英語版に更新があります。ご覧の翻訳には含まれていない変更点があるかもしれません。

最終更新日 2025年06月20日(金)

この記事では、Heroku Connect のメンテナンスについて説明します。Heroku Postgres のプランを変更する方法や、そのバージョンをアップグレードする方法についても説明します。

Heroku Connect のメンテナンス

メンテナンスタスクを実行するために、Heroku で Heroku Connect をオフラインにする場合があります。一般的なタスクには、基礎となるインフラストラクチャの更新があります。このメンテナンスは Heroku によって自動的に処理されます。Heroku Postgres とは異なり、Heroku Connect のメンテナンスウィンドウのスケジュールまたは再スケジュールはできません。

通常、メンテナンスには最長で 45 分かかります。メンテナンスの間、Heroku Connect のすべてのデータ同期は使用できません。Heroku Connect の設定も実行できません。Heroku Postgres データベースの既存のデータには引き続きアクセスできます。変更は Connect によって保持され、同期はメンテナンス後に再開します。

Heroku Connect のメンテナンスの準備

メンテナンスウィンドウは、実施の約 2 週間前に status.heroku.com で告知されます。このページで Subscribe (購読) をクリックすると通知を受け取ることができます。

メンテナンスウィンドウの間はデータの同期が遅れることを認識し、それに備える必要がありますが、それ以外に必要な準備はありません。メンテナンス操作後、Connect では通常の同期が再開します。

Heroku Postgres データベースのプランの変更

Heroku Postgres データベースのプランは、heroku addons:upgrade コマンドを使用して変更できます。HA フェイルオーバーと同じ動作であるため、Heroku Connect ではこの操作を透過的に処理できます。

お勧めはしませんが、フォロワーの切り替え​の方法を代わりに使用できます。その場合は、次のセクションで説明​されている追加の手順 (4 番を除く) を実行する必要があります。

Essential 層のデータベース​から別の層のプランにアップグレードする場合、フォロワーは作成できません。代わりに、pg:copy プロセスを使用して新しいデータベースにデータをコピーします。アプリケーションをメンテナンスモードにすると同時に Heroku Connect を一時停止し、アプリケーションをアクティブに戻すときに Heroku Connect を再開します。

Heroku Postgres データベースのバージョンのアップグレード

pg:upgrade* でのアップグレード

Heroku Connect 使用して Heroku Postgres データベースのバージョンをアップグレードするには、version upgrade コマンド​を使用し、「pg:upgrade:* コマンドでのアップグレード​」セクションの手順に従うことをお勧めします。このアップグレードプロセスには次の内容が含まれます。

  1. heroku pg:upgrade:prepare​ を実行して、アップグレードの準備をします。
  2. アップグレードを開始する前に、Heroku Connect 接続を一時停止​します。
  3. 準備ができたら、heroku pg:upgrade:run​ を実行してアップグレードを開始するか、スケジュール済みのメンテナンスウィンドウ​まで待ちます。
  4. アップグレードが完了したら、Heroku Connect の接続を再開​します。

フォロワーデータベースでのアップグレード

あるいは、フォロワーデータベースを使用してバージョンをアップグレードする場合は、データベースの同期操作が期待どおりに続行されるようにするため、追加の手順が必要になります。フォロワーデータベースを使用してデータベースバージョンをアップグレードする​には、次の手順に従って Heroku Connect をそのプロセスに組み込みます。

以下の手順により、新しいデータベースが現在のデータベースの正確なコピーであることが保証されます。Heroku Connect によってテーブルが作成されたり、空のデータベースにデータが転送されたりすることはないため、必ず、正しいアップグレードプロセスに従ってください。

 

Essential 層のデータベース​でバージョンをアップグレードしている場合は、代わりにバージョンアップグレードのコマンド​またはpg:copy​のプロセスを使用して新しいデータベースにデータをコピーします。pg:copy​ メソッドを使用する場合は、アプリケーションをメンテナンスモードにすると同時に Heroku Connect を一時停止し、アプリケーションをアクティブに戻すときに Heroku Connect を再開します。

  1. フォロワーデータベースを作成​し、リードデータベースにほぼ追いつけるようにします。これにより、アップグレードに必要なダウンタイムが最小化されます。

  2. アプリケーションをメンテナンスモード​にするのと同じ理由で接続を一時停止​して、アップグレード中に Heroku Connect がデータベースに書き込まないようにします。

  3. フォロワーが追いつくまで待ちます。この時点で、Heroku Connect とアプリケーションの両方がデータベースへの書き込みを停止しているため、フォロワーは完全に追いつくことができます。データベースのステータスは heroku pg:info​ を使用して確認できます。

  4. pg:upgrade:run​ を使用してフォロワーデータベースをアップグレード​します。このコマンドによってフォロワーでリーダーのフォローが解除され、Postgres バージョンのアップグレードが実行されます。

  5. ここで、フォロワーデータベースをプロモートして新しいリードデータベースにする​必要があります。実行する手順は、Heroku Connect で標準データベース URL (DATABASE_URL​) とカスタムデータベース URL (例: ​HEROKU_POSTGRESQL_ROSE_URL​) のどちらを使用しているかによって異なります。

    • 標準データベース URL を使用している場合、フォロワーをプロモート​して新しいリードデータベースにします。これによって、DATABASE_URL​ でアクセスできるようになります。
    • カスタムデータベース URL を使用している場合、プロモートされたフォロワーの新しいカスタムデータベース URL で Heroku Connect データベース設定​を更新するか、heroku addons:attach を使用して、選択した名前にデータベースをアタッチする必要があります。
  6. 手順 2 で一時停止したときと同じプロセスを使用して Heroku Connect を再開し、アプリケーションのメンテナンスモード​を終了します。Heroku Connect は、アプリケーションの新しい DATABASE_URL​ (または、カスタムデータベース URL を設定している場合はその URL) を自動的に取得し、新しいデータベースを使用して同期を再開します。

データベースロールバック後の同期の回復

Heroku Connect では、ハイウォーターマーク​の手法を使用します。同期されたデータベースをロールバックすると、データの不整合が発生します。データの整合性を回復するには、データベースのロールバック後にマッピングをリロード​します。

同期の一時停止

データベースのアップグレード​のような特定のタスクを実行するときに、Heroku Connect での同期アクティビティを一時停止することが必要になります。これを行うには、Settings (設定) タブ、Manage Connection (接続の管理) の順に移動し、Pause (一時停止) ボタンをクリックします。

Heroku Connect は、保留中の操作があればすべて完了してから一時停止状態に移行します。接続を一時停止すると、データベースでのデータの変更はトリガーログに追加され続け、Salesforce で行われた変更はポーリングされなくなります。ストリーミングモード​を使用した、マッピングに関する Salesforce からの PushTopic 通知も無視されます。

接続は IDLE​ 状態のときに限り一時停止できます。接続が長期間 POLLING_DB_CHANGES​ ステータスのままである場合は、ログを確認してデバッグしてください。

同期を再開するには、Settings (設定) タブ、Manage Connection (接続の管理) に戻り、Resume (再開) をクリックします。Heroku Connect は引き続き、中断した場所にとどまります。トリガーログのエントリが処理されて Salesforce にプッシュされ、Salesforce で行われた変更は (通常は Streaming API を使用するマッピングも含めて) ポーリングを使用して取得されます。

接続の一時停止中にデータベースまたは Salesforce のデータに行われた変更は、接続が再開すると自動的に同期されます。

接続の再作成

サンドボックス組織をリロード済みの場合や、Essential 層のデータベース​から別の層のプランにアップグレードする必要がある場合、既存の接続を削除して新しい接続を作成する必要があります。

以下の設定は手動で設定します。

  • 共同作業者とその通知設定
  • ベータ機能
  • 書き込みアルゴリズム
  • Salesforce API のバージョン

残りの再作成を自動化するには、Heroku CLI または Heroku Connect ダッシュボード​の以下の手順に従ってください。

CLI

Heroku CLI での操作:

  1. 次のコマンドを使用して、Heroku Connect の設定をエクスポート​します。

    $ heroku connect:export -a appname herokuconnect-resource-name
    
  2. 読み取り/書き込みマッピングが 1 つでも設定されているテーブルには、新規データの書き込みを一切行わないでください。また、すべてのデータが Salesforce に存在することを保証するために、すべてのマッピングが DATA_SYNCED​ 状態であることを確認してください。接続のアクティビティを停止する​には、以下を実行します。

    $ heroku connect:pause -a appname herokuconnect-resource-name
    
  3. 以下のコマンドを使用して、Heroku Connect アドオンを破棄​します。

    $ heroku addons:destroy -a appname herokuconnect-resource-name
    
  4. 以下のコマンドを使用して、新しい Heroku Connect アドオンを作成します。

    $ heroku addons:create herokuconnect
    
  5. 以下のコマンドを使用してアドオンを認証し、Salesforce ログイン情報でログインします。

    $ heroku connect:sf:auth -a appname herokuconnect-resource-name
    
  6. 以下のコマンドを使用して、手順 1 でエクスポートしたマッピング設定をインポート​します。

    $ heroku connect:export mapping_file.json -a appname herokuconnect-resource-name
    

ダッシュボード

Heroku Connect ダッシュボード​での操作:

  1. Settings (設定) タブからHeroku Connect の設定をエクスポート​します。

    a. ​Import/Export Configuration (設定をインポート/エクスポート)、Export (エクスポート) の順に選択し、確認ウィンドウで再度 Export (エクスポート) を選択して、JSON ファイルをダウンロードします。

  2. 読み取り/書き込みマッピングが 1 つでも設定されているテーブルには、新規データの書き込みを一切行わないでください。また、すべてのデータが Salesforce に存在することを保証するために、すべてのマッピングが DATA_SYNCED​ 状態であることを確認してください。Settings (設定) タブから、Manage Connection (接続の管理)、Pause (一時停止) の順にクリックして、接続のアクティビティを停止​します。

  3. Heroku Dashboard の Resources (リソース) タブから Heroku Connect アドオンを破棄​します。アドオンのアクションボタン (縦の 3 連ドット) を選択して、メニューを開きます。Delete Add-on (アドオンの削除) を選択します。

  4. Heroku Dashboard の Resources (リソース) タブから新しい Heroku Connect アドオンを作成します。Heroku Connect​ アドオンを検索して追加します。

  5. Heroku Connect ダッシュボードを開いて Setup Connection (接続の設定) を選択し、アドオンを認証します。

    a. アドオンに接続する Heroku Postgres データベースとスキーマを選択し、Next (次へ) をクリックします。

    b. Select the Salesforce org type and API version for your connection and select Authorize to log in with your Salesforce credentials.

  6. Settings (設定) タブから、手順 1 でエクスポートしたマッピング設定をインポート​します。

    a. ​Import/Export Configuration (設定のインポート/エクスポート) を選択し、Import を選択します。

    b. Select Choose File and select the file to upload, and then select Upload.

Salesforce でのフィールド定義の変更

適切に調整されていない場合、フィールド定義の変更によって Heroku Connect との同期が遅れる可能性があります。

対応するフィールド定義を Salesforce で変更した後、PostgreSQL のテーブルスキーマが Heroku Connect によって自動的に変更されることはありません。これは、フィールドを変更しようとした結果、データが失われるか破損する可能性があるからです。

Salesforce でフィールドを変更した後、ユーザーが Heroku Connect でオブジェクトマッピングを編集して、Heroku Connect による PostgreSQL テーブルスキーマの更新をトリガーする必要があります。比較的単純なケースでは、ユーザーはマッピングの Edit (編集) をクリックしてから Save (保存) をクリックするだけで済みます。より複雑なケースでは、ユーザーはフィールドを選択解除し、マッピングを保存し、マッピングを再編集してから、フィールドを再び追加する必要があります。こうすると、Connect によって列が削除され、再度追加されて、列に再度データがロードされます。

単純なケースには、フィールドの長さの延長または短縮などがあります。複雑なケースには、フィールドのデータ型の変更などがあります。

Information & Support

  • Getting Started
  • Documentation
  • Changelog
  • Compliance Center
  • Training & Education
  • Blog
  • Support Channels
  • Status

Language Reference

  • Node.js
  • Ruby
  • Java
  • PHP
  • Python
  • Go
  • Scala
  • Clojure
  • .NET

Other Resources

  • Careers
  • Elements
  • Products
  • Pricing
  • RSS
    • Dev Center Articles
    • Dev Center Changelog
    • Heroku Blog
    • Heroku News Blog
    • Heroku Engineering Blog
  • Twitter
    • Dev Center Articles
    • Dev Center Changelog
    • Heroku
    • Heroku Status
  • Github
  • LinkedIn
  • © 2026 Salesforce, Inc. All rights reserved. Various trademarks held by their respective owners. Salesforce Tower, 415 Mission Street, 3rd Floor, San Francisco, CA 94105, United States
  • heroku.com
  • Legal
  • Terms of Service
  • Privacy Information
  • Responsible Disclosure
  • Trust
  • Contact
  • Cookie Preferences
  • Your Privacy Choices