头还是介绍一下群,如果感兴趣PolarDB ,MongoDB ,MySQL ,PostgreSQL ,Redis, OceanBase, Sql Server等有问题,有需求都可以加群群内有各大数据库行业大咖,可以解决你的问题。加群请联系 liuaustin3 ,(共2680人左右 1 + 2 + 3 + 4 +5 + 6 + 7 + 8 )(1 2 3 4 5 6群均已爆满,新人进7群接近400+,8群,准备开9 群)
题目很新颖,PostgreSQL 是怎么把我给关到数据库里面出不来,登不进去,最后是怎么解决的,咱们且听这回分解。
上回咱们说了,怎么安全配置PostgreSQL的自建数据库产品,但在配置的时候如果忘记一件事请,就会让PostgreSQL把你关到门外面去。
我们演示一下这个过程,实际上我也真的被关到门外一次。具体怎么关到外面的我来演示一次。
在安装完数据库,为了安全和保证阿里云安全策略的扫描过关,PostgreSQL 的postgres账号必须关闭登录,有人可能问加密码不就完了吗?
那这个你就太单纯了,黑客攻击是不怕贼偷,就怕贼惦记着,你给PostgreSQL设置密码,黑客程序可以进行暴力破解,到时你的PG错误日志一堆登录密码错误的提示,他要是给破解开呢? 这锅不还是你的吗?
既然如此,那么就必须将数据库的Postgres账号禁用,在新安装的数据库中,应该先建立一个superuser账号,然后在设置postgres 账号登录的权限取消,工作完毕。但人的脑子有的时候是会出错的,我就一次将 postgres 的账号给设置后,突然清晰,我变成的 "户外人士"
postgres=#
postgres=# alter user postgres nologin;
ALTER ROLE
postgres=#
postgres=#
postgres=#
postgres=# exit
postgres@pg16:~$ psql
psql: error: connection to server on socket "/tmp/.s.PGSQL.5432" failed: FATAL: role "postgres" is not permitted to log in
postgres@pg16:~$复制
此时新的数据库,也没有设置任何的superuser 那么这时我就妥妥的"户外人士"。这事情要事放到 MySQL 8 那么此时你连 skip-grant的机会都没有,但咱们这是PostgreSQL,不怕咱们有办法.
这里使用的办法就是PostgreSQL的单机模式,将用户的登录权限找回, 操作方法也很简单
1 关闭现在的数据库服务
postgres@pg16:~$ pg_ctl -D pgdata/data/ stop
waiting for server to shut down.... done
server stopped
postgres@pg16:~$复制
2 启动PostgreSQL的单机模式
postgres@pg16:~$ postgres --single -D pgdata/data/ postgres
PostgreSQL stand-alone backend 16.0
backend>复制
在进入到单用户模式,此时可以对数据库进行任何操作,但需要注意单用户模式的问题
1 单用户模式,只能有一个用户访问PG数据库
2 数据库此时并没有那些子进程工作,PG 此时可以进行的是修复工作,不是正常工作

3 单用户模式会绕过身份验证,给你最大的用户权限去处理任务
4 数据库在单用户模式是单进程模式工作,没有并发支持
5 虽然单用户模式还可以进行WAL的写入,但此时如vacuum checkpoint bgwrite等进程都不工作,如果要对数据进行了修改,需要进行手动的 checkpoint; 的命令操作,让数据刷到数据库中,作为一个完整的修改数据库数据后的动作。
6 尽量不要在单用户模式修改大量数据,数据库无法进行崩溃的恢复操作。
后面的事情就简单了,直接在单用模式,执行
alter user postgres login;
然后关闭单用户模式,后面在重新启动数据库,登录到数据库,做该做的工作,任务完成。PostgreSQL 数据库本身,在不少情况下都考虑到一些实际的问题,比如保留3个 superuser登录的SESSION ,单用户模式,这点 SQL SERVER 本身也有类似的功能,所以才有 PostgreSQL是最像商业数据库的开源数据库的美誉。
全世界都在“搞” PostgreSQL ,从Oracle 得到一个“馊主意”开始PostgreSQL 加索引系统OOM 怨我了--- 不怨你怨谁
PostgreSQL “我怎么就连个数据库都不会建?” --- 你还真不会!
PostgreSQL 稳定性平台 PG中文社区大会--杭州来去匆匆
PostgreSQL 分组查询可以不进行全表扫描吗?速度提高上千倍?
POSTGRESQL --Austindatabaes 历年文章整理
PostgreSQL 查询语句开发写不好是必然,不是PG的锅
PolarDB 答题拿-- 飞刀总的书、同款卫衣、T恤,来自杭州的Package(活动结束了)
PolarDB for MySQL 三大核心之一POLARFS 今天扒开它--- 嘛是火星人
PolarDB-MySQL 并行技巧与内幕--(怎么薅羊毛)
PolarDB 并行黑科技--从百套MySQL撤下说起 (感谢8018个粉丝的支持)
PolarDB 杀疯了,Everywhere Everytime Everydatabase on Serverless
POLARDB 从一个使用者的角度来说说,POALRDB 怎么打败 MYSQL RDS
PolarDB 最近遇到加字段加不上的问题 与 使用PolarDB 三年感受与恳谈
PolarDB 从节点Down机后,引起的主从节点强一致的争论
PolarDB serverless 真敢搞,你出圈了你知道吗!!!!
PolarDB VS PostgreSQL "云上"性能与成本评测 -- PolarDB 比PostgreSQL 好?
临时工访谈:PolarDB Serverless 发现“大”问题了 之 灭妖记 续集
临时工访谈:庙小妖风大-PolarDB 组团镇妖 之 他们是第一
POLARDB -- Ausitndatabases 历年的文章集合
PolarDB for PostgreSQL 有意思吗?有意思呀
MySQL相关文章
跟我学OceanBase4.0 --阅读白皮书 (OB分布式优化哪里了提高了速度)
跟我学OceanBase4.0 --阅读白皮书 (4.0优化的核心点是什么)
跟我学OceanBase4.0 --阅读白皮书 (0.5-4.0的架构与之前架构特点)
跟我学OceanBase4.0 --阅读白皮书 (旧的概念害死人呀,更新知识和理念)
全世界都在“搞” PostgreSQL ,从Oracle 得到一个“馊主意”开始PostgreSQL 加索引系统OOM 怨我了--- 不怨你怨谁
PostgreSQL “我怎么就连个数据库都不会建?” --- 你还真不会!
PostgreSQL 稳定性平台 PG中文社区大会--杭州来去匆匆
PostgreSQL 分组查询可以不进行全表扫描吗?速度提高上千倍?
POSTGRESQL --Austindatabaes 历年文章整理
PostgreSQL 查询语句开发写不好是必然,不是PG的锅
MongoDB 相关文章
MongoDB 合作考试报销活动 贴附属,MongoDB基础知识速通
MongoDB 使用网上妙招,直接DOWN机---清理表碎片导致的灾祸 (送书活动结束)
数据库 《三体》“二向箔” 思维限制 !8个公众号联合抽奖送书 建立数据库设计新思维
MongoDB 是外星人,水瓶座,怎么和不按套路出牌的他沟通?
阿里云系列
阿里云数据库产品权限设计缺陷 ,六个场景诠释问题,你可以做的更好?
阿里云数据库--市场营销聊胜于无--3年的使用感受与反馈系列
阿里云数据库产品 对内对外一样的卷 --3年阿里云数据库的使用感受与反馈系列
阿里云数据库使用感受--客户服务问题深入剖析与什么是廉价客户 --3年的使用感受与反馈系列
阿里云数据库使用感受--操作界面有点眼花缭乱 --3年的使用感受与反馈系列
截止今天共发布 1281篇文章

