【go项目】项目运行在 Linux 环境中,DSN 导致与数据库交互时出现:用户 “postgres” Ident 认证失败 / 用户 “root” Ident 认证失败

本文主要是介绍【go项目】项目运行在 Linux 环境中,DSN 导致与数据库交互时出现:用户 “postgres” Ident 认证失败 / 用户 “root” Ident 认证失败,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

首先在 Windows 环境中,项目运行,数据的插入、删除、修改等交互正常。注意:下图DSN中的库名和密码为了截图写的不是实际使用的。

按自己的想法,项目在 Windows 环境中运行正常,稍微改改项目运行的主机IP和端口,打包编译,拷贝到 Linux 环境中,应该也可以跑起来。

开始操作~

Linux 环境下项目运行~ 未报错。

但是,有数据与数据库交互时,抛出错误:用户 “postgres” Ident 认证失败。

猛地一看,提示了“用户”俩字,赶紧更换了 DNS 中的 postgres 超级用户,而使用后来新增的 root 用户。

再次,打包编译,拷贝到 Linux 环境中。

出现用户 “root” Ident 认证失败。

此时,认识到和数据库的超级用户 postgres 和 root 用户没有关系。

再次试试 Windows 环境中运行项目,与数据库交互,数据增删改查没问题。

那么回到两次抛出错误的地方。思考~~~

于是,后退一步,数据库操作出现问题,那么数据库连接时,有没有问题?

但是,运行项目时,只看到了数据库连接成功~的打印结果。

那么,sql.Open 这一步是没问题的。

此时注意到,DSN 写的好像不规范,注释掉,重写。

然后,Windows 环境下运行,没问题。

打包编译,拷贝到 Linux 环境,运行项目,与数据库的交互正常进行了。问题解决!

这篇关于【go项目】项目运行在 Linux 环境中,DSN 导致与数据库交互时出现:用户 “postgres” Ident 认证失败 / 用户 “root” Ident 认证失败的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/377475

相关文章

基于Go语言实现一个压测工具

《基于Go语言实现一个压测工具》这篇文章主要为大家详细介绍了基于Go语言实现一个简单的压测工具,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录整体架构通用数据处理模块Http请求响应数据处理Curl参数解析处理客户端模块Http客户端处理Grpc客户端处理Websocket客户端

Go中sync.Once源码的深度讲解

《Go中sync.Once源码的深度讲解》sync.Once是Go语言标准库中的一个同步原语,用于确保某个操作只执行一次,本文将从源码出发为大家详细介绍一下sync.Once的具体使用,x希望对大家有... 目录概念简单示例源码解读总结概念sync.Once是Go语言标准库中的一个同步原语,用于确保某个操

SpringBoot项目中Maven剔除无用Jar引用的最佳实践

《SpringBoot项目中Maven剔除无用Jar引用的最佳实践》在SpringBoot项目开发中,Maven是最常用的构建工具之一,通过Maven,我们可以轻松地管理项目所需的依赖,而,... 目录1、引言2、Maven 依赖管理的基础概念2.1 什么是 Maven 依赖2.2 Maven 的依赖传递机

Vue项目中Element UI组件未注册的问题原因及解决方法

《Vue项目中ElementUI组件未注册的问题原因及解决方法》在Vue项目中使用ElementUI组件库时,开发者可能会遇到一些常见问题,例如组件未正确注册导致的警告或错误,本文将详细探讨这些问题... 目录引言一、问题背景1.1 错误信息分析1.2 问题原因二、解决方法2.1 全局引入 Element

Linux中shell解析脚本的通配符、元字符、转义符说明

《Linux中shell解析脚本的通配符、元字符、转义符说明》:本文主要介绍shell通配符、元字符、转义符以及shell解析脚本的过程,通配符用于路径扩展,元字符用于多命令分割,转义符用于将特殊... 目录一、linux shell通配符(wildcard)二、shell元字符(特殊字符 Meta)三、s

Linux之软件包管理器yum详解

《Linux之软件包管理器yum详解》文章介绍了现代类Unix操作系统中软件包管理和包存储库的工作原理,以及如何使用包管理器如yum来安装、更新和卸载软件,文章还介绍了如何配置yum源,更新系统软件包... 目录软件包yumyum语法yum常用命令yum源配置文件介绍更新yum源查看已经安装软件的方法总结软

linux报错INFO:task xxxxxx:634 blocked for more than 120 seconds.三种解决方式

《linux报错INFO:taskxxxxxx:634blockedformorethan120seconds.三种解决方式》文章描述了一个Linux最小系统运行时出现的“hung_ta... 目录1.问题描述2.解决办法2.1 缩小文件系统缓存大小2.2 修改系统IO调度策略2.3 取消120秒时间限制3

Linux alias的三种使用场景方式

《Linuxalias的三种使用场景方式》文章介绍了Linux中`alias`命令的三种使用场景:临时别名、用户级别别名和系统级别别名,临时别名仅在当前终端有效,用户级别别名在当前用户下所有终端有效... 目录linux alias三种使用场景一次性适用于当前用户全局生效,所有用户都可调用删除总结Linux

Linux:alias如何设置永久生效

《Linux:alias如何设置永久生效》在Linux中设置别名永久生效的步骤包括:在/root/.bashrc文件中配置别名,保存并退出,然后使用source命令(或点命令)使配置立即生效,这样,别... 目录linux:alias设置永久生效步骤保存退出后功能总结Linux:alias设置永久生效步骤

数据库oracle用户密码过期查询及解决方案

《数据库oracle用户密码过期查询及解决方案》:本文主要介绍如何处理ORACLE数据库用户密码过期和修改密码期限的问题,包括创建用户、赋予权限、修改密码、解锁用户和设置密码期限,文中通过代码介绍... 目录前言一、创建用户、赋予权限、修改密码、解锁用户和设置期限二、查询用户密码期限和过期后的修改1.查询用