Db2 のジオデータベースのアップグレード
Standard または Advanced ライセンスで利用可能。
エンタープライズ ジオデータベースをアップグレードする目的は、新機能と修正された不具合を利用するために、ジオデータベースのシステム テーブル、ストアド プロシージャ、タイプ、および機能を更新することです。 使用しているデータベース バージョンが使用する ArcGIS クライアントでサポートされなくなった場合、データベースもアップグレードする必要があります。
ArcGIS Pro か ArcGIS Server の新しいバージョンをインストールするか、サービス パック、パッチ、またはホット フィックスを既存のインストールに適用し、ジオデータベースをアップグレードします。
注意:
ジオデータベースをアップグレードしなかった場合でも、使用しているデータベース バージョンが最新のリリースの ArcGIS ソフトウェアでサポートされなくなることがあります。 サポートされているデータベース リリースを使用していることを必ずシステム要件で確認してください。 そのデータベース バージョンがサポートされなくなった場合、ジオデータベースをアップグレードする必要があります。 アップグレードの間隔が長くなるほど、アップグレード プロセスが複雑になります。
ArcGIS Pro 3.7 を使用してジオデータベースをアップグレードする場合、アップグレードされたジオデータベースのバージョンは 12.1.0.x になります。
アップグレードの前に必要な以下の手順を完了してから、ジオデータベースのアップグレード ジオプロセシング ツールまたは Python スクリプトを使用してジオデータベースをアップグレードします。
アップグレードする前に
ジオデータベースを含め、エンタープライズ システムをアップグレードする前に、まず計画を立てます。 開発サーバーまたはテスト サーバーで新しいバージョンをテストして、すべてのクライアント アプリケーションで動作することを確認します。
新しいシステムが想定したとおりに機能することが確認できたら、アップグレードのスケジュールを設定します。アップグレードに必要な人員を確保し、各担当者が割り当てられたタスクを実行するために必要な権限を持っていることを確認します。
次の点に注意してください。
ベータまたはプレリリース バージョンのソフトウェアからのアップグレードはサポートされません。
お使いのデータベース リリースがアップグレード対象の ArcGIS バージョンをサポートしている場合は、10.8.1、10.9.x、または 11.x のジオデータベースから直接アップグレードできます。
IBM Db2 データベースが最新のリリースのジオデータベースでサポートされていない場合、ジオデータベースを最新のリリースにアップグレードするには、データベースとジオデータベースを複数回アップグレードする必要があります。 ジオデータベースをアップグレードする間隔が長くなるほど、最新リリースのジオデータベースにするために必要なアップグレードの回数が増えます。
ジオデータベースの中間アップグレードでは、そのジオデータベース バージョンのアップグレード手順に従い、バージョンを移行するたびにジオデータベースをテストします。 同様に、データベース ベンダーから提供されている各データベース バージョンのアップグレード手順に従い、バージョンを移行するたびにテストします。
ジオデータベースを以前のバージョンにダウングレードするための正式なメカニズムはありません。 新しいバージョンにアップグレードした後でジオデータベースをダウングレードする場合は、古いジオデータベース バージョンを含むバックアップ ファイルからデータベースを復元することができます。
以下は、ジオデータベースをアップグレードする前に実行する手順のチェックリストです。
使用する Db2 と ArcGIS のバージョンの組み合わせがサポートされていることを確認してください。 詳細については、「ArcGIS の IBM Db2 データベース要件」をご参照ください。
ジオデータベースをアップグレードする前に、データベースがサポートされているリリースで、ハードウェアが最小システム要件を満たしている必要があります。
ArcGIS クライアント リリースを混在して使用することの効果について理解し、特定のデータセット タイプを個別にアップグレードする必要があるかどうかを判断するには、「クライアントとジオデータベースの互換性」をご参照ください。
ジオデータベースをアップグレードできるかどうかを確認します。 これを行うには、移行する ArcGIS クライアントのバージョンを、1 台のコンピューターにインストールします。 ArcGIS Desktop をインストールした場合、ジオデータベースに接続し、データベース プロパティ ダイアログ ボックスを開いて、ジオデータベースをアップグレードできるかどうかを確認できます。 ArcGIS Server をインストールした場合、ArcPy の
Describe関数を使用して、ジオデータベースをアップグレードできるかどうかを確認できます。 次の例では、ジオデータベースへの接続を作成し、ジオデータベースをアップグレードできるかどうかを確認します。# Open Python. cd /arcgis/server/tools ./python # Import ArcPy. import arcpy # Create a connection to the geodatabase. arcpy.management.CreateDatabaseConnection( "/tmp/", "egdb_connection.sde", "DB2", "mydbgdb", "DATABASE_AUTH", "sde", "mysdepassword", "SAVE_USERNAME", "myconnection" ) # Check the geodatabase release. isCurrent = arcpy.Describe('/tmp/egdb_connection.sde').currentRelease print(isCurrent)falseが返された場合、ジオデータベースをアップグレードできます。trueが返された場合、ジオデータベースをアップグレードする必要はありません。 以降の手順を省略してください。データベースのバックアップを作成します。
sde ユーザーは、不要な接続を PROCESS_INFORMATION システム テーブルから削除するために、
MON_GET_CONNECTION関数を実行する必要があります。 このため、MON_GET_CONNECTION関数に対するEXECUTE権限を sde ユーザーに付与します。GRANT EXECUTE ON MON_GET_CONNECTION TO SDE;データベース管理者が SYSIBM.SYSDUMMY1 カタログ ビューに対する
SELECT権限を取り消した場合、管理者は Db2 のジオデータベースに接続するすべてのユーザーに権限を付与する必要があります。この権限はデータベースに対する SQL クエリーで必要です。
このカタログ ビューに対する
SELECT権限のないユーザーが接続しようとすると、次のようなエラーが表示されます。SQL0551N "SASHA" does not have the privilege to perform operation "SELECT" on object "SYSIBM.SYSDUMMY1". SQLSTATE=42501このビューに対する
SELECT権限をPUBLICに付与するには、データベースのDBADM権限のあるユーザーとしてサイン インして、次のコマンドを実行します。GRANT SELECT ON SYSIBM.SYSDUMMY1 TO PUBLIC;データベースの
DBADM権限を sde ユーザーに付与します。この権限は、ジオデータベースのアップグレードに必要で、アップグレード後に削除できます。
ArcGIS の外部で、ArcGIS ジオデータベース システム テーブルに追加したカスタム機能 (トリガーや追加のインデックスなど) をすべて削除します。
アップグレード手順は、ユーザーがシステム テーブルに加えたカスタマイズに対応できません。 このようなカスタマイズによってシステム テーブルのスキーマ変更が妨げられた場合、アップグレードが失敗します。
この時点で、データベースの 2 つ目のバックアップを作成し、これまでの手順で実行した変更内容を保存しておくことをおすすめします。
アップグレードを実行するためにジオデータベースに接続できるコンピューター上に、最新バージョンの ArcGIS クライアント (ArcGIS Pro Standard または Advanced、または ArcGIS Server) をインストールします。
アップグレード対象のジオデータベースへの接続がないことを確認します。 これには、ジオデータベース内のデータにアクセスする Web サービスが含まれます。
ジオデータベースに現在接続しているユーザーのリストを確認するには、ArcGIS Pro の ジオデータベース管理 ダイアログ ボックスに移動します。
これで、ジオデータベースをアップグレードできるようになりました。
ジオデータベースのアップグレード
ArcGIS Pro の ジオデータベースのアップグレード ツール、または ArcGIS Pro または ArcGIS Server コンピューターで実行する Python スクリプトを使用して、ジオデータベースをアップグレードできます。
注意:
ジオデータベースにブランチ バージョン対応データが含まれている場合は、追加のアップグレード後の手順が必要になる場合があります。 手順については、「ジオデータベースのアップグレード (Upgrade Geodatabase) の詳細」をご参照ください。
ジオデータベースのアップグレード ツールの使用
ジオデータベースのアップグレード ジオプロセシング ツールは、次のいずれかから開きます。
データ管理ツールボックス内のジオデータベース管理ツールセット
ArcGIS Pro 内の データベース プロパティ ダイアログ ボックスの 一般 タブにある アップグレードの実行 ボタン
データベース プロパティ からツールを開いた場合、入力ジオデータベース テキスト ボックスにジオデータベース接続情報が事前に入力されています。
Esri では、前提条件を確認 および ジオデータベースをアップグレード オプションをオンのままにすることをおすすめしています。 これにより、ジオデータベースのアップグレードを続ける前に、アップグレードを行うための前提条件を満たしているかどうかが確認されます。
前提条件のチェックでは、ジオデータベースへの他のアクティブな接続が検出され、接続しているユーザーにジオデータベースをアップグレードするための十分な権限があるかどうか、データベースが XML 列に対応しているかどうか、すべてのデータセットを開くことができるかどうか、データベースとライブラリーのリリースが同じかどうかが確認されます。 前提条件のいずれかが満たされていない場合、ツールは終了します。 アップグレードの手順を再度実行する前に、問題を修正する必要があります。
確認の結果は、ジオプロセシング ツールのダイアログ ボックスで報告されます。 チェックで不合格になった場合は、c:\Users\<user name>\AppData\Local\ESRI\<ArcGIS product> フォルダーにある GDBUpgrade.log ファイルにも結果が書き込まれます。
すべてのチェックに合格した場合、ツールはアップグレードに進みます。 前提条件チェックとアップグレードの状態は、ジオプロセシング ツールの進行状況を示すダイアログ ボックスに表示されます。 アップグレードが失敗すると、情報が GDBUpgrade.log ファイルに書き込まれます。 ユーザーの TEMP ディレクトリーにある sde_setup.log ファイルに追加情報が書き込まれます。 ユーザーが一時ディレクトリーを構成していない場合は、システムの TEMP ディレクトリーが使用されます。
スクリプトの実行
Python スクリプトを使用してジオデータベースをアップグレードするには、次のサンプル スクリプトのいずれかをコピーしてテキスト エディターに貼り付け、サイトに固有の情報に使用するように変更し、そのファイルを保存して閉じて、実行します。
ヒント:
ArcGIS Server コンピューターからの Python の実行の詳細については、「ArcGIS Server と ArcPy」をご参照ください。
例では、SDE ユーザーとして接続する既存のデータベース コネクション ファイル (.sde) があることを前提としています。 接続ファイルが存在しない場合は、アップグレードする前にファイルを作成します。
# Name: upgradesdegdb_example.py
# Description: Uses existing database connection file
# on a Windows computer to run prerequisite check
# and upgrade an enterprise geodatabase.
# Import arcpy module
import arcpy
# Local variables:
Output_Workspace = "C:\\ArcGIS\connection_files\<Connection file>"
Default_gdb = "C:\\ArcGIS\connection_files\<Connection file>"
# Process: Upgrade Geodatabase
arcpy.management.UpgradeGDB(Default_gdb, "PREREQUISITE_CHECK", "UPGRADE")
# Name: upgradesdegdb_example.py
# Description: Uses existing database connection file
# on a Linux computer to run prerequisite check
# and upgrade an enterprise geodatabase.
# Import arcpy module
import arcpy
# Local variables:
Output_Workspace = "<user>/connections/<Connection_file>"
Default_gdb = "<user>/connections/<Connection_file>"
# Process: Upgrade Geodatabase
arcpy.management.UpgradeGDB(Default_gdb, "PREREQUISITE_CHECK", "UPGRADE")