postgresql om azureにデータベースサービスを使用しているときに、カスタムテンプレートデータベースを作成できないように見えます。azure postgresqlサービスでデータベーステンプレートを作成する方法
私が達成したいのは、普通のアカウントで、csnは特定の拡張機能を有効にした新しいデータベースを作成することです。 作成は委任できますが、初期データベース管理アカウント以外のすべてのテストで拡張機能の有効化が失敗します。
postgresql om azureにデータベースサービスを使用しているときに、カスタムテンプレートデータベースを作成できないように見えます。azure postgresqlサービスでデータベーステンプレートを作成する方法
私が達成したいのは、普通のアカウントで、csnは特定の拡張機能を有効にした新しいデータベースを作成することです。 作成は委任できますが、初期データベース管理アカウント以外のすべてのテストで拡張機能の有効化が失敗します。
私はAzureデータベースfor PostgreSQLで次のことを試してみました。それが機能しました(Azureの手順を順を追って説明してください)。 AzureのCLI(bashの)followed steps in Quick Start for Azure PostgreSQLで
これはあなたがやろうとしていることですか?あなたは同じステップを踏んでエラーを叩いているのですか、あるいは何か違うことをしようとしていますか?
それはおおよそ私がやったことです。 1.次のコマンドを使用してデータベースを作成します。CREATE DATABASE my_template LC_COLLATE 'en-US' LC_CTYPE 'en-US' ENCODING 'UTF8' TEMPLATE template0; 2. \ c my_template(同じセッション)を介してそのデータベースに接続され、CREATE EXTENSION tablefuncと呼ばれます。 3.データベースを作成できるユーザーとセッションを作成し、コマンドを試してみましよう。CREATE DATABASE sub TEMPLATE my_template; 3.データベース「my_template」をコピーするために「ERROR permission deny」が発生しました。 – Wouter
私は最終的に私が行ったことが異なっていました。 メインのpostgres管理者アカウントを使用して、(create roleとcreate dbの権限のみを使用して)サブ管理アカウントを作成します。 その役割を使用して、上記の手順を実行できます。 しかし、このロールを使用して、新しいロールを作成します。 clientdb。このユーザーはmy_templateデータベースにアクセスできません。 my_templateデータベースが 'subadmin'によって作成されても、作成することはできません。主な違いは、clientdbロールは、subadminが実行できる間に新しいロールを作成できないことです。これは@NikLarinMSFTの意味を持ちますか? – Wouter
はい、あります。私が知る限り、AzureのPostgreSQL特有のものではありませんが、どのPostgresでも同じです。ローカルにインストールされたインスタンス – NikLarinMSFT
私はAzureサービスについて知らないけど、Postgresを使って_any_データベースをテンプレートとして使うことができます。それをテンプレートデータベースとしてマークする必要はありません。唯一の制限は、複製する場合、ソースデータベースに接続が許可されないことです。 –
ありがとう、それが私のために働くかどうかを確認します – Wouter
Azureは、通常のデータベースをテンプレートとして使用することを許可していません。彼らはパーミッションシステムの一部を変更しましたが、何がうまくいかなければならないかについてのドキュメントは見つかりませんでした。 – Wouter