TeamCity オンプレミス 2026.1 ヘルプ

バックアップからの TeamCity データの復元

TeamCity 管理者は、TeamCity UI 経由で、または maintainDB コマンドラインユーティリティを使用して手動で、バックアップされたデータを復元できます。

復元する前に

バックアップされたデータは、サポートされている任意のデータベースから、またはサポートされている任意のデータベースに、同じデータベースまたは別のデータベースに復元できます (たとえば、HSQL データベースから PostgreSQL データベースにデータを復元したり、PostgreSQL データベースのバックアップを新しい PostgreSQL データベースに復元したりできます)。

TeamCity の新しいバージョンを使用して、以前の TeamCity バージョンで作成されたバックアップを復元できます(TeamCity バージョンが 6.0 以降である場合)。

大規模なデータベースの復元中に、大量のデータ変更をより速く行うためにデータベース固有の設定を構成することが必要な場合があります (SQL Server の「リカバリモデル」を「シンプル」に設定するなど)。詳細については、DBA にお問い合わせください。

TeamCity バックアップファイルにはビルドアーティファクトは含まれません。ビルドログとアーティファクトをバックアップするには、アーティファクトディレクトリ (デフォルトでは <TeamCity Data Directory> /system/artifacts) の内容を古い場所から新しい場所に手動でコピーします。system/artifacts のデータの一般的な互換性ルールは、古い TeamCity バージョンで作成されたファイルは新しいバージョンで読み取ることができますが、その逆は必ずしも可能ではないということです。

外部アーティファクトストレージが有効になっている場合、TeamCity データディレクトリのアーティファクトディレクトリにはアーティファクトマッピングに関するメタデータが含まれるため、それらが復元されていることを確認してください。

TeamCity データディレクトリの説明にあるディレクトリの詳細も参照してください。

バックアップから復元されたサーバーの起動時にビルドメタデータの再インデックスが自動的に開始されるため、サーバーの起動前にアーティファクトをコピーすることが重要です。インデックス作成中に一部のアーティファクトが欠落すると、TeamCity サーバーの一部が失敗する可能性があります (たとえば、NuGet フィード)。サーバーの起動後にアーティファクトをコピーした場合 (またはサーバーの起動前にアーティファクトのコピーが完了していない場合)、ビルドメタデータを手動で再インデックスし、再インデックスが完了するまで待つ必要がある場合があります。

復元の実行

TeamCity は、バックアップされたデータを新しい TeamCity のインストールに自動的に復元できます (たとえば、既存のサーバーのコピーを作成する場合)。このプロセスは maintainDB ユーティリティに依存しますが、必要なすべての操作を内部で実行します。

  1. ブラウザーで TeamCity URL (デフォルトでは、exe インストールの場合は http://localhost/ tar.gz の場合は http://localhost:8111/ ) を開きます。

  2. TeamCity ファーストスタートページで、データディレクトリへのパスを入力し、バックアップから復元をクリックします。

  3. TeamCity サーバーのバックアップディレクトリへの絶対パスを入力するか、バックアップデータを含む ZIP アーカイブをアップロードします。

  4. ターゲットデータベースを選択します。外部データベースを使用する場合、そのアドレスと資格情報を構成します。

  5. 修復を続行します。

TeamCity はデータを復元し、maintainDB ユーティリティログを表示します。バックアップされたデータ形式のバージョンが現在のものよりも古い場合、TeamCity はそれをアップグレードすることを提案します。

バックアップしたファイルを既存の TeamCity インストールに復元するか、自動復元の制限を克服するには、maintainDB ユーティリティを手動で使用します。このセクションでは、maintainDB オプションの一部についてのみ説明します。使用可能なすべてのオプションの完全なリストについては、コマンドラインからパラメーターなしで maintainDB を実行してください。maintainDB 起動オプションも参照してください。

maintainDB を介してバックアップファイルから復元を実行するには:

  1. tar.gz または .exe インストールパッケージから TeamCity サーバーをインストールします。TeamCity サーバーを開始しないでください。

  2. 新しい空の TeamCity データディレクトリを作成します。

  3. 次のオプションのいずれかを選択します。

    • バックアップを新しい外部データベースに復元するには、空のデータベースを作成して構成し、後で restore コマンドに渡されるデータベース設定を含む database.properties ファイルを構成し、それを新しく作成された TeamCity データディレクトリ/config サブディレクトリに配置するか、ファイルシステム上の TeamCity データディレクトリ外の任意の場所に配置します。

    • バックアップが作成されたのと同じデータベースにデータを復元するには、次の手順に進みます。

  4. 必要なデータベースドライバーを、新しく作成した TeamCity データディレクトリディレクトリの lib/jdbc サブディレクトリに配置します。

  5. <TeamCity Home> /bin ディレクトリにある maintainDB ユーティリティを使用して、restore コマンドを実行します。

    a. バックアップを新しい外部データベースに復元するには

    • database.properties ファイルが TeamCity データディレクトリにある場合:

    maintainDB.[cmd|sh] restore -A <absolute path to the newly created TeamCity Data Directory> -F <path to the TeamCity backup file> -T <config/database.properties>
    • database.properties ファイルが TeamCity データディレクトリの外にある場合:

    maintainDB.[cmd|sh] restore -A <absolute path to the newly created TeamCity Data Directory> -F <path to the TeamCity backup file> -T <absolute path to the database.properties file of the target database on the file system outside data dir>

    b. バックアップが作成されたのと同じデータベースにデータを復元するには:

    maintainDB.[cmd|sh] restore -A <absolute path to the newly created TeamCity Data Directory> -F <path to the TeamCity backup file>

    c. バックアップを内部データベースに復元するには:

    maintainDB.[cmd|sh] restore -A <absolute path to the newly created TeamCity Data Directory> -I -F <path to the TeamCity backup file>
  6. プロセスが正常に完了した場合、復元を完了するには、古いディレクトリから <TeamCity Data Directory> /system/artifactsコピーする必要があります。ディレクトリにはビルドアーティファクトが保存されますが、それらはバックアップファイルには含まれません。

restore コマンドオプションに関する注意:

  • TEAMCITY_DATA_PATH 環境変数が設定されている場合、-A 引数は省略できます。

  • -F 引数は絶対パスまたは <TeamCity Data Directory> /system/backup ディレクトリへの相対パスにすることができます。

  • -T 引数は、手順 3 で作成された database.properties ファイルを指している必要があります。

  • -T 引数が指定されておらず、新しく作成された <TeamCity Data Directory>/config およびバックアップファイルに database.properties ファイルが存在する場合、データベースは <TeamCity Data Directory>/config のプロパティファイルを使用して復元されます。

  • デフォルトでは、-F 以外のオプションが指定されていない場合、バックアップされたすべてのスコープがバックアップファイルから復元されます。バックアップファイルから特定のスコープのみを復元するには、maintainDB ユーティリティの対応するオプション -D-C-U-L-P を使用します。

データベースのみの復元

データベースを復元し、最新の TeamCity データディレクトリを保持する場合、データの一貫性を確認することが重要です。

  • データベースに保存されているデータと一貫性を保つために、 <TeamCity Data Directory> /system/pluginData ( 補足データ ) も復元する必要があります。

  • サーバーの起動前に <TeamCity Data Directory> /system/caches をクリアする必要があります。

TeamCity データベースを既存のサーバーに復元する前に、TeamCity サーバーが実行されていないことを確認してください。

TeamCity データベースをバックアップファイルから既存のサーバーにのみ復元するには:

  1. データベースを作成して構成するdatabase.properties ファイルを TeamCity Data Directoryconfig サブディレクトリに配置します。

  2. 必要なデータベースドライバが /lib/jdbc サブディレクトリに存在することを確認してください。

  3. <TeamCity Data Directory> /bin ディレクトリにある maintainDB ユーティリティを使用します (TeamCity .tar.gz および .exe ディストリビューションでのみ使用可能)。

  4. バックアップに追加データが存在する場合は、 <TeamCity Data Directory> /system/pluginData ディレクトリの内容を削除します (最初に別の場所にバックアップすることを検討してください)。

  5. restore コマンドを使用します(-T 引数は、ステップ 1 で作成された database.properties ファイルを指している必要があります)。

    maintainDB.[cmd|sh] restore -A <absolute path to TeamCity Data Directory> -F <path to the TeamCity backup file> -T <path to the database.properties file of the target database> -D
  6. maintainDB ユーティリティコンソールの出力を参照してください。要求された場合は、database.properties ファイルを手動でコピーする必要があります。

  7. <TeamCity Data Directory> /system/caches ディレクトリの内容を削除します。

中断後の復元の再開

次の理由により、復元が中断される場合があります。

  • ファイルシステムまたはデータベースのスペース不足

  • ファイルシステムまたはデータベースに対する権限が不十分です

テーブルまたはインデックスの 1 つを復元できなかった場合に中断が発生し、maintainDB ユーティリティコンソールの出力に表示されます。
復元を再開する前に、誤って復元されたオブジェクトをデータベースから手動で削除します。

中断後にバックアップの復元を再開するには:
必要なオプションと --continue オプションを指定した restore コマンドを使用して、maintainDB ユーティリティを実行します。

maintainDB.[cmd|sh] restore <all previously used restore options> --continue
2025 年 6 月 04 日

関連ページ:

maintainDB コマンドラインツールを使用したバックアップの作成

TeamCity.tar.gz および .exe ディストリビューションは、ディレクトリにあるユーティリティを提供します。このコマンドラインツールを使用すると、サーバーデータのバックアップ、復元、および異なるデータベース間の移行を行うことができます。また、UI を使用してデータをバックアップすることもできます。バックアップする前に:データをバックアップする前に、TeamCity サーバーをシャットダウンして、すべてのビルドをバックアップに含めることをお勧めします。TeamCity サーバーが稼働...

TeamCity データディレクトリ

TeamCity データディレクトリは、TeamCity サーバーが構成、ビルド結果、現在の操作ファイルを保存するために使用するファイルシステム上のディレクトリです。このディレクトリは、すべての構成設定の 1 次ストレージであり、TeamCity のインストールに不可欠なデータを保持します。ビルド履歴、ユーザーとそのデータ、その他のデータはデータベースに保存されます。ディレクトリとデータベースに保存されるデータの説明については、バックアップに関する注意事項を参照してください。このドキュメントや他...

アーティファクトストレージの構成

プロジェクト設定 | アーティファクトストレージタブには、このプロジェクトで構成されたアーティファクトストレージと、親から継承されたストレージが表示されます。デフォルトでは、組み込み TeamCity アーティファクトストレージが表示され、アクティブとしてマークされています。対応するリンクを使用して別のストレージを有効化することができます。組み込みアーティファクトストレージ:TeamCity は、ビルドによって生成されたアーティファクトを、TeamCity サーバーがアクセスできるファイルシステ...

TeamCity の設定とメンテナンス

サーバー構成を変更するには、管理 | グローバル設定に移動します。次の設定ブロックを使用できます。TeamCity の設定:データベース実行中の TeamCity サーバーによって使用されるデータベース。データディレクトリディレクトリを参照できる \<TeamCity データディレクトリ \> パス。アーティファクトディレクトリ TeamCity サーバーがビルドアーティファクト、ビルドログ、その他のビルドデータを保存するために使用するルートディレクトリのリスト。デフォルトの場所はです...