Spec-Zone.ru › MySQL Connectors 1.0

6.11 Подключение с использованием именованных каналов

Важно

Клиентам, которые используют именованные каналы для подключения к серверу, предоставляются минимальные права. Однако Connector/J может использовать именованные каналы только при предоставлении полного доступа к ним. В качестве обходного решения сервер MySQL, к которому Connector/J пытается подключиться, должен быть запущен с системной переменной , которая указывает локальную группу Windows, содержащую пользователя, от имени которого выполняется JVM клиентского приложения (и, следовательно, Connector/J); см. описание для получения более подробной информации.

Примечание

Поддержка именованных каналов недоступна для подключений X Protocol.

Connector/J также поддерживает доступ к MySQL с помощью именованных каналов на платформах Windows с NamedPipeSocketFactory в качестве фабрики сокетов для подключения. Если вы не используете namedPipePath свойство, используется значение по умолчанию '\\.\pipe\MySQL'. Если вы используете NamedPipeSocketFactory, значения имени хоста и номера порта в URL JDBC игнорируются. Чтобы включить эту функцию, установите свойство socketFactory:

socketFactory=com.mysql.cj.protocol.NamedPipeSocketFactory

Установите это свойство, а также путь к именованному каналу, используя следующий URL подключения:

jdbc:mysql:///test?socketFactory=com.mysql.cj.protocol.NamedPipeSocketFactory&namedPipePath=\\.\pipe\MySQL80

Чтобы создать собственные фабрики сокетов, следуйте образцу кода в com.mysql.cj.protocol.NamedPipeSocketFactory или com.mysql.cj.protocol.StandardSocketFactory.

Альтернативный подход заключается в использовании следующих двух свойств в URL подключения для установления подключений по именованным каналам на платформах Windows:

  • (protocol=pipe) для именованных каналов (значение по умолчанию для свойства равно tcp).

  • (path=path_to_pipe) для пути к именованным каналам. Значение по умолчанию для пути равно \\.\pipe\MySQL.

Формат указания адреса вида “address-equals” или “key-value” (подробнее см. Одиночный хост) значительно упрощает URL для подключения по именованному каналу на Windows. Например, чтобы использовать стандартный именованный канал “\\.\pipe\MySQL,” просто укажите:

jdbc:mysql://address=(protocol=pipe)/test

Чтобы использовать настраиваемый именованный канал “\\.\pipe\MySQL80”:

jdbc:mysql://address=(protocol=pipe)(path=\\.\pipe\MySQL80)/test

При использовании (protocol=pipe), NamedPipeSocketFactory автоматически выбирается.

Именованные каналы работают только при подключении к серверу MySQL на том же физическом компьютере, где работает драйвер JDBC. В простых тестах производительности доступ по именованным каналам на 30-50% быстрее, чем стандартный доступ по TCP/IP. Однако это варьируется в зависимости от системы, и в многих конфигурациях Windows именованные каналы медленнее, чем TCP/IP.

© 2025 Oracle
Licensed under the GPLv2 License.
https://docs.oracle.com/cd/E17952_01/connector-j-en/connector-j-named-pipe.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API