msfconsole中数据库已开启,postgresql连接不上

在打开msfconsole的时候发现了一个问题,就是我的postgresql已经打开了,连接不上,在网上找了很多的方法都没用,然后我将我的报错给GTP看来,但是它让我手动连接数据库,还是没用

警告: database "msf" has a collation version mismatch DETAIL: The database was created using collation version 2.37, but the operating system provides version 2.38.

这个报错说的是数据库“msf”有一个排序规则版本不匹配的详细信息:数据库是使用排序规则版本2.37创建的,但是操作系统提供版本2.38。总的来说就是版本不一致导致的问题

那么系统既然给了报错说是排序规则版本不匹配,那么我们就将版本变成一样的不就行了吗

第一步查看Metasploit版本:可以在Metasploit的命令行中输入以下命令来查看当前安装的版本

第二部查看PostgreSQL版本:登录到PostgreSQL数据库服务器,并执行以下SQL查询来获取版本信息

第三步更新或升级Metasploit

直接使用

sudo apt-get update
sudo apt-get install postgresql-16-repack

第四步删除旧的版本,修改新版本的端口号,当然如果你的数据库上有资料的话建议先备份一下,因为的上面的东西都不重要,就不备份了,但是方法也给你们,这是我在GPT上找的

恢复

msfdb reinit                执行完这个命令后可能还会有报错,这个是正常的,因为现在我的系统上有两个PostgreSQL,而我们的PostgreSQL是使用5432端口的,等下是要删掉旧的版本。

现在我们要做的就是查看一下PostgreSQL使用的是那个端口,并且确定是否在云行

已经知道了端口号,那现在就要将PostgreSQL服务停掉

将服务停掉以后现在要做的就是将旧的版本删除

删除以后我们再重启服务,查看一下5432端口是否还在使用如果没有那么我们现在要做的就是将更新后的PostgreSQL中配置文件的端口修改一下

将端口号修改为5432就行了

最好再重启服务

看现在连报错都没了,这样就弄好了

进入msfconsole后先查看状态,然后启动数据库

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值