macos – 行使FireDac和OSX Mavericks毗连到长途Oracle XE11数据
我做了一个小应用措施,它应该毗连到在假造呆板内运行的长途Oracle数据库(W8.1). 在一个乐成的毗连上,应该弹出一个showmessage. 我完成了以下步调以确保我的应用措施可以或许毗连: 该应用措施行使FireDac的Oracle FireDAC.Phys.Oracle驱动措施举办毗连,并行使TFDGUIxLoginDialog举办登录. 确实没什么出格的: procedure TForm1.Button1Click(Sender: TObject); begin FDConnection1.Connected := True; end; procedure TForm1.FDConnection1AfterConnect(Sender: TObject); begin ShowMessage('Connected'); end; procedure TForm1.FDConnection1Error(ASender: TObject; const AInitiator: IFDStanObject; var AException: Exception); begin ShowMessage(AException.ToString); end; 这在Windows 8.1和10中运行精采并且快速. 可是在Mavericks中我获得了OID天生失败错误,如图所示. 假如我行使VM的IP或DNS名称举办毗连并不重要.基础不会毗连. 通过Oracle的SQL Developer可以或许毗连. Oralce SQL Developer约莫必要15到20秒才气成立与数据库的毗连. 我的应用措施乃至没有实行那么长的毗连.它在约7秒后失败. 大概在不变毗连可用之前它会超时? 假如是这样,有没有步伐在抛堕落误之前延迟登录进程的时刻? 或者这是一个完全的其他题目? 请留意,我花了约莫5个小时来办理这个题目已经没有乐成. 任何辅佐是极大的赞赏. 办理要领好的,这就是出了什么题目.我的OSX Mavericks宾客体系的主机文件不正确. 就像@whosrdaddy宣布的那样,您必需变动您的主机文件,如以下链接中所述:http://chaos667.tumblr.com/post/20006357466/ora-21561-and-oracle-instant-client-11-2 我确实输入了可以在分享中找到的Devicename – > OSX节制面板中的Devicename. 以是我所做的是在主机文件中输入此名称. 可是我行使的名称不正确. 我行使echo“127.0.0.1 $(hostname)打印正确的名称获得了正确的名称:127.0.0.1 LionVM.local. 我很长一段时刻没有行使这个VM,也许健忘了我在不久提高级到Mavericks后重定名了devicename. 此刻我的应用措施可以或许毗连. (编辑:湖南网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |