PostgreSQL的用户、角色和权限管理

Pg权限分为两部分,一部分是“系统权限”或者数据库用户的属性,可以授予role或user(两者区别在于login权限);一部分为数据库对象上的操作权限。 超级用户不做权限检查,其它走acl。 对于数据库对象,开始只有所有者和超级用户可以做任何操作,其它走acl。在pg里,对acl模型做了简化,组和角色都是role,用户和角色的区别是角色没有login权限。 pg_roles: 该视图提供访问数据库角色有关信息的接口。这个视图只是pg_authid表的公开可读部分的视图化,同时把口令字段用空白填充。 该视图提供访问数据库角色有关信息的接口。这个视图只是pg_authid表的公开可读部分的视图化,同时把口令字段用空白填充。 名字 类型 引用 描述rolname name   角色名。rolsuper bool   是否有超级用户权限的角色。rolcreaterole bool   是否可以创建更多角色的角色。rolcreatedb bool   是否可以创建数据库的角色。rolcatupdate bool   是否可以直接更新系统表的角色。rolcanlogin bool   如果为真,表示是可以登录的角色。rolpassword text  …

Continue Reading PostgreSQL的用户、角色和权限管理

PostgreSQL创建只读用户,带步骤和删除

Eg:现有数据postgres,mytest,当前用户为root,schema为public,范例为创建对mytest库public下所有表只有查询权限的readonly用户 一.创建 创建只读用户:CREATE USER readonly WITH ENCRYPTED PASSWORD 'readonly';设置默认事务只读:alter user readonly set default_transaction_read_only=on;赋予用户连接数据库mytest的权限:GRANT CONNECT ON DATABASE mytest to readonly;切换到指定库mytest:\c mytest赋予用户表、序列查看权限,进入指定db运行:5.1. 把当前库现有的所有在public这个schema下的表的使用权限赋给用户readonlyGRANT USAGE ON SCHEMA public to readonly; 5.2. 默认把当前库之后新建在public这个schema下的表的使用权限赋给readonlyALTER DEFAULT…

Continue Reading PostgreSQL创建只读用户,带步骤和删除

处理nginx启动错误Failed to read PID from file /run/nginx.pid

问题产生原因 因为 nginx 启动需要一点点时间,而 systemd 在 nginx 完成启动前就去读取 pid file造成读取 pid 失败 解决方法 让 systemd 在执行 ExecStart 的指令后等待一点点时间即可如果你的 nginx 启动需要时间更长,可以把 sleep 时间改长一点建立目录mkdir -p /etc/systemd/system/nginx.service.d 在新建目录中建立文件override.conf,输入内容 [Service] ExecStartPost=/bin/sleep 0.1 然后systemctl daemon-reloadsystemctl…

Continue Reading 处理nginx启动错误Failed to read PID from file /run/nginx.pid

Systemd 入门教程:命令篇

作者: 阮一峰 日期: 2016年3月 7日 Systemd 是 Linux 系统工具,用来启动守护进程,已成为大多数发行版的标准配置。 本文介绍它的基本用法,分为上下两篇。今天介绍它的主要命令,下一篇介绍如何用于实战。 一、由来 历史上,Linux 的启动一直采用init进程。 下面的命令用来启动服务。 $ sudo /etc/init.d/apache2 start # 或者 $ service apache2 start 这种方法有两个缺点。 一是启动时间长。init进程是串行启动,只有前一个进程启动完,才会启动下一个进程。 二是启动脚本复杂。init进程只是执行启动脚本,不管其他事情。脚本需要自己处理各种情况,这往往使得脚本变得很长。 二、Systemd 概述 Systemd 就是为了解决这些问题而诞生的。它的设计目标是,为系统的启动和管理提供一套完整的解决方案。 根据…

Continue Reading Systemd 入门教程:命令篇

Centos安装supervisor,守护Redis进程

前言   基于业务问题,项目中增加了redis,用于缓存和队列。但是现在只是在单服务器上安装部署,没有购买其他的像阿里云式的服务, 也没有搭建主从。   这样就导致了问题,如果redis进程意外卡死,那么业务就无法进行,这是不允许的,所以想到进程守护的东西,能自动监听,就想到了supervisor。  supervisor是一个客户机/服务器系统,它允许用户监视和控制unix操作系统上的许多进程。它可以很方便的监听、启动、停止、重启一个或多个进程。用Supervisor管理的进程,当一个进程意外被杀死,supervisort监听到进程死后,会自动将它重新拉起,很方便的做到进程自动恢复的功能,不再需要自己写shell脚本来控制。supervisort官网 1.安装supervisor sudo su - #切换为root用户 yum install epel-release yum install -y supervisor systemctl enable supervisord # 开机自启动 systemctl start supervisord # 启动supervisord服务 systemctl status supervisord #…

Continue Reading Centos安装supervisor,守护Redis进程

配置wildfly10为linux的服务,并开机启动

正文 1.在opt路径下 下载 wildfly ,并解压下载下的压缩包 cd /opt sudo wget -c http://download.jboss.org/wildfly/10.0.0.Final/wildfly-10.0.0.Final.tar.gz sudo tar -xzvf wildfly-10.0.0.Final.tar.gz 2.创建wildfly 的用户 和 组 sudo addgroup wildfly sudo useradd -g wildfly wildfly 3.改变wildfly 的文件夹权限 sudo…

Continue Reading 配置wildfly10为linux的服务,并开机启动

Error: rpmdb open failed

1、在centos系统上,在使用yum命令安装软件包时候报错:[root@srv213 yum.repos.d]# yum install https://repo.saltstack.com/yum/redhat/salt-repo-latest-2.el7.noarch.rpmerror: db5 error(11) from dbenv->open: Resource temporarily unavailableerror: cannot open Packages index using db5 - Resource temporarily unavailable (11)error: cannot open Packages database in /var/lib/rpmCRITICAL:yum.main: Error: rpmdb…

Continue Reading Error: rpmdb open failed

做为一名优秀的后端工程师-兼公司网管,这些 Linux 指令需要了解下

前言 本文收录了 linux 常用指令,这里面有个小技巧,基本上所有指令后面跟上 --h 可以显示其使用方法。故不必死记硬背,知其意乃通其形。 分类如下: 文件 & 目录操作(16 个)查看文件 & 内容处理(18 个)文件压缩 & 解压缩(3 个)信息显示(11 个)搜索文件(4 个)进程管理(11 个)用户管理(7 个)网络操作(11 个)磁盘 & 文件系统(7 个)系统权限(3 个)关机重启(5 个)其他(6 个) 文件 &…

Continue Reading 做为一名优秀的后端工程师-兼公司网管,这些 Linux 指令需要了解下