在 PostgreSQL 中从命令行创建数据库

问题描述 投票:0回答:9

我正在尝试从命令行创建数据库。 我的操作系统是centos,postgres版本是10.9。

sudo -u postgres psql createdb test
Password for user test:

为什么提示我输入密码?

database postgresql command-line command psql
9个回答
295
投票

将用户更改为 postgres :

su - postgres

为 Postgres 创建用户(在 shell 中,使用 psql)

$ createuser testuser

创建数据库(同上)

$ createdb testdb

访问 postgres Shell

psql ( enter the password for postgressql)

向 postgres 用户提供权限

$ alter user testuser with encrypted password 'qwerty';
$ grant all privileges on database testdb to testuser;

124
投票

尝试:

sudo -u postgres psql -c 'create database test;'

62
投票

createdb
是一个命令行实用程序,您可以从 bash 而不是从 psql 运行它。要从 psql 创建数据库,请使用创建数据库语句,如下所示:

create database [databasename];

注意:请务必始终以

;

结束 SQL 语句

47
投票

正如一些答案所指出的,

createdb
是一个命令行实用程序,可用于创建数据库。

假设您有一个名为

dbuser
的用户,可以使用以下命令创建数据库并提供对
dbuser
的访问:

createdb -h localhost -p 5432 -U dbuser testdb

localhost
替换为正确的数据库主机名,将
5432
替换为正确的数据库端口,并将
testdb
替换为您要创建的数据库名称。

现在

psql
可用于连接到这个新创建的数据库:

psql -h localhost -p 5432 -U dbuser -d testdb

使用

createdb
psql
版本
9.4.15
进行测试。


24
投票

作为 Postgres 的默认配置,创建了一个名为 postgres 的用户,并且用户 postgres 对在操作系统上运行的整个 PostgreSQL 实例拥有完全的超级管理员访问权限。

sudo -u postgres psql

上面的命令让您在管理模式下进入 psql 命令行界面。

创建用户

sudo -u postgres createuser <username>

创建数据库

 sudo -u postgres createdb <dbname>

注意:< >在编写命令时不能使用,它们仅用于表示变量


10
投票

PostgreSQL 创建数据库 - 在 Postgres 中创建数据库的步骤。

  1. 使用 postgres 用户登录服务器。
    su - postgres
  2. 连接到postgresql数据库。
bash-4.1$ psql
psql (12.1)
输入“帮助”以获得帮助。
postgres=#
  1. 执行以下命令创建数据库。
创建数据库数据库名称;

查看以下详细信息: https://orahow.com/postgresql-create-database/


4
投票

使用单个命令行:

su -c "createuser dbuser;createdb -h localhost -p 5432 -E UTF8 -O dbuser dbname;" - postgres

3
投票
PGPORT=5432
PGHOST="my.database.domain.com"
PGUSER="postgres"
PGDB="mydb"
createdb -h $PGHOST -p $PGPORT -U $PGUSER $PGDB

3
投票

这很简单,但有时我发现答案很棘手。
[对于 Windows 用户]
打开Windows cmd

  • psql -U <username>

  • 连接到 psql 后,输入以下命令创建新数据库:

    CREATE DATABASE <database_name>; 

  • 要验证数据库是否已创建,您可以运行

    \l
    命令列出所有可用的数据库。您的新数据库应在输出中列出。
    ------[附加]------

  • 您现在可以使用以下命令连接到新数据库

© www.soinside.com 2019 - 2024. All rights reserved.