当前位置: 首页 > news >正文

Postgres和MySQL创建用户并授予db权限

Postgresql和MySQL还是有很多不同的。就比如授权来说。当下有个业务场景,我们的报表数据库需要根据业务划分不同的db,然后创建对应的user。

如果是MySQL, 可以这样做

mysql> create database mydb;
mysql> create user a_user identified by 'ThePassword'
    -> ;
Query OK, 0 rows affected (0.04 sec)

mysql> grant all privileges on mydb.* to a_user@'%';
Query OK, 0 rows affected (0.02 sec)

mysql> flush privileges;
Query OK, 0 rows affected (0.01 sec)

对于Postgres9.0以上

创建一个用户etl_user,允许登陆,永不过期

create role etl_user login password 'ThePassowrd' valid until 'infinity';

将db权限授予user

grant all privileges on database mydb to etl_user ;

或者,分别授权

GRANT CONNECT ON DATABASE mydb TO etl_user;
GRANT USAGE ON SCHEMA public TO etl_user;
GRANT ALL PRIVILEGES ON ALL TABLES IN SCHEMA public TO etl_user;
GRANT ALL PRIVILEGES ON ALL SEQUENCES IN SCHEMA public TO etl_user;

这时候,如果你要删除这个role,则必须先要删除关联的privileges

REVOKE CONNECT ON DATABASE mydb FROM etl_user;
REVOKE ALL PRIVILEGES ON ALL TABLES IN SCHEMA public FROM etl_user;
REVOKE ALL PRIVILEGES ON ALL SEQUENCES IN SCHEMA public FROM etl_user;
REVOKE ALL PRIVILEGES ON ALL FUNCTIONS IN SCHEMA public FROM etl_user;
DROP USER etl_user;

相关文章:

  • 自定义JSP标签库及Properties使用
  • Kubernetes - 集群内容器访问集群外服务
  • 同步和异步的区别
  • 认真的做羞羞的事 一颗种子的自我分享
  • Java异常机制
  • 使用Docker1.13.1快速部署ELK环境
  • SliTaz 从入门到精通
  • Decorator装饰者模式(结构型模式)
  • 快速构建spring-cloud+sleuth+rabbit+ zipkin+es+kibana+grafana日志跟踪平台
  • Anaconda3启动ipython的几种方式
  • QueryParser
  • SqlService 索引原理
  • 第五次实验
  • Sherpa | Complete Navigation System 介绍与教材
  • 「postgres」导出数据以及分割数据
  • IE9 : DOM Exception: INVALID_CHARACTER_ERR (5)
  • angular学习第一篇-----环境搭建
  • es6要点
  • java第三方包学习之lombok
  • Java精华积累:初学者都应该搞懂的问题
  • Magento 1.x 中文订单打印乱码
  • nodejs实现webservice问题总结
  • PermissionScope Swift4 兼容问题
  • 浮动相关
  • 三栏布局总结
  • 使用Maven插件构建SpringBoot项目,生成Docker镜像push到DockerHub上
  • 小程序开发之路(一)
  • 优化 Vue 项目编译文件大小
  • 《天龙八部3D》Unity技术方案揭秘
  • ​​​​​​​​​​​​​​Γ函数
  • #if #elif #endif
  • #QT(串口助手-界面)
  • (附源码)计算机毕业设计大学生兼职系统
  • (机器学习-深度学习快速入门)第三章机器学习-第二节:机器学习模型之线性回归
  • (一) storm的集群安装与配置
  • (转)人的集合论——移山之道
  • ***微信公众号支付+微信H5支付+微信扫码支付+小程序支付+APP微信支付解决方案总结...
  • ./include/caffe/util/cudnn.hpp: In function ‘const char* cudnnGetErrorString(cudnnStatus_t)’: ./incl
  • .NET Compact Framework 3.5 支持 WCF 的子集
  • .NET 中 GetProcess 相关方法的性能
  • .NET/C# 编译期能确定的字符串会在字符串暂存池中不会被 GC 垃圾回收掉
  • .NET/C# 中设置当发生某个特定异常时进入断点(不借助 Visual Studio 的纯代码实现)
  • .Net调用Java编写的WebServices返回值为Null的解决方法(SoapUI工具测试有返回值)
  • .Net中ListT 泛型转成DataTable、DataSet
  • [ Algorithm ] N次方算法 N Square 动态规划解决
  • []我的函数库
  • [2024] 十大免费电脑数据恢复软件——轻松恢复电脑上已删除文件
  • [C#基础]说说lock到底锁谁?
  • [C++] 多线程编程-thread::yield()-sleep_for()
  • [C++]STL之map
  • [CVPR2021]Birds of a Feather: Capturing Avian Shape Models from Images
  • [dts]Device Tree机制
  • [JS真好玩] 掘金创作者必备: 监控每天是谁取关了你?
  • [Linux]history 显示命令的运行时间
  • [office] excel2003进行可视性加密的方法 #媒体#其他#知识分享