我正在尝试从命令行创建数据库。 我的SO是centos,postgres是9.2
sudo -u postgres psql createdb test
Password for user test:
为什么用户问我?
答案 0 :(得分:72)
将用户更改为postgres:
su - postgres
为Postgres创建用户
$ 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;
答案 1 :(得分:34)
尝试:
sudo -u postgres psql -c 'create database test;'
答案 2 :(得分:20)
createdb
是一个命令行实用程序,您可以从bash运行而不是从psql运行。要从psql创建数据库,请使用create database语句,如下所示:
create database [databasename];
注意:请务必使用;
答案 3 :(得分:8)
作为Postgres的默认配置,用户名为 postgres ,用户 postgres 对您的操作系统上运行的整个PostgreSQL实例具有完全的超级管理员访问权限。
sudo -u postgres psql
上面的命令可以在管理模式下获取psql命令行界面。
创建用户
sudo -u postgres createuser <username>
创建数据库
sudo -u postgres createdb <dbname>
注意:&lt; &GT;在编写命令时不使用它们,它们仅用于表示变量
答案 4 :(得分:5)
正如一些答案所指出的,android.app.Fragment
是一个可用于创建数据库的命令行实用程序。
假设您有一个名为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
进行测试。
答案 5 :(得分:2)
PostgreSQL Create Database - 在 Postgres 中创建数据库的步骤。
su - postgres
bash-4.1$ psql psql (12.1) Type "help" for help. postgres=#
CREATE DATABASE database_name;
答案 6 :(得分:1)
PGPORT=5432
PGHOST="my.database.domain.com"
PGUSER="postgres"
PGDB="mydb"
createdb -h $PGHOST -p $PGPORT -U $PGUSER $PGDB
答案 7 :(得分:1)
使用单个命令行:
su -c "createuser dbuser;createdb -h localhost -p 5432 -E UTF8 -O dbuser dbname;" - postgres