【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中的时间处理过程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1 获取当前时间2 获取当前时间戳3 获取当前时间的字符串格式4 相互转化4.1 时间戳转时间字符串 (int64 > string)4.2 时间字符串转时间

Go语言中make和new的区别及说明

《Go语言中make和new的区别及说明》:本文主要介绍Go语言中make和new的区别及说明,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1 概述2 new 函数2.1 功能2.2 语法2.3 初始化案例3 make 函数3.1 功能3.2 语法3.3 初始化

Linux中压缩、网络传输与系统监控工具的使用完整指南

《Linux中压缩、网络传输与系统监控工具的使用完整指南》在Linux系统管理中,压缩与传输工具是数据备份和远程协作的桥梁,而系统监控工具则是保障服务器稳定运行的眼睛,下面小编就来和大家详细介绍一下它... 目录引言一、压缩与解压:数据存储与传输的优化核心1. zip/unzip:通用压缩格式的便捷操作2.

深度解析Java项目中包和包之间的联系

《深度解析Java项目中包和包之间的联系》文章浏览阅读850次,点赞13次,收藏8次。本文详细介绍了Java分层架构中的几个关键包:DTO、Controller、Service和Mapper。_jav... 目录前言一、各大包1.DTO1.1、DTO的核心用途1.2. DTO与实体类(Entity)的区别1

MySQL数据库中ENUM的用法是什么详解

《MySQL数据库中ENUM的用法是什么详解》ENUM是一个字符串对象,用于指定一组预定义的值,并可在创建表时使用,下面:本文主要介绍MySQL数据库中ENUM的用法是什么的相关资料,文中通过代码... 目录mysql 中 ENUM 的用法一、ENUM 的定义与语法二、ENUM 的特点三、ENUM 的用法1

Go语言中nil判断的注意事项(最新推荐)

《Go语言中nil判断的注意事项(最新推荐)》本文给大家介绍Go语言中nil判断的注意事项,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录1.接口变量的特殊行为2.nil的合法类型3.nil值的实用行为4.自定义类型与nil5.反射判断nil6.函数返回的

Java中调用数据库存储过程的示例代码

《Java中调用数据库存储过程的示例代码》本文介绍Java通过JDBC调用数据库存储过程的方法,涵盖参数类型、执行步骤及数据库差异,需注意异常处理与资源管理,以优化性能并实现复杂业务逻辑,感兴趣的朋友... 目录一、存储过程概述二、Java调用存储过程的基本javascript步骤三、Java调用存储过程示

Linux中SSH服务配置的全面指南

《Linux中SSH服务配置的全面指南》作为网络安全工程师,SSH(SecureShell)服务的安全配置是我们日常工作中不可忽视的重要环节,本文将从基础配置到高级安全加固,全面解析SSH服务的各项参... 目录概述基础配置详解端口与监听设置主机密钥配置认证机制强化禁用密码认证禁止root直接登录实现双因素

Go语言数据库编程GORM 的基本使用详解

《Go语言数据库编程GORM的基本使用详解》GORM是Go语言流行的ORM框架,封装database/sql,支持自动迁移、关联、事务等,提供CRUD、条件查询、钩子函数、日志等功能,简化数据库操作... 目录一、安装与初始化1. 安装 GORM 及数据库驱动2. 建立数据库连接二、定义模型结构体三、自动迁

SQLite3 在嵌入式C环境中存储音频/视频文件的最优方案

《SQLite3在嵌入式C环境中存储音频/视频文件的最优方案》本文探讨了SQLite3在嵌入式C环境中存储音视频文件的优化方案,推荐采用文件路径存储结合元数据管理,兼顾效率与资源限制,小文件可使用B... 目录SQLite3 在嵌入式C环境中存储音频/视频文件的专业方案一、存储策略选择1. 直接存储 vs