簡體   English   中英

在數據庫內部時如何創建新的postgreSQL數據庫?

[英]How can I create a new postgreSQL database while already inside of a database?

我的postgreSQL配置有點混亂,當前需要使用命令psql -U myUsername myDbName登錄到數據庫。 我只有一個使用該用戶名創建的數據庫,所以我總是登錄到該數據庫。 有沒有一種方法可以在另一個數據庫中創建新數據庫?

我嘗試了命令CREATE DATABASE dbname; 雖然在數據庫中,但是沒有用。

如上面的評論所述,錯誤ERROR: permission denied to create database表示“並非每個用戶都有權創建新數據庫。如果PostgreSQL拒絕為您創建數據庫,則站點管理員需要授予您創建數據庫的權限。如果發生這種情況,請咨詢您的站點管理員。如果您自己安裝了PostgreSQL,則出於本教程的目的,應以啟動服務器的用戶帳戶登錄。 -pgDocs

因此,為了訪問postgres管理員,我必須更改pg_hba.conf

從:

host    all             all             127.0.0.1/32            md5
host    all             all             ::1/128                 md5

至:

host    all             all             127.0.0.1/32            trust
host    all             all             ::1/128                 trust

然后在命令提示符下運行以下命令:

psql -U postgres

授予“ myUsername”用戶權限以創建數據庫,即:ALTER ROLE myUsername CREATEROLE CREATEDB;

來源: http : //www.postgresql.org/docs/current/static/sql-alterrole.html

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM