Spec-Zone.ru › MySQL Shell 8.4

13.4 Настройка параметров MySQL Shell

Вы можете настроить MySQL Shell в соответствии со своими предпочтениями, например, для запуска определённого языка программирования или для предоставления вывода в определённом формате. Параметры конфигурации могут быть установлены только для текущей сессии, или параметры могут быть установлены постоянно путём сохранения изменений в файле конфигурации MySQL Shell. Доступна онлайн-помощь по всем параметрам. Вы можете настроить параметры, используя команду MySQL Shell \option, которая доступна во всех режимах MySQL Shell для запросов и изменения параметров конфигурации. В JavaScript и Python режимах используйте объект shell.options.

Допустимые параметры конфигурации

Следующие параметры конфигурации можно установить, используя либо команду \option, либо интерфейс сценариев shell.options:

optionName Значение по умолчанию Тип Эффект
autocomplete.nameCache true boolean Включить кэширование имени базы данных для автозаполнения.
batchContinueOnError false boolean (только для чтения) В режиме пакетной обработки SQL принудительно продолжать обработку, если обнаружена ошибка. Устанавливается в значение true путём добавления --force в командной строке. См. Приложение А, Справочник по командам MySQL Shell.
connectTimeout 10 float больше 0 Время в секундах ожидания подключения любой сессии, не использующей AdminAPI, прежде чем подключение будет прервано.
credentialStore.excludeFilters пусто массив Массив URL-адресов, для которых отключено автоматическое хранение паролей, поддерживаются символы подстановки * и ?.
credentialStore.helper Зависит от платформы строка Имя помощника по учетным данным, используемого для извлечения или хранения паролей. Поддерживается специальное значение default для использования системного помощника по умолчанию. Специальное значение >disabled< отключает хранилище учетных данных.
credentialStore.savePasswords prompt строка Управляет автоматическим хранением паролей, поддерживаемые значения: always, prompt или never.
dba.connectTimeout 5 float больше 0 Время в секундах ожидания подключения любой сессии, использующей AdminAPI, прежде чем подключение будет прервано.

dba.connectivityChecks

true

boolean

Определяет, выполняются ли проверки подключений для cluster.addInstance(), clusterSet.createReplicaCluster() и replicaSet.addInstance() с использованием определённой конфигурации SSL.

При возникновении ошибки SSL команда завершается, и возвращается ошибка.

dba.gtidWaitTimeout 60 целое число больше 0 Время в секундах ожидания применения транзакций GTID, когда это требуется операциями AdminAPI (см. Раздел 7.9, “Изменение или расформирование кластера InnoDB”).
logFile Путь к файлу журнала MySQL Shell. строка Отображает путь к файлу журнала MySQL Shell. (Только для чтения) Это значение может быть изменено только из командной строки с помощью опции --log-file=path/to/logfile.log. См. Приложение А, Справочник по командам MySQL Shell.
dba.logSql 0 целое число от 0 до 2 (Устарело в MySQL Shell 8.0.30. Используйте logSql вместо этого.) Вести логи SQL-заявлений, выполняемых операциями AdminAPI (см. Главу 12, Ведение журналов и отладка MySQL Shell).
dba.restartWaitTimeout 60 целое число больше 0 Время в секундах ожидания применения транзакций во время операции восстановления. Используйте для настройки более длительного таймаута, когда присоединяющемуся экземпляру необходимо восстановить большое количество данных. См. Раздел 7.4.6, “Использование MySQL Clone с InnoDB Cluster”).
defaultCompress false boolean Запросить сжатие информации, передаваемой между клиентом и сервером в каждой глобальной сессии. Затрагивает только подключения через классический протокол MySQL (см. Раздел 4.3.7, “Использование сжатых подключений”).
defaultMode None строка (sql, js или py) Режим, используемый при запуске MySQL Shell (SQL, JavaScript или Python).
devapi.dbObjectHandles true boolean Включить обработку имен таблиц и коллекций для объекта X DevAPI db.
history.autoSave false boolean Сохранить (true) или очистить (false) записи в истории кода MySQL Shell при выходе из приложения (см. Раздел 5.5, “История кода”).
history.maxSize 1000 целое число Максимальное количество записей для хранения в истории кода MySQL Shell.
history.sql.ignorePattern *SELECT*:SHOW* строка Строки, соответствующие этим шаблонам, не добавляются в историю кода MySQL Shell.
history.sql.syslog false boolean Отправлять интерактивные SQL-заявления в системную систему логирования операционной системы (см. Раздел 12.3, “Системное ведение журнала для пользовательских SQL-заявлений”).
logLevel info целое число от 1 до 8 или любое из none, internal, error, warning, info, debug, debug2, debug3 соответственно Установить уровень ведения журнала для приложения (см. Главу 12, Ведение журналов и отладка MySQL Shell).
logSql error строка (off, error, on, all) Вести журнал SQL-заявлений, выполняемых операциями MySQL Shell (см. Раздел 12.4, “Ведение журнала SQL MySQL Shell”). Эта опция ведения журнала не записывает пользовательские SQL-заявления, выполняемые интерактивно из режима SQL, только SQL-заявления, выполняемые операциями MySQL Shell. Записывает все SQL-заявления, кроме тех, которые определены в опциях logSql.ignorePatternUnsafe и logSql.ignorePattern.
  • off: никакие SQL-заявления не регистрируются.

  • error: регистрируются только SQL-заявления с сообщениями об ошибках, когда возникает ошибка.

  • on: регистрируются все SQL-заявления, кроме тех, что определены в logSql.ignorePatternUnsafe и logSql.ignorePattern.

  • all: регистрируются все SQL-заявления, кроме тех, что определены в logSql.ignorePatternUnsafe.

logSql.ignorePattern *SELECT*:*SHOW* строка Список шаблонов с разделителем двоеточие для исключения из SQL-заявлений, регистрируемых logSql (см. Раздел 12.4, “Ведение журнала SQL MySQL Shell”).
logSql.ignorePatternUnsafe *IDENTIFIED*:*PASSWORD* строка Список шаблонов заявлений с разделителем двоеточие для исключения из SQL-заявлений, регистрируемых logSql (см. Раздел 12.4, “Ведение журнала SQL MySQL Shell”).
mysqlPluginDir Каталог плагинов MySQL в MySQL Shell. То есть, каталог lib/mysql/plugins вашей установки MySQL Shell на платформах Linux и lib\mysql\plugins на платформах Windows. строка Установить постоянный путь к каталогу плагинов.
oci.configFile По умолчанию для вашей платформы. строка Установить постоянный путь к файлу конфигурации OCI CLI.
oci.profile DEFAULT строка Укажите профиль для использования в файле конфигурации OCI CLI.
pager None строка Использовать указанный внешний инструмент просмотра для отображения текста и результатов. Командная строка аргументов для инструмента может быть добавлена (см. Раздел 4.6, “Использование просмотра”).
passwordsFromStdin false boolean Считывать пароли из stdin вместо терминала.
resultFormat table строка (table, tabbed, vertical, json | json/pretty, ndjson | json/raw, json/array) Формат вывода по умолчанию для печати наборов результатов (см. Раздел 5.7, “Форматы вывода”).
sandboxDir Зависит от платформы строка Каталог песочницы. В Windows по умолчанию C:\Users\MyUser\MySQL\mysql-sandboxes, а в системах Unix по умолчанию $HOME/mysql-sandboxes.
showColumnTypeInfo false boolean В режиме SQL отображать метаданные столбцов для наборов результатов.
showWarnings true boolean В режиме SQL автоматически отображать SQL-предупреждения, если они есть.
ssh.bufferSize 10240 целое число больше 0 Размер буфера в байтах для передачи данных через SSH-туннель (см. Раздел 4.3.6, “Использование SSH-туннеля”).
ssh.configFile пусто строка Путь к пользовательскому файлу конфигурации SSH, который заменяет стандартный файл конфигурации SSH ~/.ssh/config по умолчанию для SSH-туннелирования (см. Раздел 4.3.6, “Использование SSH-туннеля”).
useWizards true boolean (Только для чтения) Указывает, включены ли по умолчанию интерактивные запросы и мастера.
verbose 0 целое число от 0 до 4 Включить подробный вывод в консоль и установить уровень детализации (см. Главу 12, Ведение журналов и отладка MySQL Shell).
Примечание

Значения строк чувствительны к регистру.

Параметры, указанные как “ТОЛЬКО ЧТЕНИЕ”, изменить нельзя.

Параметр outputFormat теперь устарел. Используйте resultFormat вместо него.

Использование команды \option

Команда MySQL Shell \option позволяет запросить и изменить параметры конфигурации во всех режимах, обеспечивая возможность конфигурирования из SQL-режима, помимо режимов JavaScript и Python.

Команда используется следующим образом:

  • \option -h, --help [filter] - вывести справку по параметрам, соответствующим filter.

  • \option -l, --list [--show-origin] - вывести список всех параметров. --show-origin дополняет список информацией о последнем изменении значения, возможные значения:

    • Command line

    • Compiled default

    • Configuration file

    • Environment variable

    • User defined

  • \option option_name - вывести текущее значение параметра.

  • \option [--persist] option_name value or name=value - установить значение параметра и, если указан --persist, сохранить его в файле конфигурации.

  • \option --unset [--persist] <option_name> - сбросить значение параметра до значения по умолчанию и, если указан --persist, удалить параметр из файла конфигурации MySQL Shell.

Примечание

Значение option_name и filter чувствительны к регистру.

См. Допустимые параметры конфигурации для списка возможных значений для option_name.

Использование интерфейса конфигурации shell.options

Объект shell.options доступен в режимах JavaScript и Python для изменения значений параметров MySQL Shell. Вы можете использовать определённые методы для конфигурации параметров или пары "ключ-значение" следующим образом:

MySQL JS > shell.options['history.autoSave']=1

В дополнение к интерфейсу "ключ-значение" доступны следующие методы:

  • shell.options[optionName]: выводит текущее значение параметра.

  • shell.options.set(optionName, value): устанавливает optionName в значение value для текущего сеанса, изменение не сохраняется в файл конфигурации.

  • shell.options.setPersist(optionName, value): устанавливает optionName в значение value для текущего сеанса и сохраняет изменение в файл конфигурации. В режиме Python метод называется shell.options.set_persist.

  • shell.options.unset(optionName): сбрасывает optionName до значения по умолчанию для текущего сеанса, изменение не сохраняется в файл конфигурации.

  • shell.options.unsetPersist(optionName): сбрасывает optionName до значения по умолчанию для текущего сеанса и сохраняет изменение в файл конфигурации. В режиме Python метод называется shell.options.unset_persist.

Имена параметров рассматриваются как строки и, как таковые, должны быть заключены в ' символы. См. Допустимые параметры конфигурации для списка возможных значений для optionName.

Используйте команды для конфигурации параметров MySQL Shell следующим образом:

MySQL JS > shell.options.set('history.maxSize', 5000)
MySQL JS > shell.options.setPersist('useWizards', 'true')
MySQL JS > shell.options.setPersist('history.autoSave', 1)

Верните параметры к значениям по умолчанию следующим образом:

MySQL JS > shell.options.unset('history.maxSize')
MySQL JS > shell.options.unsetPersist('useWizards')

Файл конфигурации

Файл конфигурации MySQL Shell хранит значения параметров, чтобы обеспечить их сохранение между сеансами. Значения считываются при запуске, а при использовании функции сохранения, настройки сохраняются в файле конфигурации.

Путь к файлу конфигурации — путь к пользовательской конфигурации, имя файла — options.json. Предполагая, что путь к пользовательской конфигурации по умолчанию не был изменён путём определения переменной окружения MYSQLSH_USER_CONFIG_HOME, путь к файлу конфигурации:

  • в Windows %APPDATA%\MySQL\mysqlsh

  • в Unix ~/.mysqlsh, где ~ представляет домашний каталог пользователя.

Файл конфигурации создаётся при первом изменении параметра конфигурации. Этот файл поддерживается MySQL Shell и не должен редактироваться вручную. Если при запуске в файле конфигурации обнаружится неизвестный параметр или параметр с неверным значением, MySQL Shell завершится с ошибкой.

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

Spec-Zone.ru

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