我的团队正在从 PHP 过渡到 Rails,我们的 DBA 对 Rails 应用程序如何连接到数据库有些担心。
我们的 PHP 应用程序使用 DRCP 连接到特定的连接池,使用ini_set('oci8.connection_class', 'POOLNAME')
. 这使 DBA 可以更好地控制跨应用程序管理连接的方式。
对于我们的 Rails 应用程序,DBA 希望我们使用相同的策略,但据我所知,在ruby-oci8(版本 2.1.5)中,您只能创建一个新的连接池:
pool = OCI8::ConnectionPool.new(1, 5, 2, 'usr', 'pwd', 'connection_string')
似乎没有办法指定现有连接池的名称并连接到现有连接池。
JDBC 适配器支持这个特性,但是在 Rails 中使用它需要迁移到 JRuby,我们不想这样做。
在我的团队深入研究 ruby-oci8 源代码之前,有没有办法通过指定池名称来连接到 Ruby 中现有的 Oracle DRCP 池?如果没有,是否有技术原因导致 ruby-oci8 不提供通过名称连接到现有池的能力?