首先切换到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基本操作大全的更多相关文章

  1. postgres 基本操作

    登陆: $ psql -U <user> -d <dbname> 数据库操作: $ \l      //查看库 $  \c <dbname>   //切换库 // ...

  2. 【全面】Linux基础知识和基本操作语句大全(一)

    接触Linux已经有一段时间了,由于实际需要,三三两两地掌握了一些基本语法和实用语句,主要都是在日常开发中用得比较多的,条理不是特别清晰,请见谅!下面开始上硬货!! 基本操作: 关闭Linux系统的命 ...

  3. FTP基本操作类大全,外加c#基础公共帮助类

    总结平时用到的一些FTP操作类,方便需要的用到.github地址:https://github.com/Jimmey-Jiang/Common.Utility 1.连接FTP服务器 /// <s ...

  4. 年薪20万Python工程师进阶(7):Python资源大全,让你相见恨晚的Python库

    我是 环境管理 管理 Python 版本和环境的工具 pyenv – 简单的 Python 版本管理工具. Vex – 可以在虚拟环境中执行命令. virtualenv – 创建独立 Python 环 ...

  5. Python 资源大全中文版

    Python 资源大全中文版 我想很多程序员应该记得 GitHub 上有一个 Awesome - XXX 系列的资源整理.awesome-python 是 vinta 发起维护的 Python 资源列 ...

  6. [转载]Python 资源大全

    原文链接:Python 资源大全 环境管理 管理 Python 版本和环境的工具 p – 非常简单的交互式 python 版本管理工具. pyenv – 简单的 Python 版本管理工具. Vex  ...

  7. java日期操作大全

    摘自(http://www.blogjava.net/i369/articles/83483.html) java日期操作 大全 先来一个:  取得指定月份的第一天与取得指定月份的最后一天  http ...

  8. TCP/IP 端口号大全

    常用端口: 20 ftp-data FTP 数据端口 21 ftp 文件传输协议(FTP)端口:有时被文件服务协议(FSP)使用 22 ssh 安全 Shell(SSH)服务 23  telnet T ...

  9. linux指令大全(完整篇)(转)

       http://blog.chinaunix.net/uid-9681606-id-1998590.html  linux指令大全(完整篇)(转) 2009-03-17 01:21:46 分类:  ...

  10. Python 库大全

    作者:Lingfeng Ai链接:http://www.zhihu.com/question/24590883/answer/92420471来源:知乎著作权归作者所有.商业转载请联系作者获得授权,非 ...

随机推荐

  1. Win32汇编学习笔记05

    定位关键点3种方法: 过程函数 api 字符串 但是不确定用要哪一种方法,可以3种方法都用一下,因为在不同的程序,实用的方法是不一样的 窗口程序看控件信息 1.通过OD去看 还可以用 spy ++ 查 ...

  2. 鸿蒙版《智慧农业APP》通过华为云IoT平台实现软件硬件互联

    一.原理图 本篇不涉及硬件相关的功能开发,硬件设备使用MQTT客户端模拟,如果有硬件相关经验的可以直接使用真实硬件代替MQTT客户端. 1.华为云物联网服务器 华为云物联网平台是硬件设备端跟移动APP ...

  3. Java Set的五种遍历方式

      摘要:介绍Java遍历Set的五种方式,并分析哪中方式效率高,建议使用增强for循环变量.   Set 和 List 遍历方式基本一致,本文介绍Set的遍历方式,并比较那种方法执行效率最高. 1. ...

  4. 面试题:Java并发编程生产者和消费者有序消费问题

    摘要:对于一个资源对象,必须先生产再消费,消费后再生产,如此循环往复.为了解决这个并发问题,提供两种解决方案,一是使用synchronized关键字和Object对象的监听器,二是使用java.uti ...

  5. DevOps 需要处理的工作

    本文纯属个人工作记录: 1.部署Linux服务器 2.安装Docker 3.在Docker中安装Gitlab和runner 4.设置Gitlab pipline,即CI/CD 5.可能需要Jenkin ...

  6. CSP-S 2020模拟训练题1-信友队T4 二维码

    题意简述 有一个初始全白的\(n*m\)大小的二维网格,每次可以选择一行或一列染全白或全黑.问可以通过任意次该操作得到多少不同的网格.答案对998244353取模. 分析 不难发现,无论怎么染色,都不 ...

  7. 「Log」做题记录 2023.6.15-2023.7.30

    \(2023.6.15-2023.6.18\) \(\color{blueviolet}{CF848C}\) 三维偏序,将询问拆开为每个位置到它的前缀,修改则减去之前的贡献,加上新贡献. 错误: se ...

  8. Vue3自定义指令实现权限控制

    使用Pinia(Vue.js的轻量级状态管理库,是Vuex的替代品)来管理用户权限,并结合自定义指令控制元素的显隐.步骤操作如下: 1.安装Pinia: npm install pinia 或 yar ...

  9. es常用命令

    删除索引某个字段时间范围的数据 curl -XPOST "http://127.0.0.1:9200/event_log_hulianwang_v3/event_log_hulianwang ...

  10. linux 配置定时任务

    注意:定时任务执行默认路径,我们配置的命令如kubectl要配置绝对路径/usr/local/bin/kubectl,或者在脚本中全局定义PATH 配置说明 linux 配置定时任务的方式比较多,可以 ...