postgres常用命令
1.登录
psql -U pname -d database // pname 表示postgres的登录用户名,database 则表示要访问的数据库
2.查看所有的数据库
\l
3.查看所有的表(这里的红色部分根据你要查看的数据库的名字来改变)
\d database
4.查看表的结构(这里的红色部分根据你要查看的表的名字来改变)
\d tablename
5.切换数据库
\c database
6.退出登录
\q
7. 创建database
CREATE DATEBASE database_name;
8. 创建schema
CREATE SCHEMA schema_name;
9.查看数据库下面所有的schema
select * from information_schema.schemata;
10.查看一个schema下面所有的表
select * from information_schema.tables where table_schema = 'schema_name';
11.创建角色
CREATE ROLE role_name [...];
[...]为可多选角色属性参数,参数可分别为:
- 登陆(login):具有login属性的角色可以连接数据库,一个带有login属性的角色可以等同于“数据库用户”,因为数据库用户创建的时候默认自带login属性.
- 超级用户(superuser):超级用户拥有至高无上的权限,但是这个权限分配的时候,一定要小心,想要创建超级用户,必须使用带超级用户的角色去创建带“超级用户”的角色 .
- 创建数据库(createdb):创建数据库属性,顾名思义就是拥有“创建数据库”属性的角色可以创建数据库,对于超级用户的角色来说,自身可以创建数据库,不用带“创建数据库”属性 .
- 创建角色(createrole):带有“创建角色”属性的角色可以创建其他角色。一般带有“创建角色”属性的角色还可以删除和更改其他角色(删除和更改只限于普通用户)
- 口令(password):只有在客户认证方法要求与数据库建立连接必须使用口令的时候, 口令才比较重要.
在创建好角色后,如果需要修改的话,可以使用alter role语句修改
12.权限设置
将名字为schema_name的schema的所有权限给予role_name角色;
grant all on schema schema_name to role_name;
将名字为schema_name的schema下面所有的表的操作权限给予role_name角色;
grant all on all tables in schema schema_name to role_name;
如果你不准备将所有的权限都给予role_name角色,可以给予部分的权限,每个权限值之间以逗号分隔,而权限的明细如下:
- SELECT:该权限用来查询表或是表上的某些列,或是视图,序列。
- INSERT:该权限允许对表或是视图进行插入数据操作,也可以使用COPY FROM进行数据的插入。
- UPDATE:该权限允许对表或是或是表上特定的列或是视图进行更新操作。
- DELETE:该权限允许对表或是视图进行删除数据的操作。
- TRUNCATE:允许对表进行清空操作。
- REFERENCES:允许给参照列和被参照列上创建外键约束。
- TRIGGER:允许在表上创建触发器。
- CREATE:对于数据库,允许在数据库上创建Schema;对于Schema,允许对Schema上创建数据库对象;对于表空间,允许把表或是索引指定到对应的表空间上(在Oracle中,我们是用quota子句或是unlimited tablespace权限来控制)。该权限与Oracle上的CREATE类权限完全不同了。
- CONNECT:允许用户连接到指定的数据库上。
- TEMPORARY或是TEMP:允许在指定数据库的时候创建临时表。
- EXECUTE:允许执行某个函数。
- USAGE:对于程序语言来说,允许使用指定的程序语言创建函数;对于Schema来说,允许查找该Schema下的对象;对于序列来说,允许使用currval和nextval函数;对于外部封装器来说,允许使用外部封装器来创建外部服务器;对于外部服务器来说,允许创建外部表。
- ALL PRIVILEGES:表示一次性给予可以授予的权限。
还会不断扩充......
postgres常用命令的更多相关文章
- Postgres常用命令之增、删、改、查
增.删.改.查: postgres=# \password postgres 为postgres进行密码设置: postgres=# CREATE USER test WITH PASSWORD '1 ...
- SecureCRT 常用命令
常用命令:一.ls 只列出文件名 (相当于dir,dir也可以使用) -A:列出所有文件,包含隐藏文件. -l:列表形式,包含文件的绝大部分属性. -R:递归显示. --help:此命令的帮助. 二. ...
- docker-image container 基本操作 -常用命令
基本概念: container 容器.可以把每个 container 看做是一个独立的主机. container 的创建通常有一个 image 作为其模板.类比成虚拟机的话可以理解为 image 就是 ...
- 转收藏:Git常用命令速查表
一. Git 常用命令速查 git branch 查看本地所有分支git status 查看当前状态 git commit 提交 git branch -a 查看所有的分支git branch -r ...
- [转] postgresql常用命令
PS: 数据库安装后,里面的每个数据库有自己的用户密码,需要dump的时候,指定用户pg_dump -U xxx <数据库> > 某个地址 最近一直在学习Postgresql,下面 ...
- SecureCRT 常用命令大全
常用命令:一.ls 只列出文件名 (相当于dir,dir也可以使用) -A:列出所有文件,包含隐藏文件. -l:列表形式,包含文件的绝大部分属性. -R:递归显示. --help:此命令的帮助. 二. ...
- postgresql的psql常用命令-4
psql是PostgreSQL的一个命令行交互式客户端工具 1. 查看postgresql账号 [root@localhost ~]#cat /etc/passwdroot:x:0:0:root:/r ...
- docker 开发常用命令总结
Docker 常用命令总结,镜像下载,到docker容器创建,常用docker命令的 增删查 1.镜像下载,从hub.docker.com中下载最新版本的postgres docker pull po ...
- Docker常用命令<转>
创建redis服务端docker run -p 6379:6379 -d --name redis-server docker.io/redis:3.0.7 redis-server -- port ...
随机推荐
- 无法查找或打开 PDB 文件解决办法
用VS调试程序时,有时会在VS底部的“输出”框中提示“无法查找或打开 PDB 文件”.这该怎么解决呢? 下面,我们以VS2013为例,来教大家解决办法. 工具/原料 VS 方法/步骤 打开VS20 ...
- spring4-4-jdbc-01
1.建立数据属性文件db.properties jdbc.user=root jdbc.password=root jdbc.driverClass=com.mysql.jdbc.Driver jdb ...
- 无归档情况下使用BBED处理ORA-01113错误
在丢失归档情况下,恢复时常会遇到ora-01113错误,以下实验模拟表空间offline,然后在丢失归档文件的情况下使用BBED修改文件头信息,最后恢复数据文件: 数据库版本: SQL> sel ...
- java网站如何集成facebook第三方登录
第一次接触Facebook第三方登录,可能有些地方做的并不全面,只是尝试着做了一个小demo,因为国内接入Facebook的项目并不多,并且多数都是Android或iOS的实现,所以资料也特别少,在此 ...
- Qt编译,imp_CommandLineToArgvW@8问题
Tested msvc2013. The linker can not find _imp_CommandLineToArgvW@8. It's in shell32.lib. I see qtmai ...
- HDU 3361 ASCII (水题)
题意: 析:不说话. #include <cstdio> #include <string> #include <cstdlib> #include <cma ...
- Hive 0.12.0安装指南
目录 目录 1 1. 前言 1 2. 约定 1 3. 服务端口 2 4. 安装MySQL 2 4.1. 安装MySQL 2 4.2. 创建Hive元数据库 2 5. 安装步骤 3 5.1. 下载Hiv ...
- 编写高质量代码改善C#程序的157个建议——建议68:从System.Exception或其他常见的基本异常中派生异常
建议68:从System.Exception或其他常见的基本异常中派生异常 微软建议:从System.Exception或其他常见基本异常之一派生异常.在Visual Studio中输入Excepti ...
- c语言和java以及安卓和苹果
苹果手机是本地,没有中间环节,速度快,基于Linux系统 安卓是通过虚拟机,影响速度 就像c语言和java c适用于架构小的地方,因为直接编译运行 而java用于架构比较大的地方,启动慢,启动之后效率 ...
- 修改TomCat端口实现多实例
TomCat默认的端口是8080,还会占用8005,8009和8443端口.如果已经启动了tomcat,再启动一个tomcat会发现这些端口已经被占用了,这个时候就需要修改端口号. 以apac ...