A.1 mysqlsh — MySQL Shell
MySQL Shell — это расширенный командный клиент и редактор кода для MySQL. Помимо SQL, MySQL Shell также предоставляет возможности для написания сценариев на JavaScript и Python. Для получения информации об использовании MySQL Shell, см. MySQL Shell 9.2. При подключении MySQL Shell к MySQL Server через X Protocol можно использовать X DevAPI для работы с реляционными и документоориентированными данными, см. . MySQL Shell включает AdminAPI, который позволяет работать с развертываниями InnoDB Cluster, InnoDB ClusterSet и InnoDB ReplicaSet; см. Главу 6, MySQL AdminAPI.
Многие из описанных здесь опций связаны с подключениями между MySQL Shell и экземпляром MySQL Server. Дополнительную информацию см. в Разделе 4.3, “Подключения MySQL Shell”.
mysqlsh поддерживает следующие командные опции.
Таблица A.1 Опции mysqlsh
| Имя опции | Описание |
|---|
| -- | Начало интеграции командной строки API |
| --auth-method | Используемый метод аутентификации |
| --authentication-oci-client-config-profile | Профиль в файле конфигурации OCI |
| --authentication-openid-connect-client-id-token-file | Путь к файлу с токеном авторизации OpenId Connect |
| --cluster | Подключение к кластеру InnoDB |
| --column-type-info | Печать метаданных столбцов в наборах результатов |
| --compress | Сжатие всей информации, передаваемой между клиентом и сервером |
| --compression-algorithms | Разрешенные алгоритмы сжатия для подключений к серверу |
| --zstd-compression-level | Уровень сжатия для подключений к серверу, использующих любой алгоритм сжатия через протокол X или только zstd для классических подключений. |
| --connect-timeout | Таймаут подключения для глобальной сессии |
| --credential-store-helper | Справочный помощник хранилища секретов для паролей |
| --database | Схема для использования (псевдоним для --schema) |
| --dba | Включить протокол X при подключении к серверу MySQL 5.7 |
| --dba-log-sql | Регистрировать SQL-запросы, выполняемые операциями AdminAPI |
| --disable-plugins | Отключить загрузку пользовательских плагинов |
| --execute | Выполнить команду и выйти |
| --file | Файл для обработки в пакетном режиме |
| --force | Продолжить в режимах SQL и пакетном, даже если произойдут ошибки |
| --get-server-public-key | Запрос открытого ключа RSA у сервера |
| --help | Отображение справки и выход |
| --histignore | Строки, которые не добавляются в историю |
| --host | Хост, на котором расположен экземпляр сервера MySQL |
| --interactive | Эмулировать интерактивный режим в пакетном режиме |
| --js, --javascript | Запуск в режиме JavaScript |
| --json | Печать вывода в формате JSON |
| --log-file | Расположение файла журнала для этого экземпляра |
| --log-level | Указание уровня ведения журнала |
| --log-sql | Записывать все SQL-запросы, сгенерированные MySQL Shell, в файл журнала MySQL Shell. |
| --mysql, --mc | Создание сессии с использованием классического протокола MySQL |
| --mysql-plugin-dir | Директория, где установлены плагины клиентской стороны |
| --mysqlx, --mx | Создание сессии с использованием протокола X |
| --name-cache | Включить автоматическую загрузку имен таблиц на основе активной схемы по умолчанию |
| --no-name-cache | Отключить автодополнение |
| --no-password | Для этого подключения не предоставлен пароль |
| --no-wizard, --nw | Отключить интерактивные мастера |
| --oci-config-file | Путь к файлу конфигурации OCI для использования |
| --pager | Внешняя утилита просмотра страниц для отображения вывода |
| --password | Пароль для подключения к серверу |
| --password1 | Пароль 1 для многофакторной аутентификации (эквивалентно --password) |
| --password2 | Пароль 2 для многофакторной аутентификации |
| --password3 | Пароль 3 для многофакторной аутентификации |
| --passwords-from-stdin | Чтение пароля из стандартного ввода |
| --plugin-authentication-kerberos-client-mode | Позволяет определить режим клиента Kerberos (SSPI или GSSAPI) при использовании аутентификации Kerberos |
| --plugin-authentication-webauthn-client-preserve-privacy | Включить возможность пользователю выбрать ключ для использования при подтверждении |
| --port | Номер порта TCP/IP для подключения |
| --py, --python | Запуск в режиме Python |
| --pyc | Выполнение Python-команды и выход. Все опции, указанные после этой опции, обрабатываются как аргументы обрабатываемой команды. |
| --pym | Пароль 3 для многофакторной аутентификации |
| --quiet-start | Запуск без вывода вводной информации |
| --redirect-primary | Обеспечить подключение к первичному экземпляру кластера InnoDB |
| --redirect-secondary | Обеспечить подключение к вторичному экземпляру кластера InnoDB |
| --register-factor | Факторы многофакторной аутентификации, для которых необходимо выполнить регистрацию |
| --replicaset | Обеспечивает, что целевой сервер принадлежит набору реплик InnoDB, и заполняет глобальную переменную rs набором реплик InnoDB, к которому принадлежит целевой экземпляр. |
| --result-format | Установка формата вывода для этой сессии |
| --save-passwords | Как пароли хранятся в хранилище секретов |
| --schema | Схема для использования |
| --server-public-key-path | Имя пути к файлу, содержащему открытый ключ RSA |
| --show-warnings | Показывать предупреждения после каждой команды, если они есть (в режиме SQL) |
| --socket | Файл Unix-соккета или именованная труба Windows для использования (только для классического протокола MySQL) |
| --sql | Запуск в режиме SQL, автоматически определяя протокол для подключения |
| --sqlc | Запуск в режиме SQL с подключением по классическому протоколу MySQL |
| --sqlx | Запуск в режиме SQL с подключением по протоколу X |
| --ssh | URI для подключения к SSH-серверу |
| --ssh-config-file | Файл конфигурации для подключения к SSH-серверу |
| --ssh-identity-file | Файл идентификатора для подключения к SSH-серверу |
| --ssl-ca | Файл, содержащий список доверенных центров сертификации SSL |
| --ssl-capath | Директория, содержащая сертификаты доверенных центров сертификации SSL |
| --ssl-cert | Файл, содержащий X.509-сертификат |
| --ssl-cipher | Список разрешенных шифров шифрования для подключений, использующих протоколы TLS до TLSv1.2 |
| --ssl-crl | Файл, содержащий списки отзыва сертификатов |
| --ssl-crlpath | Директория, содержащая файлы списков отзыва сертификатов |
| --ssl-key | Файл, содержащий X.509-ключ |
| --ssl-mode | Требуемое состояние безопасности подключения к серверу |
| --syslog | Вести интерактивные SQL-запросы в системную систему логирования |
| --tabbed | Отображать вывод в формате, разделенном табуляцией |
| --table | Отображать вывод в табличном формате |
| --tls-ciphersuites | Использовать шифр TLS v1.3 |
| --tls-version | Разрешенный протокол TLS для шифрованных соединений |
| --uri | Информация о сеансе в формате URI |
| --user | Имя пользователя MySQL для подключения к серверу |
| --verbose | Активировать подробный вывод на консоль |
| --version | Отобразить информацию о версии и выйти |
| --vertical | Отобразить все результаты SQL вертикально |
| --zstd-compression-level | Уровень сжатия для соединений с сервером, использующих сжатие zstd |
-
--help,-?Отобразить сообщение справки и выйти.
-
Помечает конец списка опций mysqlsh и начало команды и её аргументов для интеграции командной строки API MySQL Shell. Вы можете выполнить методы глобальных объектов MySQL Shell из командной строки, используя этот синтаксис:
mysqlsh [
options] --objectmethod[arguments]Дополнительную информацию см. в разделе 5.8 «Интеграция командной строки API».
-
Способ аутентификации для учетной записи. Зависит от плагина аутентификации, используемого для пароля учетной записи. Для подключений MySQL Shell, использующих классический протокол MySQL, укажите имя плагина аутентификации, например,
caching_sha2_password. Для подключений MySQL Shell, использующих протокол X, укажите один из следующих вариантов:- AUTO
Позволить библиотеке выбрать метод аутентификации.
- FALLBACK
Позволить библиотеке выбрать метод аутентификации, но не использовать методы аутентификации, несовместимые с MySQL 5.7.
- FROM_CAPABILITIES
Позволить библиотеке выбрать метод аутентификации, используя возможности, объявленные экземпляром сервера.
- MYSQL41
Используйте протокол аутентификации с ответом на вызов, поддерживаемый MySQL 4.1 и более поздними версиями, который не отправляет пароль в открытом виде. Этот параметр совместим с учетными записями, использующими плагин аутентификации
mysql_native_password.- PLAIN
Отправьте открытый пароль для аутентификации. Используйте этот параметр только с зашифрованными подключениями. Этот параметр можно использовать для аутентификации с кэшированными учетными данными для учетной записи, использующей плагин аутентификации
caching_sha2_password, при условии наличия SSL-соединения. См. .- SHA256_MEMORY
Проверка подлинности с использованием хэшированного пароля, хранящегося в памяти. Этот параметр можно использовать для аутентификации с кэшированными учетными данными для учетной записи, использующей плагин аутентификации
caching_sha2_password, при наличии подключения без SSL. См. .
Для подключений MySQL Shell, использующих классический протокол MySQL, укажите имя плагина аутентификации, используемого учетной записью пользователя, например,
caching_sha2_password(по умолчанию для учетных записей пользователей, созданных в MySQL 8.0). MySQL Shell использует библиотеку MySQL для аутентификации на стороне клиента для этих подключений. Для следующих методов аутентификации требуется дополнительная настройка:- clear_text_password
Для простой аутентификации LDAP требуется плагин клиента
mysql_clear_password. Он встроен в библиотеку MySQL-клиента, но по соображениям безопасности по умолчанию отключен. MySQL Shell включает и использует плагин при указании его с параметром подключения--auth-method=clear_text_password. Этот тип аутентификации подходит только для защищённого соединения, использующего SSL или сокеты, поэтому вы должны настроить защищённое соединение перед его использованием. Обратите внимание, что с опциейssl-mode=preferredSSL-соединение не гарантируется, поэтому соединение с установленным этим параметром не считается SSL-соединением. Дополнительную информацию см. в разделе 4.3.4 «Использование защищённых подключений».- authentication_ldap_sasl_client
Плагин клиента
authentication_ldap_sasl_clientпредназначен для аутентификации LDAP на основе SASL, включая аутентификацию GSSAPI/Kerberos. Он не встроен в библиотеку MySQL-клиента, но поставляется в пакетах MySQL Server. Для загрузки необходимо использовать параметр--mysql-plugin-dirдля указания пути к плагину в пакетах MySQL Server.- authentication_kerberos_client
Плагин клиента
authentication_kerberos_clientпредназначен для аутентификации Kerberos. Он не встроен в библиотеку MySQL-клиента, но поставляется в пакетах MySQL Server. Для загрузки необходимо использовать параметр--mysql-plugin-dirдля указания пути к плагину в пакетах MySQL Server.
Кэшированные билеты выдачи билетов (TGT) для аутентификации Kerberos поддерживаются с MySQL 8.0.27, когда параметр
--auth-methodиспользуется для указания плагинаauthentication_ldap_sasl_clientилиauthentication_kerberos_client, и параметр--mysql-plugin-dirиспользуется для предоставления пути к плагину. Для использования кэшированных TGT не указывайте пользователя и пароль в параметрах подключения. Когда вы указываете один из этих плагинов и не указываете пользователя и пароль, MySQL Shell не предоставляет имя системного пользователя, не запрашивает пароль и не пытается использовать помощник Secret Store для получения или хранения учетных данных.Дополнительную информацию см. в разделе 4.3.5 «Использование аутентификации LDAP и Kerberos».
-
Гарантирует, что целевой сервер является частью InnoDB Cluster и, если это так, устанавливает глобальную переменную
clusterв объект кластера. -
В SQL-режиме перед печатью возвращаемого набора результатов запроса печатается метаданные для каждого столбца в наборе результатов, такие как тип и сортировка столбца.
Тип столбца возвращается как тип, используемый MySQL Shell (
Type), и тип, используемый исходной базой данных (DBType). Для подключений MySQL Shell, использующих классический протокол MySQL,DBTypeвозвращается протоколом, а для подключений по протоколу X,DBTypeвыводится на основе доступной информации. Длина столбца (Length) возвращается в байтах. -
--compress[={required|preferred|disabled}],-C [{required|preferred|disabled}]Управляет сжатием информации, отправляемой между клиентом и сервером с помощью этого подключения. Он также доступен для подключений с классическим протоколом MySQL и протоколом X, и вы можете необязательно указать
required,preferredилиdisabled. Если указан только--compress, значение по умолчанию равно--compress=required. Информацию об использовании MySQL Shell для управления сжатием во всех выпусках см. в разделе 4.3.8 «Использование сжатых соединений». -
--compression-algorithms=valueФормат командной строки --compression-algorithms=valueТип Установка Значение по умолчанию uncompressedДопустимые значения zlibzstduncompressedРазрешенные алгоритмы сжатия для соединений с сервером.
-
Формат командной строки --zstd-compression-level=#Тип Целое число Уровень сжатия для соединений с сервером, использующих любой алгоритм сжатия через протокол X или только zstd для классических соединений.
-
--zstd-compression-level=levelФормат командной строки --zstd-compression-level=#Тип Целое число Уровень сжатия, который необходимо использовать для соединений с сервером, использующих алгоритм сжатия
zstd. Допустимые уровни — от 1 до 22, причём большие значения указывают на более высокий уровень сжатия. Уровень сжатия по умолчаниюzstd— 3. Настройка уровня сжатия не влияет на соединения, не использующиеzstdсжатие. -
Настраивает, как долго MySQL Shell ожидает (в миллисекундах) установления глобальной сессии, заданной через аргументы командной строки.
-
--credential-store-helper=helperПомощник Secret Store, который будет использоваться для хранения и извлечения паролей. См. раздел 4.4 «Подключаемый хранилище паролей».
-
--database=,name-DnameСхема по умолчанию для использования. Это псевдоним для
--schema.
-
Устарело в MySQL Shell 8.4.0.
Включить плагин X при подключении к серверу MySQL 5.7, чтобы вы могли использовать подключения по протоколу X для последующих подключений. Требуется подключение с использованием классического протокола MySQL. Неактуально для серверов MySQL 8.0, на которых плагин X включен по умолчанию.
-
Вести журнал SQL-запросов, выполняемых операциями AdminAPI (исключая операции песочницы). По умолчанию эта категория запросов не записывается в журнал приложения MySQL Shell или не выводится на консоль в виде подробной информации, даже если установлены опции
--log-levelи--verbose. Значение опции — целое число в диапазоне от 0 до 2. 0 — не вести журнал и не отображать эту категорию запросов, что является поведением по умолчанию, если вы не указываете опцию. 1 — вести журнал SQL-запросов, выполняемых операциями AdminAPI, за исключением запросов и (это значение по умолчанию, если вы укажете опцию в командной строке без значения). 2 — вести полный журнал SQL-запросов, выполняемых обычными операциями AdminAPI, включая запросы и . Дополнительная информация приведена в Главе 13, Ведение журнала и отладка MySQL Shell. -
Отключает пользовательские плагины.
-
--log-sql[=off|error|on|all|unfiltered]Вести журнал всех SQL-запросов, выполняемых MySQL Shell, в журнал MySQL Shell,
mysqlsh.logДоступны следующие опции:
- off
Журнал SQL-запросов MySQL Shell не ведётся.
- error
(Значение по умолчанию) ведётся журнал только не выполненных SQL-запросов MySQL Shell.
- on
Ведётся журнал всех SQL-запросов MySQL Shell, кроме тех, которые соответствуют шаблону игнорирования, определённому в
logSql.ignorePatternиlogSql.ignorePatternUnsafe. Дополнительная информация приведена в разделе «Фильтрование ведения журнала SQL».- all
Ведётся журнал всех SQL-запросов MySQL Shell, кроме тех, которые соответствуют шаблону игнорирования, определённому в
logSql.ignorePatternUnsafe. Дополнительная информация приведена в разделе «Фильтрование ведения журнала SQL».- unfiltered
Ведётся журнал всех SQL-запросов MySQL Shell, фильтрация не выполняется.
-
--execute=,command-ecommandВыполнить команду с использованием текущего активного языка и выйти. Эта опция несовместима с опцией
--file=.file_name -
--file=,file_name-ffile_nameУказать файл для обработки в пакетном режиме. Любые опции, указанные после этой, используются в качестве аргументов обрабатываемого файла.
-
Продолжить обработку в режимах SQL и пакетном режиме даже при возникновении ошибок.
-
Указать строки, которые не добавляются в историю MySQL Shell. Строки разделяются двоеточием. Сопоставление нечувствительно к регистру, и можно использовать подстановочные знаки * и ?. По умолчанию игнорируются строки, указанные как “
*IDENTIFIED*:*PASSWORD*”. Дополнительная информация приведена в разделе 5.5 «История кода». -
--host=,host_name-hhost_nameПодключение к серверу MySQL на указанном хосте. В Windows, если вы укажете
--host=.или-h .(указав имя хоста как точку), MySQL Shell подключается с использованием стандартной именованной трубы (называемойMySQL) или альтернативной именованной трубы, которую вы указываете с помощью опции--socket. -
Аналог в MySQL Shell.
Если
--server-public-key-path=указан и содержит корректный файл с общедоступным ключом, он имеет приоритет передfile_name--get-server-public-key.ВажноПоддерживается только с подключениями по классическому протоколу MySQL.
См. .
-
Эмуляция интерактивного режима в пакетном режиме.
-
--js,--javascriptЗапуск в режиме JavaScript.
-
Управляет форматированием JSON для вывода MySQL Shell из этого сеанса. Эта опция предназначена для взаимодействия MySQL Shell с другими программами, например, в рамках тестирования. Для изменения формата вывода результатов запроса на использование формата JSON см.
--result-format.При отсутствии значения или значении
prettyдля опции--jsonвывод генерируется в формате JSON с отступами. При значенииrawвывод генерируется в формате простого JSON. В любом из этих случаев опция--result-formatи её алиасы, а также значение конфигурационной опцииresultFormatMySQL Shell игнорируются. При значенииoffформатирование JSON не выполняется, и наборы результатов выводятся в обычном формате, указанном опцией--result-formatили конфигурационной опциейresultFormat. -
Изменение расположения файла журнала приложения MySQL Shell
mysqlsh.logдля этого экземпляра MySQL Shell. По умолчанию журнал приложения находится в пути конфигурации пользователя, по умолчанию в%APPDATA%\MySQL\mysqlsh\в Windows или~/.mysqlsh/в Unix. Вы можете переопределить путь конфигурации пользователя для всех экземпляров MySQL Shell, задав переменную средыMYSQLSH_USER_CONFIG_HOME. Опция--log-fileприменяется к отдельному экземпляру MySQL Shell, что означает, что разные экземпляры могут записывать в разные места. -
Изменение уровня ведения журнала файла журнала приложения MySQL Shell
mysqlsh.logили отключение ведения журнала в файл. Опция требует значения, которое может быть целым числом от 1 до 8 или одной изnone,internal,error,warning,info,debug,debug2илиdebug3. Указание 1 илиnoneотключает ведение журнала в файл журнала приложения. Уровень 5 (info) является значением по умолчанию, если вы не укажете эту опцию. См. Главу 13, Ведение журнала и отладка MySQL Shell. -
Устарело в версии 8.0.13 MySQL Shell. Автоматически пытается использовать протокол X для создания подключения сеанса и переходит к классическому протоколу MySQL, если протокол X недоступен.
-
--mysql,--mcУстанавливает глобальный сеанс, созданный при запуске, для использования подключения по классическому протоколу MySQL.
-
Устанавливает временный путь к плагинам проверки подлинности клиентов, перезаписывая значение настройки
shell.options.mysqlPluginDir. Плагины клиентов поставляются в пакетах MySQL Server и могут быть расположены относительно каталога базы MySQL (значение системной переменной ). Например:C:\program files\mysql\mysql Server 8.0\lib\pluginдля типов хостов Windows/usr/local/mysql/lib/pluginдля типов хостов Linux
Список плагинов проверки подлинности клиентов, поставляемых с сервером, см. .
-
--mysqlx,--mxУстанавливает глобальный сеанс, созданный при запуске, для использования подключения по протоколу X.
-
Включить автоматическую загрузку имён таблиц на основе активной схемы по умолчанию.
-
--no-name-cache,-AОтключить загрузку имён таблиц для автодополнения на основе активной схемы по умолчанию и объекта DevAPI
db. Используйте\rehashдля ручного перезагрузки информации о названиях. -
При подключении к серверу, если у пользователя есть учётная запись без пароля (что небезопасно и не рекомендуется) или если используется аутентификация по данным сокета peer (для подключений по Unix-сокету), необходимо использовать
--no-password, чтобы явно указать, что пароль не предоставляется, и запрос пароля не требуется.
-
--no-wizard,-nwОтключает интерактивные мастера, предоставляемые такими операциями, как создание соединений,
dba.configureInstance(),и так далее. Используйте этот параметр, если вы хотите создавать сценарии для MySQL Shell и не отображать интерактивные приглашения. Для получения дополнительной информации см. Раздел 5.6, «Выполнение пакетного кода» и Раздел 5.8, «Интеграция командной строки API».Cluster.rebootClusterFromCompleteOutage() -
--oci-config-file=pathToConfigFileКонфигурирует путь к файлу конфигурации OCI для использования с аутентификацией OCI для подключения к системе баз данных HeatWave Service.
Значение, определенное здесь, переопределяет значение, определенное в параметре
oci.configFile.Для получения дополнительной информации см. .
-
--authentication-oci-client-config-profile=profileNameКонфигурирует профиль в файле конфигурации OCI для использования с аутентификацией OCI для подключения к системе баз данных HeatWave Service.
Значение, определенное здесь, переопределяет значение, определенное в параметре
oci.profile.Для получения дополнительной информации см. .
-
--authentication-openid-connect-client-id-token-file=filenameПуть к файлу маркера авторизации OpenId Connect
См. Раздел 4.3.6, «Использование OpenID Connect».
ВажноАутентификация OpenID Connect поддерживается только в MySQL Enterprise Edition.
-
Внешний инструмент просмотра, используемый MySQL Shell для отображения текстового вывода для операторов, выполненных в SQL-режиме, и других выбранных команд, таких как справка. Если вы не задаете программу просмотра, используется программа просмотра, указанная в переменной среды
PAGER. См. Раздел 4.6, «Использование программы просмотра». -
Считывает пароль из стандартного ввода, а не из терминала. Этот параметр не влияет на другие параметры пароля, такие как запрос пароля.
-
--password[=,password]-ppasswordПароль, используемый при подключении к серверу. Максимальная длина пароля, принимаемая для подключения к MySQL Shell, составляет 128 символов.
-
--password=(password-p) со значением предоставляет пароль для использования при подключении. С длинной формойpassword--password=необходимо использовать знак равенства, а не пробел между параметром и его значением. С короткой формой-pне должно быть пробела между параметром и его значением. Если в любом случае используется пробел, значение не интерпретируется как пароль и может интерпретироваться как другой параметр соединения.Указание пароля в командной строке следует считать небезопасным. См. . Вы можете использовать файл параметров, чтобы избежать указания пароля в командной строке.
--passwordбез значения и без знака равенства или-pбез значения запрашивает приглашение для ввода пароля.--password=с пустым значением имеет тот же эффект, что и--no-password, который указывает, что пользователь подключается без пароля. При подключении к серверу, если у пользователя есть учетная запись без пароля, что небезопасно и не рекомендуется, или если используется аутентификация с помощью учетных данных однорангового узла сокета (для соединений с Unix-сокетами), необходимо использовать один из этих способов, чтобы явно указать, что пароль не предоставлен, и запрос пароля не требуется.
-
-
--password1,--password2и--password3— это пароли для использования в учетных записях, требующих многофакторной аутентификации. Вы можете указать до трех паролей. Параметры работают так же, как параметр--password, а--password1рассматривается как эквивалент этого параметра. Вы можете указать значение пароля после параметра в командной строке (что небезопасно), или, если параметры указаны без значения пароля, MySQL Shell запрашивает у пользователя каждый пароль по очереди. Поддерживается только для классических соединений протокола MySQL, установленных с помощью аргументов командной строки. -
Пароль для второго метода аутентификации для учетных записей, требующих многофакторной аутентификации. См. описание параметра
--password1. -
Пароль для третьего метода аутентификации для учетных записей, требующих многофакторной аутентификации. См. описание параметра
--password1. -
--plugin-authentication-kerberos-client-mode={SSPI|GSSAPI}Формат командной строки --plugin-authentication-kerberos-client-modeТип String Значение по умолчанию SSPIДопустимые значения SSPIGSSAPIНа платформах Microsoft Windows позволяет определить режим клиента Kerberos (SSPI или GSSAPI) при использовании аутентификации Kerberos.
Если
plugin-authentication-kerberos-client-modeне определен, по умолчанию используетсяSSPI.При подключении к серверу MySQL с использованием аутентификации Kerberos режимы аутентификации имеют следующее поведение:
-
GSSAPI:Если пароль не предоставлен, билет аутентификации извлекается из кэша MIT Kerberos. Если действительный билет не найден, соединение завершается неудачей.
Если пароль предоставлен, билет аутентификации извлекается с сервера Kerberos и сохраняется в кэше MIT Kerberos.
Если имя учетной записи не указано, имя пользователя Windows используется как имя учетной записи MySQL.
-
SSPI:Если пароль не предоставлен, используется билет единого входа Windows.
Если пароль предоставлен, билет аутентификации сохраняется во временном хранилище в памяти.
-
-
--plugin-authentication-webauthn-client-preserve-privacy={OFF|ON}Формат командной строки --plugin-authentication-webauthn-client-preserve-privacyТип Boolean Значение по умолчанию falseОпределяет, как утверждения отправляются на сервер, если для данного идентификатора RP (уникальное имя, присвоенное серверу доверенной стороны, которым является сервер MySQL) хранится более одного обнаруживаемого учетных данных. Если устройство FIDO2 содержит несколько резидентных ключей для данного идентификатора RP, этот параметр позволяет пользователю выбрать ключ, который будет использоваться для утверждения. Он предоставляет два возможных значения, которые может установить клиент. Значение по умолчанию —
false. Если установлено значениеfalse, вызов подписывается всеми доступными учетными данными для данного идентификатора RP, и все подписи отправляются на сервер. Если установлено значениеtrue, пользователю предлагается выбрать учетные данные, которые будут использоваться для подписи.ПримечаниеЭтот параметр не оказывает влияния, если устройство не поддерживает функцию резидентного ключа.
Для получения дополнительной информации см. .
-
--port=,port_num-Pport_numНомер порта TCP/IP, используемый для соединения. Значение по умолчанию — порт 33060.
-
--py,--pythonЗапуск в режиме Python.
-
Выполнить команду Python и завершить работу. Любые параметры, указанные после этого, рассматриваются как аргументы обработанной команды.
-
Выполнить указанный модуль Python как сценарий в режиме Python MySQL Shell.
--pymработает так же, как параметр командной строки Python-m.
-
Запуск без вывода вводной информации. MySQL Shell обычно выводит информацию о продукте, информацию о сеансе (например, об основной схеме и идентификаторе подключения), сообщения об ошибках и любые ошибки, возвращённые во время запуска и подключения. Если вы укажете
--quiet-startбез значения или со значением 1, информация о продукте MySQL Shell не выводится, но информация о сеансе, предупреждения и ошибки выводятся. Со значением 2 выводятся только ошибки. -
Обеспечивает, что целевой сервер является частью кластера InnoDB или репликат InnoDB, и если он не является первичным, находит первичный сервер и подключается к нему. MySQL Shell завершается с ошибкой, если при использовании этого параметра выполняется любое из следующих условий:
Не указан ни один экземпляр
В кластере InnoDB групповая репликация не активна
Метаданные кластера InnoDB отсутствуют
Нет кворума
-
Командная строка --register-factor=valueТип Строка Фактор или факторы, для которых должна быть выполнена регистрация устройства FIDO/FIDO2 перед использованием аутентификации на основе устройства WebAuthn. Значение этого параметра должно быть единственным значением или двумя значениями, разделёнными запятыми. Каждое значение должно быть 2 или 3, поэтому допустимые значения параметра —
'2','3','2,3'и'3,2'.Например, учётная запись, требующая регистрации третьего фактора аутентификации, вызывает клиент mysql следующим образом:
mysqlsh --user=
user_name--register-factor=3Учётная запись, требующая регистрации второго и третьего факторов аутентификации, вызывает клиент mysql следующим образом:
mysqlsh --user=
user_name--register-factor=2,3Если регистрация прошла успешно, устанавливается соединение. Если существует фактор аутентификации с ожидающей регистрацией, при попытке подключения к серверу соединение переводится в режим ожидания регистрации. В этом случае отключитесь и подключитесь снова с правильным значением, чтобы завершить регистрацию.
Регистрация — двухэтапный процесс, включающий этапы инициирования регистрации и завершения регистрации. На этапе инициирования регистрации выполняется данное утверждение:
ALTER USER
userfactorINITIATE REGISTRATIONЗапрос возвращает результат, содержащий 32-байтовый вызов, имя пользователя и идентификатор стороны, доверяющей (см. ).
На этапе завершения регистрации выполняется данное утверждение:
ALTER USER
userfactorFINISH REGISTRATION SET CHALLENGE_RESPONSE AS 'auth_string'Запрос завершает регистрацию и отправляет следующую информацию на сервер в качестве части
auth_string: данные аутентификатора, необязательный сертификат аутентификации в формате X.509 и подпись.Этапы инициирования и регистрации должны выполняться в рамках одного соединения, так как вызов, полученный клиентом на этапе инициирования, сохраняется в обработчике соединения клиента. Регистрация завершится неудачей, если этап регистрации выполняется другим соединением. Параметр выполняет оба этапа — инициирования, и регистрации, что предотвращает описанный выше сценарий сбоя и исключает необходимость ручного выполнения запросов на инициирование и регистрацию.
Параметр
--register-factorдоступен только для клиента mysql. Другие программы-клиенты MySQL не поддерживают его.Для получения дополнительной информации см. .
-
Обеспечивает, что целевой сервер принадлежит репликат InnoDB, и если это так, заполняет переменную
rsглобальной переменной с репликатом InnoDB. Затем вы можете управлять репликатом InnoDB с помощью глобальной переменнойrs, например, выполнивrs.status(). -
Обеспечивает, что целевой сервер является частью однопервичного кластера InnoDB или репликата InnoDB, и если он не является вторичным, находит вторичный сервер и подключается к нему. MySQL Shell завершается с ошибкой, если при использовании этого параметра выполняется любое из следующих условий:
В кластере InnoDB групповая репликация не активна
Метаданные кластера InnoDB отсутствуют
Нет кворума
Кластер не является однопервичным и работает в режиме многопервичного режима
Вторичный сервер недоступен, например, потому что существует только один серверный экземпляр
-
--result-format={table|tabbed|vertical|json|json/pretty|ndjson|json/raw|json/array}Установите значение конфигурационного параметра
resultFormatMySQL Shell для этого сеанса. Форматы следующие:- table
Значение по умолчанию для интерактивного режима, если не установлено другое значение для конфигурационного параметра
resultFormatв файле конфигурации, в этом случае применяется это значение по умолчанию. Также можно использовать псевдоним--table.- tabbed
Значение по умолчанию для пакетного режима, если не установлено другое значение для конфигурационного параметра
resultFormatв файле конфигурации, в этом случае применяется это значение по умолчанию. Также можно использовать псевдоним--tabbed.- vertical
Создаёт вывод, эквивалентный завершающему символу
\Gдля запроса SQL. Также можно использовать псевдонимы--verticalили-E.- json или json/pretty
Создаёт отформатированный вывод в формате JSON.
- ndjson или json/raw
Создаёт вывод в формате JSON, разделенный символами новой строки.
- json/array
Создаёт вывод в формате JSON, заключенный в массив JSON.
Если используется опция командной строки
--jsonдля активации обертывания вывода JSON для сеанса, опция--result-formatи её псевдонимы, а также значение конфигурационного параметраresultFormatигнорируются.
-
Начать в режиме SQL, автоматически определяя протокол для использования, если он не указан в информации о подключении. Если протокол не указан, по умолчанию используется подключение X Protocol, в качестве резервного варианта используется классический протокол MySQL. Чтобы принудительно использовать определённый протокол для подключения, см. опции
--sqlxили--sqlc. В качестве альтернативы, укажите протокол для использования в строке подключения в стиле URI или используйте опцию--port. Для получения дополнительной информации см. Раздел 4.3, «Подключения к MySQL Shell» и Порты MySQL Shell. -
Начать в режиме SQL, принудительно используя классический протокол MySQL для подключения, например, для использования MySQL Shell с сервером, не поддерживающим протокол X Protocol. Если вы не укажете порт в качестве части подключения, при использовании этой опции MySQL Shell использует порт по умолчанию для классического протокола MySQL, обычно 3306. Порт, к которому вы подключаетесь, должен поддерживать классический протокол MySQL. Например, если указанное вами подключение использует порт по умолчанию для протокола X Protocol 33060, подключение завершится ошибкой. Для получения дополнительной информации см. Раздел 4.3, «Подключения к MySQL Shell» и Порты MySQL Shell.
-
Начать в режиме SQL, принудительно используя протокол X Protocol для подключения. Если вы не укажете порт в качестве части подключения, при использовании этой опции MySQL Shell использует порт по умолчанию для протокола X Protocol, обычно 33060. Порт, к которому вы подключаетесь, должен поддерживать протокол X Protocol. Например, если указанное вами подключение использует порт по умолчанию для классического протокола MySQL 3306, подключение завершится ошибкой. Для получения дополнительной информации см. Раздел 4.3, «Подключения к MySQL Shell» и Порты MySQL Shell.
-
Создать SSH-туннель, обеспечивающий зашифрованное подключение к экземпляру сервера MySQL. Укажите URI для подключения к SSH-серверу в формате
[user@]host[:port], например:--ssh root@198.51.100.4:2222При использовании этой опции необходимо также указать опции
--user,--hostи--port, или URI, для подключения к экземпляру сервера MySQL. Сведения о подключениях через SSH-туннель из MySQL Shell см. в Разделе 4.3.7, «Использование SSH-туннеля». -
Укажите путь к файлу конфигурации SSH для подключения к SSH-серверу. Вы можете использовать опцию конфигурации MySQL Shell
ssh.configFileдля задания пользовательского файла в качестве значения по умолчанию, если эта опция не указана. Еслиssh.configFileне задано, по умолчанию используется стандартный файл конфигурации SSH~/.ssh/config. Если вы укажете--ssh-config-fileс пустым значением, файл по умолчанию, указанный вssh.configFile, игнорируется, и используется файл~/.ssh/configвместо него. -
Укажите путь к файлу идентификации для подключения к SSH-серверу. По умолчанию, если эта опция не указана, используется стандартный файл закрытого ключа в папке конфигурации SSH (
~/.ssh/id_rsa). -
--ssl*Опции, начинающиеся с
--ssl, указывают, подключаться ли к серверу с использованием SSL и где найти ключи и сертификаты SSL. Опции SSL для mysqlsh работают так же, как и опции SSL для MySQL Server, см. для получения дополнительной информации.mysqlsh принимает следующие опции SSL: , , , , , , , , , .
-
Отправлять SQL-запросы, которые вы вводите в режиме SQL MySQL Shell, в службу системного логирования операционной системы (
syslogв Unix или журнал событий Windows). Системная регистрация SQL-запросов происходит только при запуске MySQL Shell в интерактивном режиме, то есть либо при обычном запуске, либо при запуске с опцией--interactive. Она не происходит, если при запуске используются опции--executeили--fileдля выполненияmysqlshв пакетном режиме. Для получения дополнительной информации см. Раздел 13.3, «Системная регистрация SQL-запросов пользователя». -
Отображать результаты в формате, разделенном табуляцией, в интерактивном режиме. По умолчанию для этого режима используется формат таблицы. Эта опция является псевдонимом опции
--result-format=tabbed. -
Отображать результаты в формате таблицы в пакетном режиме. По умолчанию для этого режима используется формат, разделенный табуляцией. Эта опция является псевдонимом опции
--result-format=table. -
Создать подключение при запуске, указав параметры подключения в строке в стиле URI, как описано в .
-
--user=,user_name-uuser_nameИмя пользователя MySQL, используемое при подключении к серверу.
-
Активировать подробный вывод на консоль и указать уровень детализации. Значение — целое число в диапазоне от 0 до 4. 0 — не отображать сообщения, что является значением по умолчанию по умолчанию, если опция не указана. 1 — отображать сообщения об ошибках, предупреждения и информационные сообщения (это значение по умолчанию, если вы указываете опцию в командной строке без значения). 2, 3 и 4 добавляют сообщения отладки более высокого уровня. Для получения дополнительной информации см. Главу 13, Регистрация и отладка MySQL Shell.
-
--version,-VОтобразить версию MySQL Shell и выйти.
-
--vertical,-EОтобразить результаты вертикально, как и при использовании
\Gтерминатора для SQL-запроса. Эта опция является псевдонимом опции--result-format=vertical.
© 2025 Oracle
Licensed under the GPLv2 License.