10bet网址
MySQL Connector/J 8.0开发指南
相关的文档10bet官方网站 本手册下载
PDF (Ltr)- 0.7 mb
PDF (A4)- 0.7 mb
HTML下载(TGZ)- 141.0 kb
HTML下载(邮政编码)- 160.5 kb


6.10使用命名管道连接

重要的

MySQL 8.0.14及以上版本,5.7.25及以上版本,5.6.43及以上版本,将对命名管道的最小权限授予使用它们连接到服务器的客户端。但是,当授予了对命名管道的完全访问权时,Connector/J只能使用命名管道。作为一种解决方案,Connector/J想要连接的MySQL服务器必须使用系统变量启动named_pipe_full_access_group,它指定一个Windows本地组,其中包含执行客户机应用程序JVM(以及Connector/J)的用户;参见描述named_pipe_full_access_group为更多的细节。

请注意

X协议连接不支持命名管道。

Connector/J还支持在Windows平台上使用命名管道访问MySQLNamedPipeSocketFactory作为一个插件插座工厂。如果不使用namedPipePath属性的默认值“\ \ \管\ MySQL。”使用。如果你使用NamedPipeSocketFactory,将忽略JDBC URL中的主机名和端口号值。要启用此功能,请设置socketFactory属性:

socketFactory = com.mysql.cj.protocol.NamedPipeSocketFactory

用下面的连接URL设置这个属性以及命名管道的路径:

jdbc: mysql: / / /测试? socketFactory = com.mysql.cj.protocol.NamedPipeSocketFactory&namedPipePath = \ \ \ \ MySQL80管

要创建您自己的套接字工厂,请遵循中的示例代码com.mysql.cj.protocol.NamedPipeSocketFactorycom.mysql.cj.protocol.StandardSocketFactory

另一种方法是在连接url中使用以下两个属性在Windows平台上建立命名管道连接:

  • (协议=管)用于命名管道(该属性的默认值为tcp)。

  • (路径=path_to_pipe)用于指定管道的路径。默认值为\ \ \ \管MySQL

address-equals键-值主机规范的形式(参见单台主机)极大地简化了Windows上命名管道连接的URL。例如,使用的默认命名管道\ \ \ \管MySQL,指定:

jdbc: mysql: / /地址=(协议=管)/测试

的自定义命名管道\ \ \ \ MySQL80管:

jdbc: mysql: / /地址=(协议=管)(path = \ \ \管\ MySQL80) /测试

(协议=管),NamedPipeSocketFactory将自动被选中。

只有当连接到JDBC驱动程序运行的同一物理机器上的MySQL服务器时,命名管道才能工作。在简单的性能测试中,命名管道访问比标准TCP/IP访问快30%-50%。但是,这种情况因系统而异,命名管道在许多Windows配置中比TCP/IP慢。