我正在尝试从命令行创建数据库。 我的操作系统是centos,postgres版本是10.9。
sudo -u postgres psql createdb test
Password for user test:
为什么提示我输入密码?
将用户更改为 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;
尝试:
sudo -u postgres psql -c 'create database test;'
createdb
是一个命令行实用程序,您可以从 bash 而不是从 psql 运行它。要从 psql 创建数据库,请使用创建数据库语句,如下所示:
create database [databasename];
注意:请务必始终以
;
结束 SQL 语句
正如一些答案所指出的,
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
进行测试。
作为 Postgres 的默认配置,创建了一个名为 postgres 的用户,并且用户 postgres 对在操作系统上运行的整个 PostgreSQL 实例拥有完全的超级管理员访问权限。
sudo -u postgres psql
上面的命令让您在管理模式下进入 psql 命令行界面。
创建用户
sudo -u postgres createuser <username>
创建数据库
sudo -u postgres createdb <dbname>
注意:< >在编写命令时不能使用,它们仅用于表示变量
PostgreSQL 创建数据库 - 在 Postgres 中创建数据库的步骤。
su - postgres
bash-4.1$ psql psql (12.1) 输入“帮助”以获得帮助。 postgres=#
创建数据库数据库名称;
使用单个命令行:
su -c "createuser dbuser;createdb -h localhost -p 5432 -E UTF8 -O dbuser dbname;" - postgres
PGPORT=5432
PGHOST="my.database.domain.com"
PGUSER="postgres"
PGDB="mydb"
createdb -h $PGHOST -p $PGPORT -U $PGUSER $PGDB
这很简单,但有时我发现答案很棘手。
[对于 Windows 用户]
打开Windows cmd
psql -U <username>
连接到 psql 后,输入以下命令创建新数据库:
CREATE DATABASE <database_name>;
要验证数据库是否已创建,您可以运行
\l
命令列出所有可用的数据库。您的新数据库应在输出中列出。您现在可以使用以下命令连接到新数据库