Spec-Zone.ru › MySQL Shell 8.4

A.1 mysqlsh — MySQL Shell

MySQL Shell — это расширенный командный интерфейс и среда кодирования для MySQL. Помимо SQL, MySQL Shell также предлагает возможности сценариев для JavaScript и Python. Дополнительную информацию об использовании MySQL Shell см. в MySQL Shell 8.4. Если MySQL Shell подключен к серверу MySQL через X Protocol, можно использовать X DevAPI для работы с реляционными и документоориентированными данными, см. . MySQL Shell включает AdminAPI, позволяющий работать с развертываниями InnoDB Cluster, InnoDB ClusterSet и InnoDB ReplicaSet; см. главу 6, MySQL AdminAPI.

Многие из описанных здесь параметров связаны с соединениями между MySQL Shell и экземпляром сервера MySQL. Более подробную информацию см. в разделе 4.3 «Соединения MySQL Shell».

mysqlsh поддерживает следующие командные параметры.

Таблица A.1 Параметры mysqlsh

Таблица A.1 Параметры mysqlsh
Имя параметра Описание Устаревший
-- Начало интеграции командной строки API
--auth-method Метод аутентификации
--authentication-oci-client-config-profile Профиль в файле конфигурации OCI
--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
--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]  -- object method [arguments]
    

    Подробнее см. Раздел 5.8, «Интеграция командной строки API».

  • --auth-method=method

    Метод аутентификации для использования для учетной записи. Зависит от используемого плагина аутентификации для пароля учетной записи. Для подключений 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=preferred SSL-соединение не гарантируется, поэтому подключение с этим параметром не считается 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».

  • --cluster

    Гарантирует, что целевой сервер является частью InnoDB Cluster и, если это так, устанавливает глобальную переменную cluster в объект кластера.

  • --column-type-info

    В режиме 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.7, «Использование сжатых подключений».

  • --compression-algorithms=value

    Формат командной строки --compression-algorithms=value
    Тип Установить
    Значение по умолчанию uncompressed
    Допустимые значения

    zlib

    zstd

    uncompressed

    Разрешенные алгоритмы сжатия для подключений к серверу.

    См. Раздел 4.3.7.1, «Управление сжатием для MySQL Shell».

  • --compression-level=level

    Формат командной строки --zstd-compression-level=#
    Тип Целое число

    Уровень сжатия для подключений к серверу, использующих любой алгоритм сжатия по протоколу X или только для zstd при классических подключениях.

    См. Раздел 4.3.7.1, «Управление сжатием для MySQL Shell».

  • --zstd-compression-level=level

    Формат командной строки --zstd-compression-level=#
    Тип Целое число

    Уровень сжатия, используемый для подключений к серверу, использующих алгоритм сжатия zstd. Допустимые значения — от 1 до 22, при этом большие значения указывают на увеличение уровня сжатия. Уровень сжатия по умолчанию zstd равен 3. Настройка уровня сжатия не влияет на подключения, не использующие сжатие zstd.

    См. Раздел 4.3.7.1, «Управление сжатием для MySQL Shell».

  • --connect-timeout=ms

    Настраивает время ожидания MySQL Shell (в миллисекундах) для установления глобальной сессии, указанной через аргументы командной строки.

  • --credential-store-helper=helper

    Помощник Secret Store, который необходимо использовать для хранения и извлечения паролей. См. Раздел 4.4, «Подключаемый хранилище паролей».

  • --database=name, -D name

    База данных по умолчанию для использования. Это псевдоним для --schema.

END_OF_DOCUMENT_MARKER ```
  • --dba=enableXProtocol

    Устарело в MySQL Shell 8.4.0.

    Включить плагин X при подключении к серверу MySQL 5.7, чтобы вы могли использовать подключения по протоколу X для последующих подключений. Требуется подключение с использованием классического протокола MySQL. Неактуально для серверов MySQL 8.0, у которых плагин X включён по умолчанию.

  • --dba-log-sql[=0|1|2]

    Вести журнал SQL-запросов, выполняемых операциями AdminAPI (исключая операции в песочнице). По умолчанию этот тип запросов не записывается в файл журнала приложения MySQL Shell или не выводится в консоль в виде подробного вывода, даже при установке опций --log-level и --verbose. Значение опции — целое число в диапазоне от 0 до 2. 0 — не вести журнал и не отображать этот тип запросов, что является поведением по умолчанию, если опция не указана. 1 — записывать в журнал SQL-запросы, выполняемые операциями AdminAPI, за исключением запросов и (это значение по умолчанию, если опция указана в командной строке без значения). 2 — записывать в журнал SQL-запросы, выполняемые обычными операциями AdminAPI, полностью, включая запросы и . Дополнительные сведения см. в Главе 12, Ведение журнала и отладка 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, -e command

    Выполнить команду с использованием текущего активного языка и выйти. Эта опция взаимоисключающая с опцией --file=file_name.

  • --file=file_name, -f file_name

    Указывает файл для обработки в пакетном режиме. Любые опции, указанные после этого, используются как аргументы обрабатываемого файла.

  • --force

    Продолжить обработку в режимах SQL и пакетном режиме, даже если произошли ошибки.

  • --histignore=strings

    Указывает строки, которые не добавляются в историю MySQL Shell. Строки разделяются двоеточием. Сопоставление нечувствительно к регистру, и можно использовать подстановочные знаки * и ?. По умолчанию игнорируемые строки указаны как “*IDENTIFIED*:*PASSWORD*”. См. Раздел 5.5, «История кода».

  • --host=host_name, -h host_name

    Подключается к серверу MySQL на указанном хосте. В Windows, если вы укажете --host=. или -h . (указав имя хоста как точку), MySQL Shell подключается через именованную трубу по умолчанию (именованная труба MySQL), или через альтернативную именованную трубу, которую вы укажете с помощью опции --socket.

  • --get-server-public-key

    Эквивалент MySQL Shell .

    Если --server-public-key-path=file_name задан и указывает на действительный файл с открытым ключом, он имеет приоритет над --get-server-public-key.

    Важно

    Поддерживается только при подключении с классическим протоколом MySQL.

    См. .

  • --interactive[=full], -i

    Эмулирует интерактивный режим в пакетном режиме.

  • --js, --javascript

    Запустить в режиме JavaScript.

  • --json[={off|pretty|raw}]

    Управляет оболочкой JSON для вывода MySQL Shell из этого сеанса. Эта опция предназначена для взаимодействия MySQL Shell с другими программами, например, в рамках тестирования. Для изменения вывода результатов запросов для использования формата JSON см. --result-format.

    Когда опция --json не имеет значения или имеет значение pretty, вывод генерируется в формате JSON с красивым отступом. При значении raw вывод генерируется в формате JSON без отступов. В любом из этих случаев опция --result-format и её псевдонимы, а также значение конфигурационной опции MySQL Shell resultFormat игнорируются. При значении off оболочка JSON не используется, и наборы результатов выводятся как обычно в формате, указанном опцией --result-format, или конфигурационной опцией resultFormat.

  • --log-file=path

    Изменить расположение файла журнала приложения MySQL Shell mysqlsh.log для этого экземпляра MySQL Shell. По умолчанию файл журнала приложения находится в пути конфигурации пользователя, который по умолчанию равен %APPDATA%\MySQL\mysqlsh\ в Windows или ~/.mysqlsh/ в Unix. Вы можете переопределить путь конфигурации пользователя для всех экземпляров MySQL Shell, определив переменную среды MYSQLSH_USER_CONFIG_HOME. Опция --log-file относится к отдельному экземпляру MySQL Shell, что означает, что разные экземпляры могут записывать в разные места.

  • --log-level=N

    Изменить уровень ведения журнала для файла журнала приложения MySQL Shell mysqlsh.log или отключить ведение журнала в файл. Опция требует значения, которое может быть целым числом в диапазоне от 1 до 8 или одним из следующих значений: none, internal, error, warning, info, debug, debug2 или debug3. Указание 1 или none отключает ведение журнала в файл журнала приложения. Уровень 5 (info) является значением по умолчанию, если вы не укажете эту опцию. См. Главе 12, Ведение журнала и отладка MySQL Shell.

  • -ma

    Устарело в версии 8.0.13 MySQL Shell. Автоматически пытается использовать протокол X для создания подключения сеанса и переходит на классический протокол MySQL, если протокол X недоступен.

  • --mysql, --mc

    Устанавливает глобальный сеанс, созданный при запуске, для использования подключения по классическому протоколу MySQL.

  • --mysql-plugin-dir=path

    Устанавливает неперсистентный путь к плагинам аутентификации на стороне клиента, переопределяя значение настройки 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.

  • --name-cache

    Включить автоматическую загрузку имён таблиц на основе активной схемы по умолчанию.

  • --no-name-cache, -A

    Отключить загрузку имён таблиц для автодополнения на основе активной схемы по умолчанию и объекта DevAPI db. Используйте \rehash для перезагрузки информации о именах вручную.

  • --no-password

    При подключении к серверу, если у пользователя есть учётная запись без пароля (что небезопасно и не рекомендуется), или если используется аутентификация по данным сокета (для подключений по сокетам Unix), необходимо использовать --no-password, чтобы явно указать, что пароль не предоставляется, и запрос пароля не требуется.

  • --no-wizard, -nw

    Отключает интерактивные мастера, предоставляемые операциями, такими как создание соединений, dba.configureInstance(), Cluster.rebootClusterFromCompleteOutage() и т. д. Используйте этот параметр, когда вы хотите выполнить скрипт MySQL Shell и не отображать интерактивные запросы. Дополнительную информацию см. в разделе 5.6 «Выполнение пакетного кода» и разделе 5.8 «Интеграция командной строки API».

  • --oci-config-file=pathToConfigFile

    Настраивает путь к файлу конфигурации OCI для использования с аутентификацией OCI для подключения к системе БД HeatWave Service.

    Значение, заданное здесь, переопределяет значение, заданное в параметре oci.configFile.

    Для получения дополнительной информации см. .

  • --authentication-oci-client-config-profile=profileName

    Настраивает профиль в файле конфигурации OCI для использования с аутентификацией OCI для подключения к системе БД HeatWave Service.

    Значение, заданное здесь, переопределяет значение, заданное в параметре oci.profile.

    Для получения дополнительной информации см. .

  • --pager=name

    Внешний инструмент вывода страниц, используемый MySQL Shell для отображения текстового вывода для операторов, выполняемых в SQL-режиме, и других выбранных команд, таких как онлайн-справка. Если вы не зададите инструмент вывода страниц, будет использован инструмент, указанный в переменной среды PAGER. См. раздел 4.6 «Использование инструмента вывода страниц».

  • --passwords-from-stdin

    Считывать пароль из стандартного ввода, а не из терминала. Этот параметр не влияет на другие параметры паролей, такие как запрос пароля.

  • --password[=password], -ppassword

    Пароль, используемый при подключении к серверу. Максимальная длина пароля, принимаемая для подключения к MySQL Shell, составляет 128 символов.

    • --password=password (-ppassword) со значением предоставляет пароль, который будет использоваться для подключения. С длинной формой --password= необходимо использовать знак равенства, а не пробел между параметром и его значением. С короткой формой -p пробел между параметром и его значением не должен быть. Если пробел используется в любом случае, значение не интерпретируется как пароль и может быть интерпретировано как другой параметр подключения.

      Указание пароля в командной строке следует считать небезопасным. См. . Вы можете использовать файл параметров, чтобы избежать ввода пароля в командной строке.

    • --password без значения и без знака равенства или -p без значения запрашивает ввод пароля.

    • --password= с пустым значением имеет тот же эффект, что и --no-password, который указывает, что пользователь подключается без пароля. При подключении к серверу, если у пользователя есть учетная запись без пароля, что небезопасно и не рекомендуется, или если используется аутентификация по удостоверениям сокета (для подключений через сокеты Unix), вы должны использовать один из этих методов, чтобы явно указать, что пароль не предоставляется, и запрос пароля не требуется.

  • --password1[=password]

    --password1, --password2 и --password3 — пароли, используемые для учетных записей, требующих многофакторной аутентификации. Вы можете указать до трех паролей. Параметры работают так же, как параметр --password, а --password1 обрабатывается как эквивалент этого параметра. Вы можете указать значение пароля после параметра в командной строке (что небезопасно) или, если параметры заданы без значения пароля, MySQL Shell запрашивает у пользователя каждый пароль по очереди. Поддерживается только для подключений к классическому протоколу MySQL, выполненных с использованием аргументов командной строки.

  • --password2[=password]

    Пароль для второй аутентификации для учетных записей, требующих многофакторной аутентификации. См. описание параметра --password1.

  • --password3[=password]

    Пароль для третьей аутентификации для учетных записей, требующих многофакторной аутентификации. См. описание параметра --password1.

  • --plugin-authentication-kerberos-client-mode={SSPI|GSSAPI}

    Формат командной строки --plugin-authentication-kerberos-client-mode
    Тип Строка
    Значение по умолчанию SSPI
    Допустимые значения

    SSPI

    GSSAPI

    На платформах 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
    Тип Булево
    Значение по умолчанию false

    Определяет, как утверждения отправляются на сервер в случае, если для данного идентификатора RP (уникальное имя, присвоенное серверу-получателю, который является сервером MySQL) хранится более одной обнаруживаемой учетной записи. Если устройство FIDO2 содержит несколько постоянных ключей для данного идентификатора RP, этот параметр позволяет пользователю выбрать ключ, который будет использоваться для утверждения. Он предоставляет два возможных значения, которые пользователь клиента может установить. Значение по умолчанию — false. Если установлено значение false, запрос подписывается всеми доступными учетными данными для данного идентификатора RP, и все подписи отправляются на сервер. Если установлено значение true, пользователю предлагается выбрать учетные данные, которые будут использоваться для подписи.

    Примечание

    Этот параметр не имеет эффекта, если устройство не поддерживает функцию постоянного ключа.

    Для получения дополнительной информации см. .

  • --port=port_num, -P port_num

    Номер порта TCP/IP для подключения. По умолчанию порт 33060.

  • --py, --python

    Запуск в Python-режиме.

  • --pyc=pythonCommand, -c

    Выполнение Python-команды и выход. Все параметры, указанные после этого, обрабатываются как аргументы обработанной команды.

  • --pym

    Выполнение указанного Python-модуля как скрипта в Python-режиме MySQL Shell. --pym работает так же, как и Python-параметр командной строки -m.

  • --quiet-start[=1|2]

    Запуск без вывода вводной информации. MySQL Shell обычно выводит информацию о продукте, информацию о сеансе (например, схему по умолчанию и идентификатор подключения), сообщения об ошибках и любые ошибки, возвращенные во время запуска и подключения. При указании --quiet-start без значения или со значением 1 информация о продукте MySQL Shell не выводится, но выводится информация о сеансе, сообщения об ошибках и ошибки. При значении 2 выводятся только ошибки.

  • --redirect-primary

    Гарантирует, что целевой сервер является частью кластера InnoDB или InnoDB ReplicaSet, и если он не является основным, находит основной и подключается к нему. MySQL Shell завершается с ошибкой, если выполняется любое из следующих условий при использовании этого параметра:

    • Не указан ни один экземпляр

    • В кластере InnoDB репликация групп не активна

    • Метаданные кластера InnoDB не существуют

    • Нет кворума

  • --register-factor=value

    Формат командной строки --register-factor=value
    Тип String

    Фактор или факторы, для которых должна быть выполнена регистрация устройства 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 user factor INITIATE REGISTRATION
    

    Утверждение возвращает результирующий набор, содержащий 32-байтный вызов, имя пользователя и идентификатор доверенной стороны (см. ).

    Шаг завершения регистрации выполняет это утверждение:

    ALTER USER user factor FINISH REGISTRATION SET CHALLENGE_RESPONSE AS 'auth_string'
    

    Утверждение завершает регистрацию и отправляет на сервер следующую информацию в качестве части auth_string: данные аутентификатора, необязательный сертификат аттестации в формате X.509 и подпись.

    Этапы инициации и регистрации должны выполняться в одном соединении, поскольку вызов, полученный клиентом на этапе инициации, сохраняется в обработчике клиентского соединения. Регистрация завершится неудачей, если шаг регистрации будет выполнен другим соединением. Параметр выполняет как этапы инициации, так и регистрации, что позволяет избежать описанного выше сценария сбоя и предотвращает необходимость ручного выполнения утверждений инициации и регистрации.

    Параметр --register-factor доступен только для клиента mysql. Другие программы клиента MySQL его не поддерживают.

    Для получения дополнительной информации см. .

  • --replicaset

    Гарантирует, что целевой сервер принадлежит к InnoDB ReplicaSet, и если это так, заполняет глобальную переменную rs InnoDB ReplicaSet. Затем вы можете администрировать InnoDB ReplicaSet, используя глобальную переменную rs, например, выполнив rs.status().

  • --redirect-secondary

    Гарантирует, что целевой сервер является частью кластера InnoDB с одним основным сервером или InnoDB ReplicaSet, и если он не является вторичным, находит вторичный и подключается к нему. MySQL Shell завершается с ошибкой, если выполняется любое из следующих условий при использовании этого параметра:

    • В кластере InnoDB репликация групп не активна

    • Метаданные кластера InnoDB не существуют

    • Нет кворума

    • Кластер не является кластером с одним основным сервером и работает в многоосновном режиме

    • Нет доступного вторичного сервера, например, потому что существует только один экземпляр сервера

  • --result-format={table|tabbed|vertical|json|json/pretty|ndjson|json/raw|json/array}

    Устанавливает значение параметра конфигурации оболочки MySQL resultFormat для этого сеанса. Форматы следующие:

    таблица

    Значение по умолчанию для интерактивного режима, если иное значение не было установлено постоянно для параметра конфигурации resultFormat в файле конфигурации, в этом случае применяется это значение по умолчанию. Можно также использовать псевдоним --table.

    с табуляцией

    Значение по умолчанию для пакетного режима, если иное значение не было установлено постоянно для параметра конфигурации resultFormat в файле конфигурации, в этом случае применяется это значение по умолчанию. Можно также использовать псевдоним --tabbed.

    вертикальный

    Создает вывод, эквивалентный терминатору \G для запроса SQL. Можно также использовать псевдонимы --vertical или -E.

    json или json/pretty

    Создает отформатированный JSON.

    ndjson или json/raw

    Создает необработанный JSON, разделенный символами новой строки.

    json/array

    Создает необработанный JSON, заключенный в массив JSON.

    Если используется параметр командной строки --json для активации оборачивания JSON для вывода для сеанса, параметр --result-format и его псевдонимы и значение параметра конфигурации resultFormat игнорируются.

  • --save-passwords={always|prompt|never}

    Управляет тем, автоматически ли пароли хранятся в хранилище секретов. always означает, что пароли всегда хранятся, если они еще не находятся в хранилище или URL-адрес сервера не исключен фильтром. never означает, что пароли никогда не хранятся. prompt, значение по умолчанию, означает, что пользователей спрашивают, следует ли хранить пароль или нет. См. Раздел 4.4, «Подключаемое хранилище паролей».

  • --schema=name, -D name

    Схема по умолчанию для использования.

  • --server-public-key-path=file_name

    Эквивалент MySQL Shell для .

    Если указан --server-public-key-path=file_name и указывает на допустимый файл открытого ключа, он имеет приоритет над --get-server-public-key.

    Важно

    Поддерживается только с соединениями классического протокола MySQL.

    См. плагин caching_sha2_password .

  • --show-warnings={true|false}

    Когда указано значение true, которое является значением по умолчанию, в режиме SQL MySQL Shell отображает предупреждения после каждого оператора SQL, если таковые имеются. Если указано значение false, предупреждения не отображаются.

  • --socket[=path], -S [path]

    В Unix, когда указан путь, путь — это имя файла сокета Unix, который будет использоваться для соединения. Если вы указываете --socket без значения и без знака равенства или -S без значения, используется файл сокета Unix по умолчанию для соответствующего протокола.

    В Windows путь — это имя именованного канала, который будет использоваться для соединения. Имя канала нечувствительно к регистру. В Windows вы должны указать путь, и параметр --socket доступен только для сеансов классического протокола MySQL.

    Вы не можете указать сокет, если указываете порт или имя хоста, отличное от localhost в Unix или точки (.) в Windows.

  • --sql

    Запуск в режиме SQL, автоматическое определение используемого протокола, если он не указан как часть информации о соединении. Если протокол не указан, по умолчанию используется соединение X Protocol, а затем — соединение классического протокола MySQL. Чтобы принудительно использовать соединение для использования определенного протокола, см. параметры --sqlx или --sqlc. В качестве альтернативы укажите протокол для использования как часть строки соединения, подобной URI, или используйте параметр --port. См. Раздел 4.3, «Подключения MySQL Shell» и Порты MySQL Shell. для получения дополнительной информации.

  • --sqlc

    Начать в режиме SQL, принуждая подключение использовать классический протокол MySQL, например, для использования MySQL Shell с сервером, не поддерживающим протокол X. Если вы не указываете порт в качестве части подключения, при использовании этого параметра MySQL Shell использует стандартный порт классического протокола MySQL, который обычно равен 3306. Порт, к которому вы подключаетесь, должен поддерживать классический протокол MySQL. Например, если подключение, которое вы указываете, использует стандартный порт протокола X 33060, подключение завершается с ошибкой. Для получения дополнительной информации см. Раздел 4.3, «Подключения MySQL Shell» и Порты MySQL Shell.

  • --sqlx

    Начать в режиме SQL, принуждая подключение использовать протокол X. Если вы не указываете порт в качестве части подключения, при использовании этого параметра MySQL Shell использует стандартный порт протокола X, который обычно равен 33060. Порт, к которому вы подключаетесь, должен поддерживать протокол X. Например, если указанное вами подключение использует стандартный порт классического протокола MySQL 3306, подключение завершается с ошибкой. Для получения дополнительной информации см. Раздел 4.3, «Подключения MySQL Shell» и Порты MySQL Shell.

  • --ssh=str

    Создать SSH-туннель, который обеспечивает зашифрованное подключение к экземпляру сервера MySQL. Укажите URI для подключения к SSH-серверу в формате [user@]host[:port], например:

    --ssh root@198.51.100.4:2222
    

    При использовании этого параметра необходимо также указать параметры --user, --host и --port или URI для подключения к экземпляру сервера MySQL. Сведения о подключениях через SSH-туннель из MySQL Shell см. в Разделе 4.3.6, «Использование SSH-туннеля».

  • --ssh-config-file=path

    Укажите путь к файлу конфигурации SSH для подключения к SSH-серверу. Вы можете использовать параметр конфигурации MySQL Shell ssh.configFile для установки пользовательского файла в качестве значения по умолчанию, если этот параметр не указан. Если ssh.configFile не установлен, значением по умолчанию является стандартный файл конфигурации SSH ~/.ssh/config. Если вы укажите --ssh-config-file со значением null, файл по умолчанию, указанный в ssh.configFile, игнорируется, и используется файл ~/.ssh/config вместо него.

  • --ssh-identity-file=path

    Укажите путь к файлу идентификации для подключения к SSH-серверу. Значение по умолчанию, если этот параметр не указан, — это стандартный файл закрытого ключа в папке конфигурации SSH (~/.ssh/id_rsa).

  • --ssl*

    Параметры, начинающиеся с --ssl, определяют, подключаться ли к серверу с использованием SSL, и указывают, где найти ключи и сертификаты SSL. Параметры SSL mysqlsh работают так же, как и параметры SSL для сервера MySQL, см. для получения дополнительной информации.

    mysqlsh принимает следующие параметры SSL: , , , , , , , , , .

  • --syslog

    Отправлять SQL-запросы, которые вы выполняете в режиме SQL MySQL Shell, в систему регистрации операционной системы (syslog в Unix или журнал событий Windows). Системная регистрация SQL-запросов происходит только при запуске MySQL Shell в интерактивном режиме, либо при обычном запуске, либо при запуске с параметром --interactive. Она не выполняется, если параметры --execute или --file используются при запуске для выполнения mysqlsh в пакетном режиме. Для получения дополнительной информации см. Раздел 12.3, «Системная регистрация пользовательских SQL-запросов».

  • --tabbed

    Отображать результаты в формате, разделенном табуляцией, в интерактивном режиме. По умолчанию в этом режиме используется табличный формат. Этот параметр является псевдонимом для параметра --result-format=tabbed.

  • --table

    Отображать результаты в табличном формате в пакетном режиме. По умолчанию используется формат, разделенный табуляцией. Этот параметр является псевдонимом для параметра --result-format=table.

  • --uri=str

    Создать подключение при запуске, указав параметры подключения в строке в формате URI, как описано в .

  • --user=user_name, -u user_name

    Имя пользователя MySQL, используемое при подключении к серверу.

  • --verbose[=0|1|2|3|4]

    Включить подробный вывод в консоль и указать уровень детализации. Значение — целое число в диапазоне от 0 до 4. 0 — не отображает сообщения, что является значением по умолчанию, когда параметр не указан. 1 отображает сообщения об ошибках, предупреждения и информационные сообщения (это значение по умолчанию, если вы указываете параметр в командной строке без значения). 2, 3 и 4 добавляют более высокие уровни отладочных сообщений. Для получения дополнительной информации см. Главу 12, Регистрация и отладка MySQL Shell.

  • --version, -V

    Отобразить версию MySQL Shell и завершить работу.

  • --vertical, -E

    Отобразить результаты вертикально, как при использовании \G терминатора для SQL-запроса. Этот параметр является псевдонимом для параметра --result-format=vertical.

© 2025 Oracle
Licensed under the GPLv2 License.
https://docs.oracle.com/cd/E17952_01/mysql-shell-8.4-en/mysqlsh.html

Spec-Zone.ru

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