通过命令行创建数据库

8 浏览
0 Comments

通过命令行创建数据库

我试图通过命令行创建一个数据库。\n我的操作系统是CentOS,Postgres版本是10.9。\n

sudo -u postgres psql createdb test
用户test的密码:

\n为什么会提示我输入密码?

0
0 Comments

问题出现的原因是在命令行中创建数据库时,可能会遇到权限不足的问题。解决方法是使用特定的命令来授权用户创建数据库。

在命令行中输入以下命令可以创建数据库:

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

然后,不要忘记为用户授予适当的权限:

sudo -u postgres psql -c 'grant all privileges on database test to username;'

在Mac上,只需输入以下命令即可创建数据库:

psql -c 'create database test;'

这样做的前提是您必须有一个与您的shell用户同名的postgresql用户,并且具有创建新数据库的权限。

0
0 Comments

创建数据库时出现了一个问题,问题可能是由于使用了错误的命令行工具导致的。正确的方法是使用psql中的create database语句来创建数据库。示例代码如下:

create database [数据库名称];

需要注意的是,SQL语句的结尾必须以分号(;)结束。

另外,还有一个提示是在语句结尾加上分号。这是因为Postgres将大写字母转换为小写字母。例如,CREATE DATABASE FOO实际上会创建一个名为foo的数据库。如果不加分号,可能会导致"database doesn't exist"的错误。

解决方法是确保语句的结尾加上分号,并且注意大小写转换的规则。

参考链接:stackoverflow.com/questions/43111996/...

0
0 Comments

在命令行中创建数据库的问题是由于以下原因引起的:用户尝试使用错误的命令在psql中创建数据库。

解决方法是确保使用正确的命令和语法在shell中创建数据库。以下是正确的命令和步骤:

1. 切换用户为postgres:

   su - postgres
   

2. 在shell中创建Postgres用户(而不是在psql中):

   $ createuser testuser
   

3. 创建数据库(同样在shell中):

   $ createdb testdb
   

4. 进入postgres Shell:

   psql(输入postgressql的密码)
   

5. 为postgres用户提供权限:

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

需要注意的是,createuser和createdb是在shell中运行的,而不是在psql中。如果在psql中运行,正确的命令是:

create user testuser;
create database testdb;

如果用户的名称是'user',可以使用以下命令运行:

$ alter user user with encrypted password 'qwerty';

0