4.5 Справочник по параметрам подключения Connector/NET 8.0
В этом разделе описываются все параметры подключения MySQL Connector/NET 8.0. Протокол, используемый для подключения к серверу (классический MySQL-протокол или X-протокол), определяет, какие параметры следует использовать. Параметры подключения имеют значение по умолчанию, которое можно переопределить, задав новое значение в строке подключения (классический MySQL-протокол и X-протокол) или в строке подключения в формате URI (X-протокол). Имена и синонимы параметров Connector/NET не чувствительны к регистру.
Инструкции по использованию строк подключения см. в разделе 4.1 «Создание строки подключения Connector/NET». Информацию об альтернативных стилях подключения см. в .
В следующих разделах перечислены параметры подключения, применимые к обоим протоколам, только к классическому MySQL-протоколу и только к X-протоколу:
Параметры для обоих протоколов: классический MySQL-протокол и X-протокол
Следующие параметры подключения Connector/NET могут быть использованы с любым протоколом. Connector/NET 8.0 предоставляет параметры в этом разделе как свойства в классах MySql.Data.MySqlClient.MySqlConnectionStringBuilder и MySqlX.XDevAPI.MySqlXConnectionStringBuilder.
-
CertificateFile,Certificate File -
Значение по умолчанию:
nullЭтот параметр указывает путь к файлу сертификата в формате PKCS #12 (
.pfx). Пример использования см. в разделе 6.7.2, «Использование сертификатов PFX в Connector/NET». -
CertificatePassword,Certificate Password -
Значение по умолчанию:
nullУказывает пароль, используемый вместе с сертификатом, указанным с помощью параметра
CertificateFile. Пример использования см. в разделе 6.7.2, «Использование сертификатов PFX в Connector/NET». -
CertificateStoreLocation,Certificate Store Location -
Значение по умолчанию:
nullПозволяет получить доступ к сертификату, хранящемуся в личном хранилище, вместо использования комбинации файла сертификата и пароля. Пример использования см. в разделе 6.7.2, «Использование сертификатов PFX в Connector/NET».
-
CertificateThumbprint,Certificate Thumbprint -
Значение по умолчанию:
nullУказывает отпечаток сертификата для обеспечения правильной идентификации сертификата, содержащегося в личном хранилище. Пример использования см. в разделе 6.7.2, «Использование сертификатов PFX в Connector/NET».
-
CharacterSet,Character Set,CharSet Указывает кодировку, которая должна использоваться для кодирования всех запросов, отправляемых на сервер. Результаты по-прежнему возвращаются в кодировке результирующих данных.
-
ConnectionProtocol,Protocol,Connection Protocol -
Значение по умолчанию:
socket(илиtcp)Указывает тип соединения с сервером. Возможные значения:
socketилиtcpдля сокетного соединения с использованием TCP/IP.pipeдля соединения с именованным каналом (не поддерживается протоколом X).unixдля соединения с UNIX-сокет.memoryдля использования общей памяти MySQL (не поддерживается протоколом X).
-
Database,Initial Catalog -
Значение по умолчанию:
mysqlИмя базы данных, которая будет использоваться изначально (с учетом регистра).
-
dns-srv,dnssrv -
Значение по умолчанию:
falseВключает разрешение соединением адресов службы (SRV) в записи DNS SRV, которая определяет местоположение (имя хоста и номер порта) серверов для указанных служб при использовании протокола транспорта по умолчанию (
tcp). Один домен DNS может сопоставляться с несколькими целями (серверами) с помощью записей адресов SRV. Каждая запись SRV включает имя хоста, порт, приоритет и вес. Поддержка DNS SRV была введена в Connector/NET 8.0.19, чтобы устранить необходимость для клиентов идентифицировать каждый возможный хост в строке подключения, с использованием или без использования пула соединений.Указание нескольких имен хостов, номера порта или соединения с UNIX-сокет, именованным каналом или общей памятью (см. параметр
ConnectionProtocol) в строке подключения запрещено, если включена функция DNS SRV.Использование классического протокола MySQL. Параметр
dns-srvприменяется к строкам подключения; свойствоDnsSrvобъявляется в классеMySqlConnectionStringBuilder.// Connection string example var conn = new MySqlConnection("server=_mysql._tcp.example.abc.com.; dns-srv=true; user id=user; password=****; database=test"); // MySqlConnectionStringBuilder class example var sb = new MySqlConnectionStringBuilder(); { Server = "_mysql._tcp.example.abc.com.", UserID = "user", Password = "****", DnsSrv = true, Database = "test" }; var conn = new MySqlConnection(sb.ConnectionString);Использование протокола X. Параметр
dns-srvприменяется к строкам подключения и анонимным объектам. СвойствоDnsSrvобъявляется в классеMySqlXConnectionStringBuilder. Возникает ошибка, еслиdns-srv=falseи схема URImysqlx+srv://объединены для создания конфликтующей конфигурации подключения. Подробные сведения об использовании элемента схемыmysqlx+srv://в строках подключения, подобных URI, см. в разделе Подключения с использованием записей DNS SRV.// Connection string example var session = MySQLX.GetSession("server=_mysqlx._tcp.example.abc.com.; dns-srv=true; user id=user; password=****; database=test"); // Anonymous object example var connstring = new { server = "_mysqlx._tcp.example.abc.com.", user = "user", password = "****", dnssrv = true }; var session = MySQLX.GetSession(connString); // MySqlXConnectionStringBuilder class example var sb = new MySqlXConnectionStringBuilder(); { Server = "_mysqlx._tcp.example.abc.com.", UserID = "user", Password = "****", DnsSrv = true, Database = "test" }; var session = MySQLX.GetSession(sb.ConnectionString); -
Keepalive,Keep Alive -
Значение по умолчанию:
0Для TCP-соединений, время простоя соединения в секундах, прежде чем будет отправлен первый пакет keepalive. Значение 0 указывает, что
keepaliveне используется. До Connector/NET 6.6.7/6.7.5/6.8.4 это значение измерялось в миллисекундах. -
Password,Password1,pwd,pwd1 -
Значение по умолчанию: пустая строка
Пароль для учетной записи MySQL, используемой для однофакторной/однократной аутентификации (1FA/SFA), которая использует только один метод аутентификации, например, пароль.
Начиная с Connector/NET 8.0.28, этот параметр также предоставляет первый секретный пароль для учетной записи, имеющей несколько факторов аутентификации. Сервер может запрашивать один (1FA), два (2FA) или три (3FA) пароля для аутентификации учетной записи MySQL. Например, если учетная запись с 2FA создается следующим образом:
CREATE USER 'abe'@'localhost' IDENTIFIED WITH caching_sha2_password BY 'sha2_password' AND IDENTIFIED WITH authentication_ldap_sasl AS 'uid=u1_ldap,ou=People,dc=example,dc=com';Затем ваше приложение может указать строку подключения с этим параметром (
passwordили его синонимами) и значениемsha2_passwordв этом случае, чтобы удовлетворить первый фактор аутентификации.var connString = "server=localhost; user=abe; password=sha2_password; password2=ldap_password; port=3306";В качестве альтернативы, для соединения, установленного с использованием объекта
MySqlConnectionStringBuilder:MySqlConnectionStringBuilder settings = new MySqlConnectionStringBuilder() { Server = "localhost", UserID = "abe", Pwd1 = "sha2_password", Pwd2 = "ldap_password", Port = 3306 };Если сервер не требует использования секретного пароля с методом аутентификации, то значение, указанное для параметра
password,password2илиpassword3, игнорируется. -
Password2,pwd2 -
Значение по умолчанию: пустая строка
Второй секретный пароль для учетной записи, имеющей несколько факторов аутентификации (см. параметр подключения
Password). -
Password3,pwd3 -
Значение по умолчанию: пустая строка
Третий секретный пароль для учетной записи, имеющей несколько факторов аутентификации (см. параметр подключения
Password). -
Port -
Значение по умолчанию:
3306Порт, который MySQL использует для прослушивания соединений. Это значение игнорируется, если используется UNIX-сокет.
-
Server,Host,Data Source,DataSource -
Значение по умолчанию:
localhostИмя или сетевой адрес одного или нескольких хост-компьютеров. Несколько хостов разделяются запятыми, и приоритет (от 0 до 100), если указан, определяет порядок выбора хоста. Начиная с Connector/NET 8.0.19, выбор хоста является случайным, если приоритеты опущены или одинаковы для каждого хоста.
// Selects the host with the highest priority (100) first server=(address=192.10.1.52:3305,priority=60),(address=localhost:3306,priority=100);
Провайдер не предпринимает попыток синхронизировать запись в базу данных, поэтому будьте осторожны при использовании этого параметра. В UNIX-средах с Mono это может быть полный путь к файлу сокета MySQL. С этой конфигурацией используется UNIX-сокет вместо TCP/IP-сокета. В настоящее время может быть указано только одно имя сокета, поэтому доступ к MySQL в реплицированной среде с использованием UNIX-сокетов в настоящее время не поддерживается.
-
SslCa,Ssl-Ca -
Значение по умолчанию:
nullВ зависимости от типа используемых сертификатов этот параметр либо указывает путь к файлу сертификата в формате PKCS #12 (
.pfx), либо путь к файлу в формате PEM (.pem), содержащему список доверенных центров сертификации SSL (CA).При использовании сертификатов PFX этот параметр включается, когда параметр подключения
SslModeустановлен в значениеRequired,VerifyCAилиVerifyFull; в противном случае он игнорируется.При использовании сертификатов PEM этот параметр включается, когда параметр подключения
SslModeустановлен в значениеVerifyCAилиVerifyFull; в противном случае он игнорируется.Примеры использования см. в разделе 6.7.1, «Использование сертификатов PEM в Connector/NET».
-
SslCert,Ssl-Cert -
Значение по умолчанию:
nullИмя файла сертификата SSL в формате PEM, который используется для установления зашифрованного соединения. Этот параметр включается только тогда, когда для параметра подключения
SslModeустановлено значениеVerifyFull, а параметр подключенияSslCaиспользует сертификат PEM; в противном случае он игнорируется. Пример использования см. в разделе 6.7.1, «Использование сертификатов PEM в Connector/NET». -
SslKey,Ssl-Key -
Значение по умолчанию:
nullИмя файла ключа SSL в формате PEM, который используется для установления зашифрованного соединения. Этот параметр включается только тогда, когда для параметра подключения
SslModeустановлено значениеVerifyFull, а параметр подключенияSslCaиспользует сертификат PEM; в противном случае он игнорируется. Пример использования см. в разделе 6.7.1, «Использование сертификатов PEM в Connector/NET».
-
SslMode,Ssl Mode,Ssl-Mode -
По умолчанию: Зависит от версии Connector/NET и используемого протокола. Подключения через именованные каналы (named pipes) и общую память (shared memory) не поддерживаются с протоколом X.
Requiredдля версий от 8.0.8 до 8.0.12 (оба протокола); 8.0.13 и выше (только протокол X).Preferredдля версий 8.0.13 и выше (только классический протокол MySQL).
Этот параметр принимает следующие значения:
Disabled– Не использовать SSL. Для серверов без SSL этот параметр должен быть явным образом задан какDisabledдля Connector/NET 8.0.29 и более поздних версий.-
None– Не использовать SSL. Для серверов без SSL этот параметр должен быть явным образом задан какNoneдля Connector/NET 8.0.8 и более поздних версий.ПримечаниеЭто значение устарело начиная с Connector/NET 8.0.29. Используйте
Disabledвместо него. -
Preferred– Использовать SSL, если сервер его поддерживает, но разрешить подключение во всех случаях. Этот параметр был удален в Connector/NET 8.0.8 и повторно реализован в 8.0.13 только для классического протокола MySQL.ПримечаниеНе используйте этот параметр для операций с протоколом X.
Required– Всегда использовать SSL. Отклонить подключение, если сервер не поддерживает SSL.VerifyCA– Всегда использовать SSL. Проверить сертификаты центров сертификации (CA), но допустить несовпадение имён.VerifyFull– Всегда использовать SSL. Ошибка, если имя хоста неверно.
-
tlsversion,tls-version,tls version -
По умолчанию: используется алгоритм по умолчанию, определяющий, какую версию TLS использовать.
Ограничивает набор версий протокола TLS, используемых во время рукопожатия TLS, когда и клиент, и сервер поддерживают указанные версии TLS, и значение параметра подключения
SslModeне установлено вDisabledилиNone(устарело в Connector/NET 8.0.29). Этот параметр принимает одну версию или список версий, разделённых запятыми, например,tls-version=TLSv1.2, TLSv1.3;.Connector/NET поддерживает следующие значения:
TLSv1.3TLSv1.2
При присвоении значения, отличного от перечисленных, выдаётся ошибка. Аналогично, ошибка выдаётся при передаче пустого списка в качестве значения или если все версии в списке не поддерживаются и попытка подключения не производится.
-
UserID,User Id,Username,Uid,User name,User -
По умолчанию:
nullАккаунт пользователя MySQL, используемый для входа.
Параметры только для классического протокола MySQL
Параметры, относящиеся к системам с пулом подключений, появляются в конце списка общих параметров (см. Параметры пула подключений). Connector/NET 8.0 предоставляет параметры в этом разделе как свойства в классе MySql.Data.MySqlClient.MySqlConnectionStringBuilder.
Общие параметры. Параметры Connector/NET, следующие за ними, предназначены для общего использования со строками подключения, и параметры применяются ко всем конфигурациям сервера MySQL:
-
AllowBatch,Allow Batch -
По умолчанию:
trueПри включении, с помощью одной команды выполнения можно отправить несколько SQL-запросов. Запросы пакетной обработки должны быть разделены символом-разделителем, определённым сервером.
-
AllowLoadLocalInfile,Allow Load Local Infile -
По умолчанию:
falseОтключает (по умолчанию) или включает функциональность сервера для загрузки данных local infile. Если этот параметр установлен в значение
true, загрузка файлов из любого места разрешена независимо от пути, указанного параметромAllowLoadLocalInfileInPath. -
AllowLoadLocalInfileInPath,Allow Load Local Infile In Path -
По умолчанию:
nullУказывает безопасный путь, из которого файлы могут быть считаны и загружены на сервер. Когда соответствующий параметр
AllowLoadLocalInfileустановлен в значениеfalse, что является значением по умолчанию, загружаться могут только файлы из безопасного пути или из любого допустимого подкаталога, указанного параметромAllowLoadLocalInfileInPath. Например, если/tmpустановлен как ограниченный каталог, запросы файлов для/tmp/myfileи/tmp/myfolder/myfileмогут быть успешными. Не разрешаются относительные пути или символьные ссылки, выходящие за пределы этого пути.В следующей таблице показано поведение, которое возникает при сочетании параметров строки подключения
AllowLoadLocalInfileиAllowLoadLocalInfileInPath.Значение AllowLoadLocalInfile Значение AllowLoadLocalInfileInPath Поведение trueПустая строка или значение nullРазрешены все загрузки. trueДействительный путь Разрешены все загрузки (путь не учитывается). falseПустая строка или значение nullЗагрузки запрещены. falseДействительный путь Разрешены только загрузки из указанного каталога и подкаталогов. -
AllowPublicKeyRetrieval -
По умолчанию:
falseУстановка этого параметра в значение
trueсообщает Connector/NET, что открытые ключи RSA должны быть получены с сервера, и подключения с использованием классического протокола MySQL, когда SSL отключен, будут по умолчанию завершаться ошибкой. Исключение из поведения по умолчанию может произойти при предыдущих успешных попытках подключения или при включённом пулинге и повторном использовании подключённых соединений. Этот параметр был добавлен с коннектором 8.0.10.ВниманиеЭтот параметр уязвим к атакам типа «человек посередине», поэтому его следует использовать только в ситуациях, когда вы можете гарантировать другими средствами, что ваши соединения устанавливаются с надёжными серверами.
-
AllowUserVariables,Allow User Variables -
По умолчанию:
falseУстановка значения в
trueозначает, что поставщик ожидает переменные пользователя в SQL. -
AllowZeroDateTime,Allow Zero Datetime -
По умолчанию:
falseЕсли установлено в значение
True,MySqlDataReader.GetValue()возвращает объектMySqlDateTimeдля столбцов даты или даты и времени с недопустимыми значениями, такими как нулевые значения даты и времени, и объектSystem.DateTimeдля допустимых значений. Если установлено в значениеFalse(значение по умолчанию), возвращается объектSystem.DateTimeдля всех допустимых значений и генерируется исключение для недопустимых значений, таких как нулевые значения даты и времени. -
AutoEnlist,Auto Enlist -
По умолчанию:
trueЕсли
AutoEnlistустановлено в значениеtrue, что является значением по умолчанию, подключение, открытое с использованиемTransactionScope, участвует в этом контексте, коммитит при коммите контекста и отменяет выполнение, еслиTransactionScopeне коммитит. Однако эта функция считается чувствительной к безопасности и поэтому не может использоваться в среде с ограниченным доверием.С версии 8.0.10 этот параметр поддерживается в реализациях .NET Core 2.0.
-
BlobAsUTF8ExcludePattern -
По умолчанию:
nullРегулярное выражение в стиле POSIX, которое сопоставляет имена столбцов BLOB, не содержащих данных UTF-8. Подробности использования см. в Разделе 5.16, «Характерные особенности набора символов Connector/NET».
-
BlobAsUTF8IncludePattern -
По умолчанию:
nullРегулярное выражение в стиле POSIX, которое сопоставляет имена столбцов BLOB, содержащих данные UTF-8. Подробности использования см. в Разделе 5.16, «Характерные особенности набора символов Connector/NET».
-
CheckParameters,Check Parameters -
По умолчанию:
trueУказывает, следует ли проверять параметры хранимых процедур на сервере.
-
CommandInterceptors,Command Interceptors Список перехватов, которые могут перехватывать операции SQL-команд.
-
ConnectionTimeout,Connect Timeout,Connection Timeout -
По умолчанию:
15Длительность ожидания (в секундах) подключения к серверу перед завершением попытки и генерацией ошибки.
-
ConvertZeroDateTime,Convert Zero Datetime -
По умолчанию:
falseИспользуйте
true, чтобыMySqlDataReader.GetValue()иMySqlDataReader.GetDateTime()возвращалиDateTime.MinValueдля столбцов даты или даты и времени с недопустимыми значениями. -
DefaultAuthenticationPlugin -
Имеет приоритет над серверным плагином проверки подлинности по умолчанию, когда указан допустимый плагин проверки подлинности (см. Раздел 4.4, «Проверка подлинности Connector/NET»). Параметр
Defaultauthenticationpluginявляется обязательным для поддержки аутентификаций Kerberos без пользователя и пароля, в которых учетные данные извлекаются из кэша или Центра распределения ключей (KDC). Например:MySqlConnectionStringBuilder settings = new MySqlConnectionStringBuilder() { Server = "localhost", UserID = "", Password = "", Database = "mydb", Port = 3306, DefaultAuthenticationPlugin = "authentication_kerberos_client" };Если значение не задано, используется серверный плагин проверки подлинности по умолчанию.
Этот параметр был добавлен с коннектором 8.0.26.
-
DefaultCommandTimeout,Default Command Timeout -
По умолчанию:
30Устанавливает значение по умолчанию для таймаута команды, которое будет использоваться. Это не заменяет индивидуальный параметр таймаута команды для отдельного объекта команды. Если вы зададите свойство таймаута команды, оно будет использоваться.
-
DefaultTableCacheAge,Default Table Cache Age -
По умолчанию:
60Указывает, как долго должен кешироваться результат
TableDirectв секундах. Информацию об использовании кэширования таблиц см. в Разделе 5.3, «Использование Connector/NET с кэшированием таблиц». -
ExceptionInterceptors,Exception Interceptors Список перехватов, которые могут обрабатывать брошенные исключения
MySqlException.-
FunctionsReturnString,Functions Return String -
По умолчанию:
falseПриводит к тому, что коннектор возвращает значения
binaryилиvarbinaryв виде строк, если в метаданных нет имени таблицы. -
Includesecurityasserts,Include security asserts -
По умолчанию:
falseДолжно быть установлено в значение
trueпри использовании классаMySQLClientPermissionsв среде с частичным доверием, с установленной библиотекой в GAC среды размещения. Подробности см. в Разделе 5.7, «Работа с частичным доверием/средой с ограниченным доверием».С версии 8.0.10 этот параметр поддерживается в реализациях .NET Core 2.0.
-
InteractiveSession,Interactive,Interactive Session -
По умолчанию:
falseЕсли установлено в значение
true, клиент интерактивный. Интерактивный клиент — это такой клиент, в котором переменная сервераCLIENT_INTERACTIVEустановлена. Если интерактивный клиент установлен, переменнаяwait_timeoutустановлена в значениеinteractive_timeout. Сеанс клиента истекает по истечении этого периода бездействия. Дополнительную информацию см. в Руководстве по MySQL.С версии 8.0.10 этот параметр поддерживается в реализациях .NET Core 2.0.
-
IntegratedSecurity,Integrated Security -
По умолчанию:
noИспользовать аутентификацию Windows при подключении к серверу. По умолчанию отключена. Для включения укажите значение
yes. (В качестве альтернативы можно использовать значениеsspiвместоyes). Подробности см. в Разделе 4.4, «Проверка подлинности Connector/NET».В настоящее время не поддерживается для .NET Core.
-
KerberosAuthMode,kerberos auth mode
-
Значение по умолчанию:
AUTOВ Windows предоставляет поддержку аутентификации с использованием интерфейса поставщика служб безопасности (SSPI), который способен получать учетные данные из кэша Windows в оперативной памяти и общего интерфейса прикладных программ службы безопасности (GSSAPI) через библиотеку MIT Kerberos. GSSAPI способен получать кэшированные учетные данные, ранее сгенерированные с помощью команды kinit. Значение по умолчанию для этого параметра (
AUTO) пытается выполнить аутентификацию с помощью GSSAPI, если аутентификация с помощью SSPI завершается неудачно.ПримечаниеЭтот параметр разрешен только в средах Windows. Использование его в средах, отличных от Windows, приводит к исключению Параметр не поддерживается.
Возможные значения для этого параметра подключения:
AUTO– Использовать SSPI и перейти к GSSAPI в случае неудачи.SSPI– Использовать только SSPI и вызывать исключение в случае неудачи.GSSAPI– Использовать только GSSAPI и вызывать исключение в случае неудачи. Всегда используйте переменные средыKRB5_CONFIGиKRB5CCNAMEдля указания расположения конфигурации и кэша при использовании GSSAPI через библиотеку MIT Kerberos в Windows.
-
Logging -
Значение по умолчанию:
falseКогда значение установлено на
true, различные сведения отправляются всем настроенным прослушивателям трассировки. Более подробное описание см. в Разделе 5.12, «Connector/NET Tracing».Начиная с 8.0.10, этот параметр поддерживается в реализациях .NET Core 2.0.
-
ociConfigFile,OCI Config File -
По умолчанию используется один из следующих путей:
~/.oci/configна хостах Linux и macOS%HOMEDRIVE%%HOMEPATH%\.oci\configна хостах Windows
При установке этого параметра указывается альтернативное расположение файла конфигурации Oracle Cloud Infrastructure. Connector/NET 8.0.27 (и более поздние версии) использует Oracle Cloud Infrastructure SDK для получения отпечатка ключа API для аутентификации (запись
fingerprint) и расположения PEM-файла с приватной частью ключа API (записьkey_file). Записи должны быть указаны в профиле[DEFAULT]. Если профиль[DEFAULT]отсутствует в файле конфигурации, Connector/NET ищет следующий профиль для использования.Не поддерживается в реализациях .NET Framework 4.5.
x -
OciConfigProfile,OCI Config Profile -
Если задано в Connector/NET 8.0.33 (или более поздней версии), этот параметр определяет, какой профиль в файле конфигурации Oracle Cloud Infrastructure использовать. Значение профиля по умолчанию — профиль
DEFAULT, если значение не указано.Не поддерживается в реализациях .NET Framework 4.5.
x -
OldGuids,Old Guids -
Значение по умолчанию:
falseПредставление GUID в бэкенде было изменено с
BINARY(16)наCHAR(36). Это было сделано для возможности использования функции сервера для заполнения таблицы GUID —UUID()генерирует строку из 36 символов. Разработчики более старых приложений могут добавить'Old Guids=true'в строку подключения, чтобы использовать GUID типа данных . -
OldGetStringBehavior -
Значение по умолчанию:
falseНачиная с Connector/NET 8.3.0, вызов метода MySqlDataReader.GetString() вызывает исключение
InvalidCastException, если столбец не является строковым типом. Разрешены все текстовые типы, включая char и varchar; blob не считается текстовым типом.Установка параметра подключения OldGetStringBehavior в
trueвосстанавливает предыдущее поведение, выведя предупреждение об устаревании вместо вызова исключения.Этот параметр был добавлен в 8.3.0 и удален в 9.0.0.
-
OpenIdIdentityToken -
Значение по умолчанию: ""
Строка Base64URL, содержащая токен OpenID Identity, используемый для аутентификации с помощью плагина аутентификации
authentication_openid_connect_client.Этот параметр был добавлен в 9.1.0.
-
PersistSecurityInfo,Persist Security Info -
Значение по умолчанию:
falseПри установке на
falseилиno(настоятельно рекомендуется) конфиденциальная информация, такая как пароль, не возвращается как часть подключения, если подключение открыто или когда-либо было открыто. Сброс строки подключения сбрасывает все значения строки подключения, включая пароль. Признанные значения —true,false,yesиno. -
PipeName,Pipe Name,Pipe -
Значение по умолчанию:
mysqlПри установке имени именованной трубы Connector/NET пытается подключиться к MySQL по этой именованной трубе. Этот параметр применяется только к платформе Windows.
ВажноДля MySQL 8.0.14 и более поздних версий, 5.7.25 и более поздних версий и 5.6.43 и более поздних версий минимальные разрешения на именованные трубы предоставляются клиентам, которые используют их для подключения к серверу. Однако Connector/NET может использовать именованные трубы только при предоставлении полных прав доступа на них. В качестве обходного решения создайте локальную группу Windows, содержащую пользователя, который выполняет клиентское приложение. Перезапустите целевой сервер с переменной системы и укажите имя локальной группы в качестве ее значения.
В настоящее время не поддерживается для реализаций .NET Core.
-
ProcedureCacheSize,Procedure Cache Size,procedure cache,procedurecache -
Значение по умолчанию:
25Устанавливает размер кэша хранимых процедур. По умолчанию Connector/NET сохраняет метаданные (типы входных/выходных данных) о последних 25 используемых хранимых процедурах. Чтобы отключить кэш хранимых процедур, установите значение в ноль (0).
-
Replication -
Значение по умолчанию:
falseУказывает, использует ли это подключение реплицированные серверы.
Начиная с 8.0.10, этот параметр поддерживается в реализациях .NET Core 2.0.
-
rewritebatchedstatements,Rewrite batched statements -
Включите этот параметр, чтобы заставить коннектор переписывать пакетные операторы и выполнять их все сразу в одном блоке, а не по одному, что является по умолчанию. Параметр добавлен в Connector/NET 9.2.0.
ПримечаниеЭтот параметр подключения влияет на функции, такие как
LAST_INSERT_ID(). -
RespectBinaryFlags,Respect Binary Flags -
Значение по умолчанию:
trueУстановка этого параметра в
falseозначает, что Connector/NET игнорирует двоичные флаги столбца, установленные сервером. -
SharedMemoryName,Shared Memory Name -
Значение по умолчанию:
mysqlИмя объекта общей памяти для использования в коммуникации, если протокол транспорта установлен на
memory. Этот параметр применяется только к платформе Windows.В настоящее время не поддерживается для реализаций .NET Core.
-
SqlServerMode,Sql Server Mode -
Значение по умолчанию:
falseРазрешить синтаксис SQL Server. При установке на
trueConnector/NET поддерживает использование квадратных скобок вокруг символов вместо обратных кавычек. Это позволяет работать с Connector/NET макросам Visual Studio, которые используют квадратные скобки вокруг символов между[и]. Этот параметр снижает производительность, поэтому следует использовать только при необходимости. -
TableCaching,Table Cache,TableCache -
Значение по умолчанию:
falseВключает или отключает кэширование команд
TableDirect. Значениеtrueвключает кэш, аfalseего отключает. Сведения об использовании кэширования таблиц см. в Разделе 5.3, «Использование Connector/NET с кэшем таблиц». -
TreatBlobsAsUTF8,Treat BLOBs as UTF8 -
Значение по умолчанию:
falseУстановка этого значения в
trueприводит к тому, что у столбцов будет кодовая страницаutf8с кодировкой по умолчанию для этой кодовой страницы. Для преобразования только некоторых столбцов BLOB можно использовать ключевые слова'BlobAsUTF8IncludePattern'и'BlobAsUTF8ExcludePattern'. Установите для них шаблон регулярного выражения, который соответствует именам столбцов для включения или исключения соответственно. -
TreatTinyAsBoolean,Treat Tiny As Boolean -
Значение по умолчанию:
trueУстановка этого значения в
falseприводит к тому, чтоTINYINT(1)обрабатывается как . См. для дополнительного объяснения типов данных и . -
UseAffectedRows,Use Affected Rows -
Значение по умолчанию:
falseПри значении
trueподключение сообщает о измененных строках вместо найденных.
-
UseCompression,Compress,Use Compression -
По умолчанию:
falseУстановка этого параметра в значение
trueвключает сжатие пакетов, обмениваемых между клиентом и сервером. Этот обмен определяется протоколом MySQL клиент/сервер.Сжатие используется, если и клиент, и сервер поддерживают сжатие ZLIB, и клиент запросил сжатие с помощью этого параметра.
Заголовок сжатого пакета: длина пакета (3 байта), номер пакета (1 байт) и длина нескомпрессированного пакета (3 байта). Длина нескомпрессированного пакета — это количество байтов в исходном, нескомпрессированном пакете. Если она равна нулю, данные в этом пакете не были сжаты. При использовании протокола сжатия клиент или сервер могут сжимать пакеты. Однако сжатие не произойдёт, если сжатая длина больше исходной длины. Таким образом, некоторые пакеты будут содержать сжатые данные, а другие — нет.
-
UseDefaultCommandTimeoutForEF,Use Default Command Timeout For EF -
По умолчанию:
falseОбеспечивает тайм-аут команды
EFMySqlCommand, который устанавливается в значение, предоставленное свойствомDefaultCommandTimeout. -
UsePerformanceMonitor,Use Performance Monitor,UserPerfMon,PerfMon -
По умолчанию:
falseУказывает, что счётчики производительности должны обновляться во время выполнения.
В настоящее время не поддерживается для реализаций .NET Core.
-
UseUsageAdvisor,Use Usage Advisor,Usage Advisor -
По умолчанию:
falseВедёт протокол неэффективных операций с базой данных.
Начиная с версии 8.0.10, этот параметр поддерживается в реализациях .NET Core 2.0.
Параметры пула подключений. Следующие параметры относятся к пулу подключений в строках подключения. Дополнительную информацию о пуле подключений см. в разделе Открытие подключения к отдельному серверу.
-
CacheServerProperties,Cache Server Properties -
По умолчанию:
falseУказывает, обновляются ли параметры переменных сервера командой
SHOW VARIABLESкаждый раз при возвращении подключенного соединения. Включение этого параметра ускоряет соединения в среде пула подключений. Приложение не получает информации о любых изменениях конфигурационных переменных, внесённых другими подключениями. -
ConnectionLifeTime,Connection Lifetime -
По умолчанию:
0При возвращении подключения в пул время его создания сравнивается с текущим временем, и подключение уничтожается, если этот временной интервал (в секундах) превышает значение, заданное параметром
Connection Lifetime. Этот параметр полезен в кластерных конфигурациях для принудительного распределения нагрузки между работающим сервером и только что включённым. Значение 0 устанавливает для подключений в пуле максимальный тайм-аут подключения. -
ConnectionReset,Connection Reset -
По умолчанию:
falseЕсли
true, состояние подключения сбрасывается при получении из пула. Значение по умолчанию false позволяет избежать дополнительного запроса к серверу при получении подключения, но состояние подключения не сбрасывается. -
MaximumPoolsize,Max Pool Size,Maximum Pool Size,MaxPoolSize -
По умолчанию:
100Максимальное количество подключений, разрешенных в пуле.
-
MinimumPoolSize,Min Pool Size,Minimum Pool Size,MinPoolSize -
По умолчанию:
0Минимальное количество подключений, разрешенных в пуле.
-
Pooling -
По умолчанию:
trueЕсли
true, объектMySqlConnectionизвлекается из соответствующего пула или, при необходимости, создаётся и добавляется в соответствующий пул. Распознаваемые значения:true,false,yesиno.
Параметры только для протокола X
Следующие параметры подключения действительны для подключений, выполненных с использованием протокола X. Connector/NET 8.0 предоставляет параметры в этом разделе в качестве свойств в классе MySqlX.XDevAPI.MySqlXConnectionStringBuilder.
-
Auth,Authentication,Authentication Mode -
Механизм аутентификации для использования с протоколом X. Этот параметр был добавлен с подключением 8.0.9 и имеет следующие значения, не чувствительные к регистру:
MYSQL41,PLAINиEXTERNAL. Если параметрAuthне задан, механизм выбирается в зависимости от типа подключения.PLAINиспользуется для защищенных подключений (TLS или Unix-сокеты), аMYSQL41используется для незащищенных подключений.EXTERNALиспользуется для внешних методов аутентификации, таких как PAM, идентификаторы входа Windows, LDAP или Kerberos. (EXTERNALв настоящее время не поддерживается.)Параметр
Authне поддерживается для подключений по классическому протоколу MySQL и возвращаетNotSupportedExceptionпри использовании. -
Compression,use-compression -
По умолчанию:
preferredСжатие используется для отправки и получения данных, когда оба клиент и сервер поддерживают его для подключений по протоколу X, и клиент запрашивает сжатие с помощью этого параметра. После успешной переговорки алгоритма Connector/NET может сразу начать сжимать данные. Чтобы предотвратить сжатие небольших пакетов данных или уже сжатых данных, Connector/NET определяет порог размера в 1000 байт.
Когда сервер поддерживает несколько алгоритмов сжатия, Connector/NET применяет следующий приоритет по умолчанию:
zstd_stream(первый),lz4_message(второй) иdeflate_stream(третий). Алгоритмdeflate_streamподдерживается для использования с .NET Core, но не для .NET Framework.ПодсказкаИспользуйте параметр
compression-algorithms, чтобы указать один или несколько поддерживаемых алгоритмов в другом порядке. Алгоритмы согласовываются в порядке, заданном клиентом. Для получения подробной информации см. параметрcompression-algorithms.Сжатие данных для подключений по протоколу X было добавлено в релизе Connector/NET 8.0.20. Параметр
Compressionпринимает следующие значения:preferredдля применения сжатия данных, если сервер поддерживает алгоритмы, выбранные клиентом. В противном случае данные отправляются и принимаются без сжатия.requiredдля обеспечения использования сжатия или для завершения подключения и возврата сообщения об ошибке.disabledдля предотвращения сжатия данных.
-
compression-algorithms,CompressionAlgorithms -
Начиная с Connector/NET 8.0.22, приложение-клиент может указать порядок, в котором поддерживаемые алгоритмы сжатия согласовываются с сервером. Значение параметра подключения
Compressionдолжно быть установлено в значениеpreferredилиrequiredдля применения этого параметра. Неподдерживаемые алгоритмы игнорируются.Этот параметр принимает следующие имена и синонимы алгоритмов:
lz4_messageилиlz4zstd_streamилиzstddeflate_streamилиdeflate(недействительно для .NET Framework)
Имена и синонимы алгоритмов могут быть объединены в список, разделенный запятыми, или предоставлены в качестве отдельного значения (со скобками или без них). Примеры:
// Compression option set to preferred (default) MySQLX.GetSession("mysqlx://test:test@localhost:3306?compression-algorithms=[lz4_message,deflate] MySQLX.GetSession("mysqlx://test:test@localhost:3306?compressionalgorithms=lz4 MySQLX.GetSession("mysqlx://test:test@localhost:3306?compression=preferred&compression-algorithms=[zstd] // Compression option set to required MySQLX.GetSession("mysqlx://test:test@localhost:3306?compression=required&compression-algorithms=[zstd_stream,lz4_message] MySQLX.GetSession("mysqlx://test:test@localhost:3306?compression=required&compression-algorithms=[lz4] MySQLX.GetSession("mysqlx://test:test@localhost:3306?compression=required&compression-algorithms=zstd_stream // Connection string MySQLX.GetSession("server=localhost;port=3306;uid=test;password=test;compression=required;compression-algorithms=lz4_message;") // Anonymous object MySQLX.GetSession(new { server = "localhost", port = "3306", uid = "test", password = "test", compression="required", compressionalgorithms = "deflate_stream" })Для дополнительной информации см. .
-
connection-attributes,ConnectionAttributes -
По умолчанию:
trueЭтот параметр был введен в Connector/NET 8.0.16 для отправки набора атрибутов вместе с атрибутами соединения по умолчанию на сервер. Общий размер данных атрибутов подключения, отправленных клиентом, ограничен значением переменной сервера. Общий размер пакета данных должен быть меньше значения переменной сервера. Для общей информации об атрибутах подключения см. .
Значение параметра connection-attributes может быть пустым (то же, что и указание
true), булевым значением (trueилиfalseдля включения или выключения набора атрибутов по умолчанию) или списком из нуля или более спецификаторовkey=value, разделенных запятыми (для отправки дополнительно к набору атрибутов по умолчанию). В списке пропущенное значение ключа интерпретируется как значениеNULL. Примеры:// Sessions MySQLX.GetSession($"mysqlx://user@host/schema") MySQLX.GetSession($"mysqlx://user@host/schema?connection-attributes") MySQLX.GetSession($"mysqlx://user@host/schema?connection-attributes=true") MySQLX.GetSession($"mysqlx://user@host/schema?connection-attributes=false") MySQLX.GetSession($"mysqlx://user@host/schema?connection-attributes=[attr1=val1,attr2,attr3=]") MySQLX.GetSession($"mysqlx://user@host/schema?connection-attributes=[]") // Pooling MySQLX.GetClient($"mysqlx://user@host/schema") MySQLX.GetClient($"mysqlx://user@host/schema?connection-attributes") MySQLX.GetClient($"mysqlx://user@host/schema?connection-attributes=true") MySQLX.GetClient($"mysqlx://user@host/schema?connection-attributes=false") MySQLX.GetClient($"mysqlx://user@host/schema?connection-attributes=[attr1=val1,attr2,attr3=]") MySQLX.GetClient($"mysqlx://user@host/schema?connection-attributes=[]")
Имена атрибутов, определенных приложением, не могут начинаться с
_, так как такие имена зарезервированы для внутренних атрибутов.Если атрибуты подключения не указаны корректным способом, возникает ошибка, и попытка подключения завершается неудачно.
-
Connect-Timeout,ConnectTimeout -
По умолчанию:
10000Время ожидания (в миллисекундах) для подключения по протоколу X к серверу перед завершением попытки и генерацией ошибки. Вы можете отключить таймаут подключения, установив значение в ноль. Этот параметр можно указать следующим образом:
-
Пример строки подключения в формате URI
MySQLX.GetSession("mysqlx://test:test@localhost:33060?connect-timeout=2000"); -
Пример строки подключения
MySQLX.GetSession("server=localhost;user=test;port=33060;connect-timeout=2000"); -
Пример с анонимным объектом
MySQLX.GetSession(new { server="localhost", user="test", port=33060, connecttimeout=2000 }); -
Пример использования класса
MySqlXConnectionStringBuildervar builder = new MySqlXConnectionStringBuilder("server=localhost;user=test;port=33060"); builder.ConnectTimeout = 2000; MySQLX.GetSession(builder.ConnectionString);
-
-
SslCrl,Ssl-Crl -
По умолчанию:
nullПуть к локальному файлу, содержащему списки отзыва сертификатов.
ВажноХотя параметр строки подключения
SslCrlдопустим для использования, его применение вызывает сообщениеNotSupportedException.
© 2025 Oracle
Licensed under the GPLv2 License.