Oracle、PLSQL相关连接问题记录

本文记录了在使用Oracle数据库时遇到的两个问题及其解决方法:1)无法解析指定的连接标识符,原因是之前的远程库配置导致,删除不必要的配置后解决;2)密码过期,通过修改密码、解锁账户和设置密码过期时间来解决。此外,还提到了Java连接Oracle时遇到的不支持字符集问题,通过添加特定依赖解决。这些解决方案对日常数据库管理具有参考价值。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1:TNS:could not resolve the connect identifier specified

无法解析指定的连接标识符

今天用plsql连接数据库时,突然报出这个错误,无法连接。

网上查出方案,大多是让修改 tnsmames.ora 文件,配置连接,还有配置环境变量等。

但这都是针对第一次访问不了,可我之前是能访问的,然后又访问不了。

最后让我发现问题:原来之前连接公司的远程库配置了Oracle连接,但是现在本地连接不需要这些配置,删掉就可以了。

如果有和我问题一样的,可以试下我的解决方案:

 

连接成功。


2:Oracle密码过期

对于Oracle密码过期的情况,可以这样解决。

1:修改账户密码

alter user 账号 identified by 密码;

2:如果用户被锁定,解锁

alter user 账号 account unlock;

3:设置密码过期时间

可以根据个人需要,设置对应的密码过期时间(默认180天),如果是本地的,那么设置成无限制则更加方便。

注意:登录root用户操作

--修改用户密码过期时间

--查询当前用户(获取profile维度)
SELECT username,PROFILE FROM dba_users;

--查询密码过期时间
SELECT * FROM dba_profiles s WHERE s.profile='DEFAULT' AND resource_name='PASSWORD_LIFE_TIME';

--修改密码过期时间为 无限制(不需要重启,直接生效)
ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED;

修改成功重新登录即可。


3:Java中连接Oracle:不支持的字符集

Caused by: java.sql.SQLException: 不支持的字符集 (在类路径中添加 orai18n.jar): ZHS16GBK 

解决:添加依赖

<!--解决数据库中文乱码问题:不支持的字符集,不支持的字符集合-->
<!-- https://mvnrepository.com/artifact/cn.easyproject/orai18n -->
<dependency>
    <groupId>cn.easyproject</groupId>
    <artifactId>orai18n</artifactId>
    <version>12.1.0.2.0</version>
</dependency>

解决,可以正常查到数据。


日常连接数据库发现的问题,特此记录。希望可以帮到大家。后续有问题会再更新。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值