OceanBase logo

OceanBase

トランザクション処理、分析、AIワークロードに最適な分散データベース

デプロイを自由に

OceanBase Cloud

OceanBaseの導入とスケーリングを最適化

エンタープライズ版

自社インフラ上での運用・管理に対応

オープンソース版を試す

コミュニティ版

開発者向けオープンソース分散データベース

OceanBase seekdb

AIネイティブなオープンソースの検索データベース

顧客事例

さまざまな業界の企業による導入事例を紹介します。

さらに見る
利用シーン別

あらゆるシナリオに対応するOLTP

ハイブリッドクラウドソリューション

大容量ストレージデータベースのコスト削減

リアルタイム分析混合ワークロード

複数インスタンスの統合

ドキュメント

会社概要

OceanBaseの企業情報、パートナーシップ、そして信頼性・セキュリティへの取り組みについて紹介します。

OceanBaseについて

法的情報

お問い合わせ

日本 - 日本語
International - English
中国站 - 简体中文
クラウドで始める

トランザクション処理、分析、AIワークロードに最適な分散データベース

デプロイを自由に

OceanBase Cloud

OceanBaseの導入とスケーリングを最適化

エンタープライズ版

自社インフラ上での運用・管理に対応

オープンソース版を試す

コミュニティ版

開発者向けオープンソース分散データベース

OceanBase seekdb

AIネイティブなオープンソースの検索データベース

顧客事例

さまざまな業界の企業による導入事例を紹介します。

さらに見る
利用シーン別

あらゆるシナリオに対応するOLTP

ハイブリッドクラウドソリューション

大容量ストレージデータベースのコスト削減

リアルタイム分析混合ワークロード

複数インスタンスの統合

OceanBaseの企業情報、パートナーシップ、そして信頼性・セキュリティへの取り組みについて紹介します。

OceanBaseについて

法的情報

お問い合わせ

クラウドで始める
编组
すべての製品
    • データベース
    • アイコンOceanBaseデータベース
アイコン

OceanBaseデータベース

V4.3.5

    OceanBase logo

    AI時代を支える分散データベース

    日本 - 日本語
    International - English
    中国站 - 简体中文
    プロダクト
    OceanBase Cloudエンタープライズ版コミュニティ版OceanBase seekdb
    会社概要
    OceanBaseについて法的情報お問い合わせ
    公式アカウント
    ConnpassXQiitaLumaGitHub

    © OceanBase 2026. All rights reserved

    クラウドサービス契約個人情報保護ポリシーセキュリティ
    お問い合わせ
    ドキュメントフィードバック
    1. ホーム
    2. OceanBaseデータベース
    3. V4.3.5
    アイコンOceanBaseデータベース
    V 4.3.5
    • V 4.3.5

    obshellのアップグレード

    最終更新日:2026-04-09 02:53:56  更新
    シェア
    このページの内容
    前提条件
    デプロイメントモード
    API呼び出しによるアップグレード
    ステップ1:対象バージョンのRPMパッケージをアップロードする
    ステップ2:アップグレードチェックAPIを呼び出す(オプション)
    ステップ3:アップグレードAPIを呼び出す
    ステップ4:アップグレードが成功したことを確認する
    全コード例
    obshellコマンドによるアップグレード
    ステップ1:アップグレードコマンドを実行してアップグレードを実行する
    ステップ2:アップグレードが成功したことを確認する

    折りたたみ

    シェア

    obshellのアップグレードには、2つの方法があります:

    • APIを呼び出してアップグレードする

    • obshellコマンドを使用してアップグレードする

    本記事では、3リプリカ構成のOceanBaseクラスタを例に、obshellのアップグレード方法を説明します。

    前提条件

    • OceanBaseクラスタはobshellによって運用管理されていること。詳細な判断方法および引き継ぎ操作については、obshell以外でデプロイされたクラスタの引き継ぎを参照してください。

    • OceanBaseクラスタのすべてのOBServerノードとobshellが正常に稼働していること。

    デプロイメントモード

    本記事では、3台のマシンの使用状況は以下のとおりです(obshellはデフォルトポート2886を使用します):

    ロール マシン 備考
    OBServerノード 10.10.10.1 OceanBaseデータベースzone1
    OBServerノード 10.10.10.2 OceanBaseデータベースzone2
    OBServerノード 10.10.10.3 OceanBaseデータベースzone3

    API呼び出しによるアップグレード

    説明

    obshellは呼び出されるAPIに対してセキュリティ検証を行います。そのため、APIを呼び出すたびに、APIハイブリッド暗号化の記事を参照してリクエストを暗号化し、curlコマンドで暗号化後のリクエストヘッダー(${request_headers})とリクエストボディ(${request_body})を設定する必要があります。

    ステップ1:対象バージョンのRPMパッケージをアップロードする

    任意のobshellの/api/v1/upgrade/package APIを呼び出して、パッケージをアップロードします。obshellをアップグレードする際には、obshellパッケージをアップロードする必要があります。

    コマンドラインコマンド
    Python
    GO

    コマンドラインで対応するAPIを呼び出す方法については、RPMパッケージのアップロードを参照してください。

    [admin@test001 ~]$ curl -H 'X-OCS-Header:${request_headers}' -X POST -F "file=@/data/upgrade/obshell-x.x.x.x-xxx.el7.x86_64.rpm" http://10.10.10.1:2886/api/v1/upgrade/package
    

    obshell-sdk-pythonを使用して対応するAPIメソッドをリクエストする方法の詳細については、RPMパッケージのアップロードを参照してください。

    ···
    client = ClientSet("10.10.10.1", 2886, PasswordAuth("****"))
    client.v1.upload_package("/data/upgrade/obshell-x.x.x.x-xxx.el7.x86_64.rpm")  # /api/v1/upgrade/packageを呼び出す
    ···
    

    obshell-sdk-goを使用して対応するAPIメソッドをリクエストする方法の詳細については、RPMパッケージのアップロードを参照してください。

    ···
    client, err := services.NewClientWithPassword("10.10.10.1", 2886, "****")
    req := client.V1().NewUploadPkgRequest("/data/upgrade/obshell-x.x.x.x-xxx.el7.x86_64.rpm")  // /api/v1/upgrade/packageを呼び出す
    dag, err := client.V1().UploadPkgWithRequest(req)
    ···
    

    ステップ2:アップグレードチェックAPIを呼び出す(オプション)

    任意のobshellの/api/v1/agent/upgrade/checkを呼び出してアップグレードチェックを実行します。対象バージョンのパッケージがアップロードされているか、アップグレードに必要なプロダクトが揃っているかなどを確認します。

    コマンドラインコマンド
    Python
    GO

    コマンドラインで対応するAPIを呼び出す方法については、obshellアップグレードチェックを参照してください。このAPIは非同期タスクを作成し、タスクの進捗状況を確認するにはタスクの詳細情報を取得するを参照してください。タスクが完了するまで待機すると、アップグレードチェックが完了します。

    [admin@test001 ~]$ curl -H "Content-Type: application/json" -H 'X-OCS-Header:${request_headers}' -X POST -d '${request_body}' http://10.10.10.1:2886/api/v1/agent/upgrade/check
    

    obshell-sdk-pythonを使用して対応するAPIメソッドをリクエストする方法の詳細については、obshellアップグレードチェックを参照してください。

    ···
    client = ClientSet("10.10.10.1", 2886, PasswordAuth("****"))
    client.v1.upgrade_agent_check_sync("x.x.x.x", "xxx.el7")  # /api/v1/agent/upgrade/checkを呼び出す
    ···
    

    obshell-sdk-goを使用して対応するAPIメソッドをリクエストする方法の詳細については、obshellアップグレードチェックを参照してください。

    ···
    client, err := services.NewClientWithPassword("10.10.10.1", 2886, "****")
    req := client.V1().NewUpgradeAgentCheckRequest("x.x.x.x", "xxx.el7")
    dag, err := client.V1().UpgradeAgentCheckSyncWithRequest(req)  // /api/v1/agent/upgrade/checkを呼び出す
    ···
    

    ステップ3:アップグレードAPIを呼び出す

    obshellの/api/v1/agent/upgradeを呼び出してアップグレードを実行します。

    コマンドラインコマンド
    Python
    GO

    コマンドラインで対応するAPIを呼び出す方法については、obshellのアップグレードを参照してください。このAPIは非同期の運用保守タスクを作成します。タスクの進捗状況を確認するには、タスクの詳細情報の取得を参照してください。タスクが完了するまで待機すると、アップグレードが完了します。

    [admin@test001 ~]$ curl -H "Content-Type: application/json" -H 'X-OCS-Header:${request_headers}' -X POST -d '${request_body}' http://10.10.10.1:2886/api/v1/agent/upgrade
    

    obshell-sdk-pythonを使用して対応するAPIメソッドをリクエストする方法の詳細については、obshellのアップグレードを参照してください。

    ···
    client = ClientSet("10.10.10.1", 2886, PasswordAuth("****"))
    client.v1.upgrade_agent_sync("x.x.x.x", "xxx.el7")  # /api/v1/agent/upgradeを呼び出す
    ···
    

    obshell-sdk-goを使用して対応するAPIメソッドをリクエストする方法の詳細については、obshellのアップグレードを参照してください。

    ···
    client, err := services.NewClientWithPassword("10.10.10.1", 2886, "****")
    req := client.V1().NewUpgradeAgentRequest("x.x.x.x", "xxx.el7")
    dag, err := client.V1().UpgradeAgentSyncWithRequest(req)  // /api/v1/agent/upgradeを呼び出す
    ···
    

    ステップ4:アップグレードが成功したことを確認する

    rootユーザーでOceanBaseデータベースのsysテナントにログインし、以下のコマンドを実行してobshellのバージョンを確認します。

    obclient [oceanbase]> select version from ocs.all_agent;
    

    全コード例

    Python
    GO
    from obshell import ClientSet
    from obshell.auth import PasswordAuth
    
    client = ClientSet("10.10.10.1", PasswordAuth("****"))
    
    # アップグレードに必要なパッケージをアップロードします。
    client.v1.upload_pkg("/data/upgrade/obshell-x.x.x.x-xxx.el7.x86_64.rpm")
    
    # アップグレード前のチェックを実行します。
    client.v1.upgrade_agent_check_sync("x.x.x.x", "xxx.el7")
    
    # obshellをアップグレードします。
    client.v1.upgrade_agent_sync("x.x.x.x", "xxx.el7")
    
    package main
    
    import (
        "github.com/oceanbase/obshell-sdk-go/services"
    )
    
    func main() {
        var err error // 本番環境では、errorを処理する必要があります。
    
        // クライアントインスタンスを作成します。ノードのアドレスは'10.10.10.1'、ポートは2886です。
        // 所属クラスタのroot@sysパスワードは'****'です。
        client, err := services.NewClientWithPassword("10.10.10.1", 2886, "***")
    
        // クラスタにRPMパッケージをアップロードします。
        req1 := client.V1().NewUploadPkgRequest("/data/upgrade/obshell-x.x.x.x-xxx.el7.x86_64.rpm")
        dag1, err := client.V1().UploadPkgWithRequest(req1)
    
        // アップグレード前のチェック。
        req2 := client.V1().NewUpgradeObCheckRequest("x.x.x.x", "xxx.el7")
        dag2, err := client.V1().UpgradeObCheckSyncWithRequest(req2)
    
        // obshellのアップグレード。
        req3 := client.V1().NewUpgradeObRequest("x.x.x.x", "xxx.el7")
        dag3, err := client.V1().UpgradeObSyncWithRequest(req3)
    }
    

    obshellコマンドによるアップグレード

    ステップ1:アップグレードコマンドを実行してアップグレードを実行する

    任意のノードで obshell agent upgrade コマンドを実行し、-d でターゲットバージョンパッケージの保存パスを指定します。コマンドの詳細については、obshell agent upgradeを参照してください。

    [admin@test001 ~]$ /home/admin/oceanbase/bin/obshell agent upgrade -d /data/upgrade/
    

    ステップ2:アップグレードが成功したことを確認する

    rootユーザーでOceanBaseデータベースのsysテナントにログインし、以下のコマンドを実行してobshellのバージョンを確認します。

    obclient [oceanbase]> select version from ocs.all_agent;
    

    前のトピック

    obshellの起動と停止
    最後

    次のトピック

    OceanBaseクラスタのデプロイ
    次
    このページの内容
    前提条件
    デプロイメントモード
    API呼び出しによるアップグレード
    ステップ1:対象バージョンのRPMパッケージをアップロードする
    ステップ2:アップグレードチェックAPIを呼び出す(オプション)
    ステップ3:アップグレードAPIを呼び出す
    ステップ4:アップグレードが成功したことを確認する
    全コード例
    obshellコマンドによるアップグレード
    ステップ1:アップグレードコマンドを実行してアップグレードを実行する
    ステップ2:アップグレードが成功したことを確認する