我在使用 Oracle数据库时,我用shutdown关闭了数据库就退出了,后来启动起来就登录不上了,要怎样才能登录

我在使用 Oracle数据库时,我用shutdown关闭了数据库就退出了,后来启动起来就登录不上了,要怎样才能登录,第1张

oracle数据库几y种关闭方5式: 3、shutdown normal 正常方8式关闭数据库。 1、shutdown immediate 立即方8式关闭数据库。 在SVRMGRL中6执行shutdown immediate,数据库并不q立即关闭, 而是在Oracle执行某些清除工m作后才x关闭(终止5会话、释放会话资源), 当使用shutdown不b能关闭数据库时,shutdown immediate可以4完成数据库关闭的 *** 作。 0、shutdown abort 直接关闭数据库,正在访问数据库的会话会被突然终止2, 如果数据库中6有大d量 *** 作正在执行,这时执行shutdown abort后,重新启动数据库需要很长2时间。vЭā│geク

原因:

1、EF 、EFCore 中默认存在链接池,每次数据库 *** 作完成之后,会将连接丢到连接池。连接的释放过程单独管控(这里不做详细解释);

2、当Oracle数据库中设置有连接(会话)有效期时,到期后,Oracle服务端会中断连接,并将会话标识为:SNIPED状态;

注:查询数据中已超时,未释放的会话:select * from v$session where status = 'SNIPED'

3、当Oracle数据库中连接超时后,EF连接池中的连接依然存在,若再次进行数据库 *** 作,则会提示 idle 超时异常;

解决方案:

方案1:调整数据库设置,将数据库中的“IDLE_TIME”设置未“UNLIMITED”,具体方式请自行百度

可通过以下语句查看当前设置:

select username, b.* from dba_users a, dba_profiles b where a.profile = b.profile and username='IOT_SUB_ALL'

方案2:

在项目代码数据库连接字符串中添加:min pool size=0设置,将EF连接池最小连接保持数设置为0(默认为1);

连接字符串样式:

"User Id=用户idPassword=密码Data Source=IP:端口/服务器名min pool size=0"

连接字符串参数详细说明见:

https://docs.oracle.com/database/121/ODPNT/OracleConnectionClass.htm#ODPNT805

你再仔细看看你配置的端口号是:54321,而设置的端口号是:54324,当然不会成功咯!

开始--所有程序--金仓数据库Kingbase--启动金仓数据库 稍等 重新登录系统 正常情况应该可以运行了


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/sjk/9933936.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-03
下一篇 2023-05-03

发表评论

登录后才能评论

评论列表(0条)

保存