はじめに

Vertica 9.1.1から、スキーマのオーナー(スキーマ内のオブジェクトを含む)を1つのSQLで変更できるようになりました。
これは以下のような場合の作業負荷を軽減します。

  • 開発/テスト作業中の仕様変更に伴うオーナー変更

  • DB全体のバックアップからスキーマのリストアを行った後のオーナー変更


  • Verticaデータベースのバックアップに関する内容は以下の記事をご参照ください。
    <バックアップ・リストアのまとめ記事>
    http://vertica-tech.ashisuto.co.jp/backup-restore-summary/

    構文

    以下のSQLでスキーマのオーナーを変更します。
    末尾の「CASCADE」を明示的に付与すると、スキーマ内のオブジェクトのオーナーも変更します。


    実行例

    「s1」スキーマのオーナーを「u1」ユーザへする場合の実行例です。

    <補足>
    スキーマのオーナーは、スキーマ内のオブジェクトを参照できる権限を持ちます。
    実行例ではオーナーの変更前後で参照可能なオブジェクトに違いがある内容を示しています。


    検証バージョンについて

    この記事の内容はVertica 9.2で確認しています。