设为首页
收藏本站
开启辅助访问
切换到窄版
登录
立即注册
中问网首页
我的收藏
站长博客
搜索
搜索
本版
帖子
用户
第一问答网
»
论坛
›
中问网
›
问答
›
C#开发如何选择Oracle驱动——Oracle官方驱动 VS 微软驱 ...
返回列表
发新帖
C#开发如何选择Oracle驱动——Oracle官方驱动 VS 微软驱动
[复制链接]
11
|
9
|
2013-10-25 08:53:56
|
显示全部楼层
|
阅读模式
本帖最后由 Hoegh 于 2015-7-21 14:27 编辑
最近在数据库开发和部署中,遇到一个问题——到底是选择Oracle官方驱动Oracle.ManagedDataAccess.Client还是微软的数据库驱动System.Data.OracleClient?
简单介绍一下我们的开发环境:
数据库架构:C/S结构
开发语言:C#
操作系统:Windows Server 2008
数据库版本:Oracle 10.2.0.4
之前我们一直使用微软驱动,存在一个问题——DateTime类型无法存储ms数据。数据库列定义为DateTime类型,应用程序中的数据在写库时,ms数据会被截掉。
具体可以参看博客http://blog.itpub.net/30162081/viewspace-1561171/
后来,在部门架构师的建议下统一更换为Oracle官方驱动(主要理由除了解决上述问题外,Oracle驱动的效率更高),但是遇到了一个更棘手的问题——数据库运行一段时间后,会由于连接数达到上限导致ORA-12516。
具体可以参看博客:http://blog.itpub.net/30162081/viewspace-1703627/
请问,大家对这两个驱动有研究吗,有没有遇到过上述两个问题?
我现在还是倾向于选择Oracle官方驱动,因为微软驱动已经不再更新,但是ORA-12516是个跨不过去的坎儿。
回复
使用道具
举报
千问
|
2013-10-25 08:53:56
|
显示全部楼层
是不是没 close session 啊?
回复
使用道具
举报
千问
|
2013-10-25 08:53:56
|
显示全部楼层
ODP.NET
回复
使用道具
举报
千问
|
2013-10-25 08:53:56
|
显示全部楼层
zixinsu 发表于 2015-7-21 20:13
是不是没 close session 啊?
用的是连接池
回复
使用道具
举报
千问
|
2013-10-25 08:53:56
|
显示全部楼层
本帖最后由 IT渔夫 于 2015-7-22 14:55 编辑
最近一两年没有出现过楼主所说的这类问题,我们很多服务程序,包括WEB程序都是用的C#或者C++,连接oracle,用的都是ORACLE提供的访问组件,windows操作系统,都没有问题。ORACLE提供的组件相比微软的,有很多优势,尤其是在内存占用控制方面。
早几年倒是出现过用微软的数据访问组件,导致PGA飙升(那个时候还是9i的数据库),最终导致机器内存全部耗尽。应该按道理来说,你们每个后台服务都有统一的数据访问层吧,一个后台服务的数据库连接应该只有1-2个样子吧。还有,你可以尝试架设一个oracle11.2的数据库试试,是不是针对oracle10的独有问题。
关于安装oracle数据访问组件的问题,我记得之前我们针对oracle10的版本时,是没有安装的,只需要把ORACLE.ACCESS.DLL(具体名字忘记了)添加到C#或C++后台服务的DLL引用目录就可以了,现在的我不知道可不可以,因为这个组件版本升级了,目前我这里也是都安装了组件,楼主可以去尝试一下。
你们的连接字符串怎么写的?我记得我们当初出现导致PGA飙升的最后的解决办法是修改了连接字符串写法解决的。
回复
使用道具
举报
千问
|
2013-10-25 08:53:56
|
显示全部楼层
IT渔夫 发表于 2015-7-22 14:36
最近一两年没有出现过楼主所说的这类问题,我们很多服务程序,包括WEB程序都是用的C#或者C++,连接oracle, ...
首先,谢谢你的关注。
1.如你所言,我们有一个统一的数据访问层,现在使用微软驱动的情况下,查询v$session,每个终端的session数一般是1-2;但是换成Oracle驱动,这个session数量会猛增;
2.在数据访问层,我们提供了一个接口,定时访问数据库(1s),用作数据库连接监视器,使用的是select 1 fromdual;
3.不知道您提到的安装数据访问组件是指什么,我们之前用Oracle驱动时,是直接把Oracle.ManagedDataAccess.Client添加到引用中;
4.附上我们的连接字符串,是在程序的.config文件中配置的:
上面两个连接字符串,上面那个是针对Oracle驱动,下面是针对微软驱动的。
目前,我们不得不退回使用微软驱动。
回复
使用道具
举报
千问
|
2013-10-25 08:53:56
|
显示全部楼层
本帖最后由 IT渔夫 于 2015-7-23 15:11 编辑
Hoegh 发表于 2015-7-23 13:46
首先,谢谢你的关注。
1.如你所言,我们有一个统一的数据访问层,现在使用微软驱动的情况下,查询v$sess ...
首先,我这边的项目web.config连接字符串是下面的写法:
二,我们使用ORACLE组件的方法,是在WEB服务器或后台服务器上安装ODTwithODAC112030(这个是最新版本吧),可以从http://www.oracle.com/technetwor ... tilsoft-086879.html这里下载。安装好后,在服务器下会存在D:\app\Administrator\product\11.2.0\client_1\这样类似的目录(我们这边是装D盘),然后在D:\app\Administrator\product\11.2.0\client_1\odp.net\bin\4(这个应该是针对.NET 4.0框架的) 目录下会有Oracle.DataAccess.dll 这个文件,D:\app\Administrator\product\11.2.0\client_1\odp.net\bin这个目录下还有一个针对2.0框架的,看你的程序使用框架,引用不同版本的Oracle.DataAccess.dll ,在后台服务或WEB程序引用Oracle.DataAccess.dll这个文件,就可以引用了,using Oracle.DataAccess.Client;
下面的文章是介绍不用装ODTwithODAC就可以使用ORACLE组件的方法,你可以尝试下:
http://www.cnblogs.com/gisdream/archive/2012/05/19/2508996.html
另外如果装了ODTwithODAC导致其他程序无法访问数据库了,是需要到D:\app\Administrator\product\11.2.0\client_1\Network\Admin这个目录增加tnsnames.ora文件(配置好数据库连接信息)。
回复
使用道具
举报
千问
|
2013-10-25 08:53:56
|
显示全部楼层
估计还是程序中某个代码没有合理释放连接,
如果程序没有close连接同时也忘了close statement的话
通过v$open_cursor里的sql来看看那些泄漏的连接之前做过什么,大概可以判断是什么程序没有合理释放连接
回复
使用道具
举报
千问
|
2013-10-25 08:53:56
|
显示全部楼层
理论上,新出的驱动比较好
回复
使用道具
举报
千问
|
2013-10-25 08:53:56
|
显示全部楼层
本帖最后由 Fishwood 于 2015-12-7 09:20 编辑
来点实际的,我们开发的软件平台,支持这两种驱动,前两年由于11g并不普及,所以采用了oracle10g和微软驱动,但是在使用过程中,有一次发现,一条比较复杂的SQL语句,在PLSQL下执行查询,数据正常,但是在微软驱动下,数据会增加1/3,多方查资料无所获,后来想到可能是微软驱动的bug,毕竟oracle不是微软开发的,支持上可能有问题,于是更换了oracle11g和Oracle自身的.net驱动,结果查询结果正常,后来网上资料也显示会有类似bug,但资料非常少。
再后来,由于要评估两个驱动性能问题,我们做了很多测试,发现Oracle自身驱动比微软驱动效率要高很多,几乎要高一倍多。比如微软驱动要执行10秒的语句,Oracle驱动只需3秒左右,绝大部分语句执行上,效率明显比微软驱动高。
所以,我们后面向客户推荐的都是11.1.7g或12g的版本,配合oracle驱动来搭建环境。你们架构设计和我们的方向基本一致,微软驱动有不可避免的bug,至于楼主说的ORA-12516,我从未遇到过。
希望对楼主有用。
回复
使用道具
举报
返回列表
发新帖
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
|
立即注册
本版积分规则
发表回复
回帖后跳转到最后一页
千问
主题
0
回帖
4882万
积分
论坛元老
论坛元老, 积分 48824836, 距离下一级还需 -38824837 积分
论坛元老, 积分 48824836, 距离下一级还需 -38824837 积分
积分
48824836
加好友
发消息
回复楼主
返回列表
问答
热门排行
1
如何玩转新浪博客??
2
如何打到百度
3
找一张图 求画师名
4
沙驰男裤,莱赛尔纤维,洗完后有些地方有白色东西是为什么?
5
急需网王同人 完结的小说
6
广东附近哪里有出短期出家修行的寺庙? 好想去清净一下!
7
荷兰球迷足球群++++++250814746(QQ群).
8
极品飞车9怎么启动不了!!求助!!进来看看!
9
电脑中下载小说 怎么样传到手机上 (诺基亚5232)
10
SJ和神起得王道文打包下载地址,发到942877926@qq邮箱,谢谢
11
您是否可以给孩子起几个名字做参考呢?
12
我QQ挂隐身。
13
什么牌子的哪种儿童故事机早教机好 03早教网
14
实况2012的问题各位大侠帮我想想办法
15
武汉汉阳区米粮街魏家嘴177号是什么样的公司
16
110KV线路保护定值配合计算问题
17
加拿大留学资金保证能否用不动产?
18
我即将参加法国留学面签,我是我的专业是社会经济管理,请帮我想一下学习计划和职业规划应该怎么说。谢谢
19
OPPOA617为什么不能上Q?就算可以上也要费用?手机卡有流量也不行?
20
我想知道我的小狗是多大
21
广州有几多平方公里?
22
龙珠af什么时候出电视剧版
23
我是上中央广播电视大学渭南教学点的函数大专生 我想毕业后考研 可以考吗 有哪些条件 谢谢
24
怎样才算真正的朋友?
25
泰安哪里有卖惠达卫浴的
26
2万左右,可以买什么车?二手的也行
27
魔兽世界大灾变萨满医疗链如何给友军使用
28
男主角是洗脚的是哪个电视
29
我是高一的一名学生,目前放暑假,不知道为什么哦,
30
人生如此多娇,日子如此美好。
31
谁知道怎么找外国模特?
32
怎样制作小电扇= =详细点,最好还有图或视频= =不要文字= =(此人理解能力比较差= =)
33
点A B C在8×8的正方形方格的格点上,以其中的两个点为顶点,
34
大便为什么让人恶心?
35
在贴吧上发表了原创耽美文,现在又注册了晋江的作者ID,可以把在贴吧上写的文搬到晋江吗?
36
苏州哪有招聘平面设计学徒的
37
中国人民公安大学~~大几后平常生活可以松点!!比如出入校门,训练等
38
中国铁路大纪行第2集,成都之桂林81分钟到82分钟的时候,有一小段轻快钢琴曲,好熟悉啊,有人知道名字吗?
39
谁有陈奕迅的裙下之臣的QQ空间背景音乐地址,后缀要MP3的,要用的起的,发给我
[email protected]
40
无聊死个人
41
张家港到浙江该乘什么车?车票是多少?
42
Intel芯片组的B75、H77、Z77主板哪个支持智能响应技术,哪个支持自动超频?
43
急求水鼓舞《中国龙》的伴奏音乐!真的谢谢了!
[email protected]
44
有做液压设计者方面的朋友吗,大家相互认识下啊,我QQ1074932953
45
芯的梦想歌曲
46
我现居安徽是浙江来的,想在安徽考成人高考专升本,不回浙江直接能在安徽完成吗
47
所作诗歌,如何可得发表。
48
法兰规格的表示方法
49
真心求口袋怪兽心金魂银能存档的ROM和配套模拟器,能顺利运行,存档再读的
[email protected]
好的补分
50
我想问一下,在厂里操作广数980开机对刀的时候可不可以省略机械回零,直至在刀偏101把X,Z的数值输入?
51
理科吗?445?确定不
52
我要做无痛人流术,请假条怎么写
53
北京到承德的大巴最早几点走
54
谁能发点侠盗猎车圣安地列斯的mod???
55
九岁半的女孩乳房发育,医生说这是发育早了,会影响孩子的身高,医生开了两盒小金丸,问问有经验的母亲
56
深圳哪里的爵士教得最好,介绍哦!
57
哪里有房产信息数据库详细的资料?
58
机械基础多选题
59
U盘被写保护,除了格式化之外,有没有其他办法可以去除的,求高手帮助。。。
60
建筑交流群
61
新买的DELL XPS15z 顶排按键除了esc键可用外其他都不起作用。
62
EC467512427CS到哪了?几天可以到廊坊?
63
本人梦幻号在山东3区老龙湾,请问如何转区才可以到上海1珍宝阁, 求教转区经验,顺序正确的追加分数
64
联想y470 win7 64位 旗舰版, i7-2670 现在是8g内存 想知道能不能升级到16g的内存 可能吗???
65
问道里找星是在哪做任务?
66
我想要爱情公寓背景配乐里面那个 当 的一声,就是每次小贤石化的时候配的那个效果音
67
什么单机游戏好玩?
68
江苏苏州火车到湖南株州火车站有哪些火车每天什么时候能有火车票卖
69
电脑分区D和E显示0字节,需要格式化,是不是坏了
70
为什么泰坦背包还没到期AC就没了
71
我想请诸位给我写一首藏头诗,里边有我老婆的名字,她叫白瑞君。谢谢
72
用Xara3D这个软件 做gif 怎么让正反图案不同?
73
郑成河弹琴有没有谱
74
QQ表情包。这种绿色小青蛙,表情包请发的我邮箱上,谢谢。QQ邮箱:
[email protected]
75
牡丹329是什么,333现在换329了吗?怎么一包12
76
我的文件为什么上传不上增
77
如何上传GOLANG服务端,要修改本地文件的上传目录的服务端 怎么改 东西在哪 求大神告诉 谢谢
78
你好,我脚上也长跖疣,您的跖疣好了么?用的什么药能推荐下么,谢谢
79
强烈要求一个斩魂激活码啊!!!!!!!!!!在线等!!!!!激活立刻给50分啊!!!!!
80
香港超龄子女第一批,6月份做完DNA到现在没有消息,请问几时才能拿证?
81
iphone上的app store里面出现别人的账号
82
我想开个晚上给别人qq冲钻的店 但是一点经验都没有 有没有哪位高手可以帮我一下啊 感激不敬
83
平面模特的标准?
84
西安交大附近住宿
85
这是什么 求高人相告。 黄颜色。。
86
跑跑卡丁车NPC是怎么弄的?最近有好多人在用它刷完胜!是组队竞速时候的那个!
87
乐山到资中汽车有没有,下午7点左右的汽车。具体是哪个车站?
88
求歌尽桃花全文
89
农民的一头壮牛卖600元,一头瘦牛也卖600元,一头赚20%,另一头亏20%,赚还是亏?为什么?
90
请用过多米音乐播放器的音乐好友们帮忙指点下:多米音乐下载歌曲时能设置下载歌曲的格式吗?
91
儿童地包天矫正方法有几种?
92
哪里有奥尼尔自传下载啊?
93
浸在水中许久的米会变得怎么样,吃了会怎样
94
我想找一家小额贷款公司加盟的公司, 请问有哪些比较好? 谢谢了!
95
出售湖北一区60剑圣有八件高级时装,墨之旋风套!点已经洗了可以自己加,要的Q我:787767135!(一百元便...
96
我是在校学生,放暑假准备开个网店试试,可是不知道从哪找货源,怎么办啊
97
在【快乐大本营】中第二段短片中那首歌叫什么? 歌词为【你存在 我深深的脑海里 我的梦里 我的心里。。】
98
想知道: 中国 广昆高速601公里 在哪
99
歌名里有个you这个发音的字。数量不限。知道的都说吧
100
起名字打分算命与命运相连男孩2008年阴历6月24日9点55分出生父亲姓杨母亲姓亢