注:本文内容操作系统平台通用;
部分命令行命令,使用 % 符号,代指 MacOS,对其后的命令没有影响。
Overview
PostgreSQL 内部命令
\h
:查看SQL命令的解释,比如\h
select。\?
:查看psql命令列表。\l
:列出所有数据库。\c
: [database_name]:连接其他数据库。\d
:列出当前数据库的所有表格。\d [table_name]
:列出某一张表格的结构。\dt public.*
:列出某一个 schema 下的所有表。\du
:列出所有用户。\e
:打开文本编辑器。\conninfo
:列出当前数据库和连接的信息。\q
: 命令退出控制台(也可以直接按ctrl+D)。
创建数据库用户
CREATE USER dbuser WITH PASSWORD 'password';
创建数据库
创建用户数据库,这里为exampledb,并指定所有者为dbuser。
CREATE DATABASE exampledb OWNER dbuser;
数据库用户权限
将exampledb数据库的所有权限都赋予dbuser,否则dbuser只能登录控制台,没有任何数据库操作权限。
GRANT ALL PRIVILEGES ON DATABASE exampledb to dbuser;
PostgreSQL 命令行命令
登陆数据库
% psql -U dbuser -d exampledb -h 127.0.0.1 -p 5432
PostgreSQL 的 SQL 语句
N/A
其它
dump 数据
从远程数据库 dump 表数据到本地数据库:
% pg_dump -h <remote host> -U <user name> -p <port> \
-a -t [schema.]<table name> <db name> \
| \
psql -h localhost -U <user name> <database>
Reference: Copy a table from one database to another in Postgres 🔗