postgres基本操作大全
首先切换到postgres用户
su - postgres -- 首先切换到postgres
常识:PG安装完后默认带有postgres库,可以先进入postgres库再去创建新库
1创建用户:
postgres=# create user testuser with password '123456';
CREATE ROLE
2创建数据库:
postgres=# create database testdb owner testuser; 创建数据库给指定用户
3将数据库的权限全部赋给用户:
postgres=# grant all on database testdb to testuser;
4创建schema:
postgres=# create schema abc authorization abcuser;
create schema
postgres=# create schema authorization abcuser; 指定了owner则schema名字和owner一致
5删除schema
drop schema abc cascade; 加了cascade可以把关联的表和视图一起删掉
6 修改数据库密码
alter user abcuser with password '123'
7导入整个数据库:
\q先退出数据库编辑模式
psql -U testuser testdb < /data/backup.sql 用户名和数据库
8远程连接和导入命令:
psql -h 主机域名或者IP -p 端口 -U 用户 -d 数据库 (PG默认端口5432)
例如:psql -h postgres.db.com -p 5432 -U testuser -d testdb
psql -h postgres.db.com -p 5432 -U testuser -d testdb < table_create.utf8.sql
9切换数据库
\c dbname (相当于mysql 的 use dbname)
10列举数据库
\l (相当于mysql 的show databases)
11列举表
\dt (相当于mysql 的show tables)
12查看表结构
\d tblname (相当于mysql 的 desc tblname , show columns from tbname)
13查看索引
\di
表操作:
1改变表名
alter table [表名A] rename to [表名B];
2删除表
drop table [表名];
3表里添加字段
alter table [表名] add column [字段] [类型];
4删除表字段
alter table [表名] drop column [字段];
5重命名一个表字段
alter table [表名] rename column [A] to [B];
6表中插入数据
insert into 表名 (字段名m) values (列m的值)
7更新表中某行某列的数据
update [表名] set [目标字段名]=[目标值] where [改行特征];
8删除表中某行数据
delete from 表名 where [改行特征];
9删除整个表
delete from 表名;
10创建表
create table 字段名 类型;
角色创建:
1create role rolename with optional_permisson;
2create role rolename with login;
\h create role 可查看创建角色时可设置的管理权限
3改变角色的权限“
alter role rolename with attribute_options;
alter role rolename with nologin;
4赋予角色权限
grant permission_type on tablename to rolename;
备注:
\copyright 显示PG的使用和发行条款
\encoding [字元编码名称]
\password [username]
\q 退出
create role rolename 和 create user username这两者的区别:创建的角色rolename没有登录权限,而创建的用户username是有登录权限的,
\du显示用户和用户的属性
pg_ctl reload重启PG
postgres基本操作大全的更多相关文章
- postgres 基本操作
登陆: $ psql -U <user> -d <dbname> 数据库操作: $ \l //查看库 $ \c <dbname> //切换库 // ...
- 【全面】Linux基础知识和基本操作语句大全(一)
接触Linux已经有一段时间了,由于实际需要,三三两两地掌握了一些基本语法和实用语句,主要都是在日常开发中用得比较多的,条理不是特别清晰,请见谅!下面开始上硬货!! 基本操作: 关闭Linux系统的命 ...
- FTP基本操作类大全,外加c#基础公共帮助类
总结平时用到的一些FTP操作类,方便需要的用到.github地址:https://github.com/Jimmey-Jiang/Common.Utility 1.连接FTP服务器 /// <s ...
- 年薪20万Python工程师进阶(7):Python资源大全,让你相见恨晚的Python库
我是 环境管理 管理 Python 版本和环境的工具 pyenv – 简单的 Python 版本管理工具. Vex – 可以在虚拟环境中执行命令. virtualenv – 创建独立 Python 环 ...
- Python 资源大全中文版
Python 资源大全中文版 我想很多程序员应该记得 GitHub 上有一个 Awesome - XXX 系列的资源整理.awesome-python 是 vinta 发起维护的 Python 资源列 ...
- [转载]Python 资源大全
原文链接:Python 资源大全 环境管理 管理 Python 版本和环境的工具 p – 非常简单的交互式 python 版本管理工具. pyenv – 简单的 Python 版本管理工具. Vex ...
- java日期操作大全
摘自(http://www.blogjava.net/i369/articles/83483.html) java日期操作 大全 先来一个: 取得指定月份的第一天与取得指定月份的最后一天 http ...
- TCP/IP 端口号大全
常用端口: 20 ftp-data FTP 数据端口 21 ftp 文件传输协议(FTP)端口:有时被文件服务协议(FSP)使用 22 ssh 安全 Shell(SSH)服务 23 telnet T ...
- linux指令大全(完整篇)(转)
http://blog.chinaunix.net/uid-9681606-id-1998590.html linux指令大全(完整篇)(转) 2009-03-17 01:21:46 分类: ...
- Python 库大全
作者:Lingfeng Ai链接:http://www.zhihu.com/question/24590883/answer/92420471来源:知乎著作权归作者所有.商业转载请联系作者获得授权,非 ...
随机推荐
- C++11 Lambda表达式(匿名函数)详解
使用STL时,往往会大量用到函数对象,为此要编写很多函数对象类.而有的函数对象类只用定义一个对象,而且这个对象也只使用一次,那编写这样一个函数对象就很浪费了.而且有时这定义函数对象类的地方和使用函数对 ...
- C#交换方法指针
被引用的dll是testDllFr.dll,其代码为: namespace testDLLFr { public class TestA { public static void TestAM() { ...
- SQL注入常用爆库语句
SQL注入的时候,找到了注入点,但是老是搞不清怎么爆库,最后还是得看大佬的WP 最后,终于下定决心自己整理一下爆库的常用语句和思路,如果哪里写的不对麻烦在评论区指出:-D 省流概要 select gr ...
- 一个使用 WPF 开发的 Diagram 画板工具(包含流程图FlowChart,思维导图MindEditor)
前言 今天大姚给大家分享一个使用 WPF 开发的 Diagram 画板工具(包含流程图FlowChart,思维导图MindEditor):AIStudio.Wpf.Diagram. 项目介绍 AISt ...
- ps ef命令查询进程号pid
楼兰胡杨已经在<五分钟扫盲:25个工作中常用的Linux命令>分享了ps命令的简单使用方法,但是,写的过于笼统,这里详细介绍一下. 语法:ps -ef | grep process ...
- 启智树提高组day4T1 T1(t1.cpp,1s,512MB)
启智树提高组day4T1 T1(t1.cpp,1s,512MB) 题面描述 对⼀个⻓度为2n 的实数序列A考虑下列问题: 设S为序列中所有元素的和.你可以做下列操作n次: 选择两个未被选中过的下标i和 ...
- SpringBoot的启动流程扩展点
阅读说明:1.如果有排版格式问题,请移步https://www.yuque.com/mrhuang-ire4d/oufb8x/yo5ywqt5eudxvxfc?singleDoc#%20%E3%80% ...
- Kubernetes控制器-Horizontal Pod Autoscaler(HPA)
Horizontal Pod Autoscaler(HPA) 我们可以通过手动执行kubeclt sacle命令实现Pod的扩缩容,但是这显然不符合Kubernetes的定位目标-自动化和智能化.Ku ...
- AI大模型应用开发入门-LangChain开发聊天机器人ChatBot
在大模型应用开发中,状态管理 和 对话追踪 是不可忽视的重要能力,尤其在需要保存上下文.重放对话或进行异步处理时尤为关键. 今天我们来演示如何用 LangChain + OpenAI 的 GPT 模型 ...
- ElasticSearch高可用部署
简单说明 我们在部署ElasticSearch高可用集群时,要规划好集群的规模,每个节点的职责,规划好后续的水平扩展方案,再进行部署. 核心概念 Cluster:集群,由一个或多个 Elasticse ...