基于PostgreSQL密码重置操作

今天我在用命令行登陆postgresql的时候,忽然忘记密码了,重试了N次还是不行,然后我就试着上网找解决之道,最后完美的解决了,可是后来我才发现还有个更简单的方法,该篇博客用来记录自己沙雕行为。

工具已登陆

这个就是最简单的方法,你有工具登陆过,完全可以通过工具来修改(可是我当时完全没想到这个。。。),我是通过Navicat来连接的,可以直接通过Navicat来修改步骤如下:

1、连接数据库

2、点击角色

3、选择角色

4、填入新密码

5、保存之后,关闭连接,编辑连接就OK了。

工具未登录

Windows

1、找到Postgresql安装目录下的data,打开文件夹,找到pg_hba.conf

ps:如果大家找不到,那我推荐一个文件搜索神器:Listary,大家可以去试试,贼好用

2.用记事本格式打开,拉到最下面,找到所有md5,全都改为trust

3.重启数据库,然后连接数据库,不输入密码,直接点连接,此时连接成功

ps:在windows的控制面板中,找到管理工具,然后找到服务:postgresql,点击右键 ,重启就行了。

4.修改密码

在客户端修改

alter user postgres with password 'YOUR PASSWORD'

5.或者重新打开pgAdmin(即数据库),连接服务器,不输入密码,直接点连接,此时连接成功

6.修改密码,右键登陆角色中要修改密码的账户,打开属性,点击定义,输入密码,然后确定,此时修改密码成功。如果重新打开定义会发现密码栏里依旧空白,但此时密码已是新密码。

7,最后将第一二步中的trust改回md5。重新启动数据库,输入密码,成功连接服务器。

Linux

如果是Linux下的话:

1、找到pg_hba.conf路径

运行

ps ax | grep postgres | grep -v postgres:

得到:

25653 pts/0 S+  0:00 /usr/lib/postgresql/9.3/bin/psql -h 192.168.10.10 -p 5432 -U postgres -W
26679 ?  S  0:00 /usr/lib/postgresql/9.3/bin/postgres -D /var/lib/postgresql/9.3/main -c config_file=/etc/postgresql/9.3/main/postgresql.conf
26924 pts/7 R+  0:00 grep --color=auto postgres

注意结果中有一个config_file,而config_file=/etc/postgresql/9.3/main/就是我们配置所在地

2、无密码postgres登录

修改pg_hba.confg

#原来是
host all    all    127.0.0.1/32   md5
# IPv6 local connections:
host all    all    ::1/128     md5
#改成
host all    all    127.0.0.1/32   trust
# IPv6 local connections:
host all    all    ::1/128     md5

ps:如果你重启之后还是登陆不了,也可以将全部md5修改为trust

重启postgresql服务

sudo service postgresql restart

登录

psql -h 127.0.0.1 -U postgres

3、登录修改密码

修改密码

alter user postgres with password 'YOUR PASSWORD'

最后将pg_hba修改回去就好啦,也就是将所有的trust还原为md5。

补充:centos 8 docker安装postgresql修改密码,远程访问设置

一,修改密码

1,进入容器

docker exec -it 834f03380346 bash

2,修改密码

二,远程访问设置

1,修改配置文件

1)、修改pg_hba.conf文件

配置用户的访问权限(#开头的行是注释内容):  

 # TYPE DATABASE USER CIDR-ADDRESS  METHOD
 # "local" is for Unix domain socket connections only
 local all all    trust
 # IPv4 local connections:
 host all all 127.0.0.1/32  trust
 host all all 0.0.0.1/0 md5
 # IPv6 local connections:
 host all all ::1/128  trust

2)、修改postgresql.conf文件,将数据库服务器的监听模式修改为监听所有主机发出的连接请求。

定位到#listen_addresses = 'localhost'。PostgreSQL安装完成后,默认只接受来自本机localhost的连接请求。

将行开头都#去掉,将行内容修改为listen_addresses = '*'来允许数据库服务器监听来自任何主机的连接请求!

2,修改入站规则

1),firewall-cmd --zone=public --add-port=5432/tcp --permanent

2),firewall-cmd --reload

3,关闭防火墙

systemctl stop firewalld.service

4,重启docker

systemctl restart docker.service

5,开启防火墙

systemctl start firewalld.service

以上为个人经验,希望能给大家一个参考,也希望大家多多支持我们。如有错误或未考虑完全的地方,望不吝赐教。

(0)

相关推荐

  • Postgresql 默认用户名与密码的操作

    在UNIX平台中安装PostgreSQL之后,PostgreSQL会在UNIX系统中创建一个名为"postgres"当用户.PostgreSQL的默认用户名和数据库也是"postgres", 不过没有默认密码.在安装PostgreSQL之后可以以默认用户登录,也可以创建新当用户名. 以默认用户登录 Yu @Coat ~ $ sudo su postgres #切换至postgres postgres @Coat /home /Yu $ psql postgres #

  • Mac系统重置PostgreSQL密码的方法示例代码

    PostgreSQL是一种特性非常齐全的自由软件的对象-关系型数据库管理系统(ORDBMS),是以加州大学计算机系开发的POSTGRES,4.2版本为基础的对象关系型数据库管理系统.POSTGRES的许多领先概念只是在比较迟的时候才出现在商业网站数据库中.PostgreSQL支持大部分的SQL标准并且提供了很多其他现代特性,如复杂查询.外键.触发器.视图.事务完整性.多版本并发控制等.同样,PostgreSQL也可以用许多方法扩展,例如通过增加新的数据类型.函数.操作符.聚集函数.索引方法.过程

  • PostgreSQL 实现登录及修改密码操作

    PostgreSQL登录 1.可通过客户端pgAdmin III直接登录 2.可通过命令行 命令:psql -h 10.10.10.10 -U user -d postgres -p 5570 -h:数据库IP -U:登录用户 -d:登录的数据库 -p:登录端口 方法:进入postgreSQL的客户端安装目录(我的安装目录:C:\Program Files\PostgreSQL\9.4\bin),执行psql命令,其中\q表示退出数据库 修改密码 直接执行以下sql即可修改密码 alter us

  • 基于PostgreSQL密码重置操作

    今天我在用命令行登陆postgresql的时候,忽然忘记密码了,重试了N次还是不行,然后我就试着上网找解决之道,最后完美的解决了,可是后来我才发现还有个更简单的方法,该篇博客用来记录自己沙雕行为. 工具已登陆 这个就是最简单的方法,你有工具登陆过,完全可以通过工具来修改(可是我当时完全没想到这个...),我是通过Navicat来连接的,可以直接通过Navicat来修改步骤如下: 1.连接数据库 2.点击角色 3.选择角色 4.填入新密码 5.保存之后,关闭连接,编辑连接就OK了. 工具未登录 W

  • python实现登录密码重置简易操作代码

    需求: 1.用户输入密码正确登录 2.用户输入密码错误退出并调用函数继续输入 3.用户输入密码符合原先给定的一个值时,允许用户重置密码,并且可以用新密码登录 4.输入三次后禁止输入 虽然贴别的简单,但是还要记录一下,废话不多说直接贴码了 #!/user/bin/env python #-*-coding:utf-8 -*- #Author: qinjiaxi password_list = ['!@#', '12345'] def account_login(): tries = 3 while

  • Centos中root密码重置的实现及步骤详解

    Centos中root密码重置的实现及步骤详解            在虚拟机安装了Centos,今天要开机却忘记了密码,于是开始上网查找重新设置的方法,经过实验操作,确实有效,现将方法记录如下: 1.开机后按"e",进入编辑选择,如图: 2.然后再按"e",进入另外一个选择框: 3.选择第二项,然后在按"e". 4.在后入输入" single" , 记住有个空格,然后回车.又出现了下面的选择框. 5.这时候选择第二项,然后输

  • Laravel 实现密码重置功能

    简介 想要快速实现该功能?只需要在新安装的 Laravel 应用下运行 php artisan make:auth (如果你已经执行过此命令,可忽略),然后在浏览器中访问 http://your-app.dev/register 或者其他分配给应用的 URL,该命令会生成用户登录注册所需要的所有东西,包括密码重置! 大多数 Web 应用都提供了为用户重置密码的功能,Laravel 也不例外,Laravel 提供了用于发送密码重置链接及实现密码重置逻辑的便捷方法,而不需要你在每个应用中自己重复实现

  • Jupyter Notebook远程登录及密码设置操作

    操作所涉及的文件都在当前用户下面的隐藏文件: 1. 打开Anaconda Prompt(如果之前生成过Config配置文件则不需要第一步) 终端输入: jupyter notebook --generate-config 注 :root用户请用:jupyter notebook --generate-config --allow-config 操作成功会提示已写入文件 2. 生成密码 jupyter notebook password Enter password: Verify passwor

  • jasypt 集成SpringBoot 数据库密码加密操作

    昨天看到一片文章,说是某某旗下酒店数据库因为程序员不小心,把数据库明文密码上传到了GitHub上,导致酒店数据注册资料.入住信息,开房记录被下载倒卖的消息. 作为程序员,开发的时候为了简单,账户明明都设置很简单,基本上数据库密码都是明文的,没做什么操作,至少我待过的公司都是这样,无论是测试环境还是线上环境,想想,这个也是一大安全隐患,在此,趁现在不忙,做些基于springboot的数据库密码加密. 1.pom.xml添加jar包(不同jdk选择不同的版本): <!-- jdk8 版本 整合jas

  • 基于PostgreSQL/openGauss 的分布式数据库解决方案

    在 MySQL ShardingSphere-Proxy 逐渐成熟并被广泛采用的同时,ShardingSphere 团队也在 PostgreSQL ShardingSphere-Proxy 上持续发力.相比前期的 alpha 与 beta,5.0.0 正式版对 PostgreSQL 的协议实现.SQL 支持度.权限控制等方面进行了大量的完善,为后续全面对接 PostgreSQL 生态打下基础.ShardingSphere-Proxy 与 PostgreSQL 的生态对接,让用户能够在 Postg

  • MySQL8.0.23版本的root密码重置最优解法

    该方法编辑于2021年2月7日,自己使用的版本是8.0.23,事情的起因要从袁隆平教授说起-要从一本教科书说起,有一章节是"MySQL安全管理与权限管理",其中有提到更改root账户 ps:此方法适用于任何忘记,胡乱修改或已经糟蹋root密码的同学 本着实践主义的精神,我在自己的MySQL数据库中(当前登陆为root账户)中敲下了: update user set authentication_string=MD5("123") where user = "

  • Oracle 数据库忘记sys与system管理员密码重置操作方法

    首先打开cmd 执行 orapwd file=C:\app\PWDorcl.ora password=orclorcl C:\app\PWDorcl.ora是你要存放的路径文件 Password=orclorcl是你要改的密码 然后回车,在该路径下就会生成一个文件.把这文件替换你本机oracl的密码文件.Sys和system密码就会改成你要重新设置的密码 例如我的本机路径是C:\app\product\11.2.0\dbhome_1\database 以上所述是小编给大家介绍的Oracle 数据

随机推荐