sql >> データベース >  >> RDS >> PostgreSQL

odoo12データベースのバックアップ所有者がいませんか?

    このエラーは、Postgresqlクライアント(Odooサーバー上のバージョン)とサーバー(データベースサーバー上のバージョン)のバージョンが異なる場合に発生します。 Odooの「公式」Dockerイメージまたはそれに基づくイメージを使用している場合。 veivaa / odooイメージ、debian:stretchバージョンに基づいており、デフォルトのクライアントとしてPostgresqlバージョン9.6があります。この設定では、不一致が発生します。クライアントv9.6がサーバーv10に接続します。エラーが発生します。

    これを解決するには、クライアントとサーバーに同じバージョンをインストールする必要があります。 Postgresサーバーを9.6にダウングレードするか、Odoo Dockerコンテナー内のPostgresクライアントを10にアップグレードできます。これは、クライアントを手動でアップグレードすることでテストできます。 docker exec -ti -u 0 yourodoocontainername bash Odooコンテナに移動し、Odooコンテナ内で次のコマンドを実行します。

    apt-get update
    echo 'deb http://apt.postgresql.org/pub/repos/apt/ stretch-pgdg main' >  /etc/apt/sources.list.d/pgdg.list
    yes Y | apt-get install wget
    yes Y | apt-get install gnupg
    wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | apt-key add -
    apt-get update
    yes Y | apt-get install postgresql-client-10
    

    これらを実行するには、コンテナ内のroot権限が必要です。このインストール後、execを終了し、docker restart yourodoocontainernameを使用してコンテナを再起動できます。 。ファイルストアを失わないように、Odooデータに永続ストレージを使用していることを確認してください。これらの手順を実行すると、OdooWebインターフェイスを使用してバックアップと復元を実行できるようになります。

    psql --versionを使用して、Postgresqlクライアントのバージョンを確認できます。 指図。バージョン9.6で期待される結果は、psql (PostgreSQL) 9.6.10です。 バージョン10ではpsql (PostgreSQL) 10.6 (Debian 10.6-1.pgdg90+1)

    execメソッドはテストには適していますが、手動の手順が含まれるため、永続的な使用には適していません。 Dockerfileを変更して、適切なバージョンでDockerイメージを構築する必要があります。




    1. Laravel5.1アップロードファイルのセキュリティ

    2. MySQLJOINとLEFTJOINの違い

    3. OracleApexのストアドプロシージャに新しいPKを渡す方法

    4. SQL サーバーで ID をオンまたはオフに設定する