PosgreSQL篇之常见的postgres指令及操作

本文详细介绍了Postgres数据库的基本操作,包括登录、数据库管理、表操作、用户管理以及数据库备份与恢复。通过示例命令,展示了如何创建、查询、修改数据库以及用户权限设置,是Postgres使用者的实用参考。

一、前言
众所周知,postgres是一种比较先进的对象关系型数据库DBMS,支持SQL标准的扩展,包括事务、外键、子查询等一系列关系型数据库的特性。

二、常见的Postgres操作
1、基本操作
登录

#注意:登录时,默认使用postgres用户和postgres数据库
#首先确保系统中存在postgres用户和对应的用户组
su - postgres
psql

执行后,即可进入postgres界面

2、数据库操作

#1、列举数据库,相当于MySQL中的 show databases
\l
#2、切换数据库,相当于MySQL中的use db
\c <dbname>
#3、列出数据库中对应的表信息,相当于show tables;
\dt
#4、查看表结构,相当于 desc;
\d tdlname
#5、创建数据库
create database <database>
#6、删除数据库
drop database <dbname>
#7、创建表
create table ([字段名1] [类型1] ;,[字段名2] [类型2],......<,primary key (字段名m,字段名n,...)>;); 
#8、在表中插入数据
insert into 表名 ([字段名m],[字段名n],......) values ([列m的值],[列n的值],......);
#9、备份数据库
pg_dump -U postgres -f /tmp/postgres.sql postgres           #(导出postgres数据库保存为postgres.sql)
pg_dump -U postgres -f /tmp/postgres.sql -t test01 postgres #(导出postgres数据库中表test01的数据)
pg_dump -U postgres -F t -f /tmp/postgres.tar postgres      #(导出postgres数据库以tar形式压缩保存为postgres.tar)
#10、恢复数据库
psql -U postgres -f /tmp/postgres.sql test01  # 恢复postgres.sql数据到test01数据库
pg_restore -U postgres -d test01 /tmp/postgres.tar  # 恢复postgres.tar数据到test01数据库

3、用户操作
1、切换用户

\c - <username>

2、创建用户并设置密码

create user 'username' with password 'password';
create role 'username' createdb password 'password' login; # 创建角色并授予创建数据库及密码登录的属性

3、修改用户密码

alter user 'username' with password 'password';

4、修改用户权限

alter role 'username' createdb;   # 授予某个用户创建数据库权限
alter role 'username' superuser;  # 授予超级管理员权限

5、数据库授权

grant all privileges on database 'dbname' to 'username'

6、角色属性

属性	                                                               说明
login	                                         只有具有 LOGIN 属性的角色可以用做数据库连接的初始角色名。
superuser	                                 数据库超级用户
createdb	                                     创建数据库权限
createrole	                                 允许其创建或删除其他普通的用户角色(超级用户除外)
replication	                                 做流复制的时候用到的一个用户属性,一般单独设定。
password	                                     在登录时要求指定密码时才会起作用,比如md5或者password模式,跟客户端的连接认证方式有关
inherit	                                         用户组对组员的一个继承标志,成员可以继承用户组的权限特性
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

听说唐僧不吃肉

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值