我是一个postgreSQL新手,我找不到任何有用的介绍来使用psql命令。至少我认为这是我想要使用的命令。
postgreSQL中是否可以简单地连接到服务器然后列出,创建,使用和检查数据库?
我希望能够使用psql用MySQL做这样的事情(我删除了很多额外的行):
连接时没有指定数据库 - 我似乎无法使用psql:
$ mysql -u root -prootpassword
Welcome to the MySQL monitor. Commands end with ; or \g.
Server version: 5.5.28 MySQL Community Server (GPL)
我可以使用mysql列出数据库但是posgreSQL命令SHOW似乎没有这样做。
mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| ocdp |
| performance_schema |
| test |
+--------------------+
5 rows in set (0.04 sec)
我可以切换数据库。
mysql> use ocdp;
Database changed
我无法在psql中找出这个命令:
mysql> show tables;
+---------------------------------+
| Tables_in_ocdp |
+---------------------------------+
| OCAddresses |
| OCStreets |
+---------------------------------+
2 rows in set (0.00 sec)
我想我可以使用'createdb'和'dropdb'命令在psql中执行此操作:
mysql> create database foo;
Query OK, 1 row affected (0.00 sec)
mysql> drop database foo;
Query OK, 0 rows affected (0.03 sec)
我使用\ quit
mysql> quit
Bye
对于知道postgreSQL的人来说,这些问题的答案应该只需要一点时间,但我无法在任何地方找到说明如何进行这些简单操作的文档。也许我根本不应该使用psql呢?
答案 0 :(得分:49)
连接到服务器:
$ mysql -u root -prootpassword
$ su - postgres
$ psql
列出数据库:
mysql> show databases;
postgres=# \l
切换数据库:
mysql> use ocdp;
postgres=# \c ocdp
显示表格:
mysql> show tables;
postgres=# \dt
创建数据库:
mysql> create database foo;
postgres=# create database foo;
drop database:
mysql> drop database foo;
postgres=# drop database foo;
退出:
mysql> quit
postgres=# \q
答案 1 :(得分:3)
如果您使用的是Mac-OS-X和postgres 9.4
,请尝试使用此命令psql --list
答案 2 :(得分:2)
默认用户名是您的Unix用户名,默认数据库名称
\ connect [dbname [username] [host] [port]]建立与PostgreSQL服务器的新连接
\ d [S +] [pattern] 对于每个关系(表,视图,索引,序列或外表)或与模式匹配的复合类型,显示所有列
这与PostgreSQL中的语句相同,即documented in the manual
\ q或\ quit退出psql程序。 的
答案 3 :(得分:1)
带终端的Postgresql
进入postgresql
g
通过
查找postgresql中的数据库列表 sudo -u postgres psql
按照以下命令连接到数据库
$ \l
通过
查看数据库中的模型 $ \c databasename
现在显示数据库中存在的表的列表,并对表执行操作,如
$ \dt