微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

PostgreSQL如何使用createdb等命令

初次接触Postgresql,安装完Postgresql之后发现网上有很多创建数据库的命令,比如createdb,dropdb等这些简单的命令,无奈打开Postgresql安装目录下的sql Shell命令,发现这些命令并不好用,通过一番了解之后总结如下:

1.psql,createdb,dropdb这些命令是在dos命令下直接可以使用的,当然首先是需要将Postgresql的bin目录配置到环境变量中,你会发现在bin目录下有这些命令的exe文件。如在C:\Users\Administrator>该路径下,直接使用psql,createdb这些命令。

2.如果没有配置关于用户,主机,端口这些环境变量则需要将这些加入到命令行中,如:

C:\Users\Administrator>createdb –h localhost –U postgres–p 5432 demo

点击回车之后,会让输入数据库的密码,输入之后,你可以通过GUI工具查看已经完成了创建。上述命令的意思是:

-h localhost 是为了确定登录的主机

-U postgres 是确定登录数据库用户名,其中postgres是安装Postgresql数据库认的用户

-p 5432 是确定端口号,认的端口号是5432,如同MysqL的3306

3.为了不用每次使用psql,createdb,dropdb这些命令时都要输入-h,-U,-p这些参数,可以选择在环境变量中加入配置,如下:

PGHOST=localhost 配置登录主机

PGPORT=5432 配置端口号

PGUSER=postgres 配置登录用户

在环境变量中加入这些配置之后就可以直接使用psql,createdb,dropdb等命令而不需要加入-h,-p这些参数。

4.删除数据库时会出现类似:

ERROR: database"demo" is being accessed by other users

描述: There is 1 other sessionusing the database.

错误,我要删除数据库是demo。在GUI工具如:pgAdmin中,我们可以看到数据库是在连接状态,当然可以通过GUI工具直接关闭连接或者删除,当然我们可以通过命令行的方式来处理,首先要关闭指定数据库连接,这里是testdb,如下:

SELECT pg_terminate_backend(pg_stat_activity.pid) FROMpg_stat_activity WHERE datname=’testdb’ AND pid<>pg_backend_pid();

然后在执行删除数据库命令:DROP DATABASE testdb;

原文地址:https://www.jb51.cc/postgresql/193646.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐