OracleOraDb11g_home1ClrAgent服务

来源:互联网 发布:会计电算化软件用友 编辑:程序博客网 时间:2024/06/18 01:51

近日在做Oracle 11g R2 RAC for WIndows Server 2008 R2 on  VMware Vsphere 4.1 测试

发现多出来了一个OracleOraDb11g_home1ClrAgent服务,以前貌似没有见过

路径

C:\app\Administrator\product\11.2.0\dbhome_2\bin\OraClrAgnt.exe agent_sid=CLRExtProc max_dispatchers=2 tcp_dispatchers=0 max_task_threads=6 max_sessions=25 ENVS="EXTPROC_DLLS=ONLY:C:\app\Administrator\product\11.2.0\dbhome_2\bin\oraclr11.dll"

在网上查找到了资料

http://download.oracle.com/docs/cd/B19306_01/win.102/b14306/install.htm

Configuring Extproc Agent Using Windows Service

As part of Oracle Database Extensions for .NET installation, a Windows service is installed. The service is called OraClrAgnt and can be accessed through the Service Control Panel, asOracleOracleHomeNameClrAgnt, where OracleHomeName represents your Oracle home.

http://www.oracle.com/technology/global/cn/pub/articles/mastering_dotnet_oracle/williams_sps.html

PL/SQL 存储过程和函数在与 Oracle 数据库相同的进程中运行,并且存储在 Oracle 内部。 另一方面,.NET 存储过程在外部进程中运行,.NET 代码将被编译成“.NET 程序集”,后者是存储在文件系统中的动态链接库 (DLL) 文件(通常存储在与数据库相同的机器上)。 .NET 程序集将被加载到一个名为 extproc.exe 的“CLR 宿主”外部进程中并在其中运行,该进程由名为<OracleHomeName>ClrAgnt 的 Windows 服务衍生而来。 当执行 .NET 存储过程调用时,Oracle 将与这个外部进程通信,传入参数并检索结果。 这种通信将由 Oracle 多线程代理体系结构来处理。 对于最终用户而言,.NET 存储过程调用看起来与任何其他类型的存储过程调用没有什么区别。 实际上,您可以从能够调用 PL/SQL 或 Java 存储过程的任何环境中调用 .NET 存储过程。