RussianLDP Рейтинг@Mail.ru
WebMoney: 
WMZ Z294115950220 
WMR R409981405661 
WME E134003968233 
Visa 
4274 3200 2453 6495 

Глава 3. Начало работы с MySQL Shell

Эта секция описывает, как начать работу с MySQL Shell, объяснив, как соединиться с сервером MySQL и выбрать тип сессии.

3.1. Соединения MySQL Shell

MySQL Shell может соединиться с MySQL Server, используя X Protocol и классический протокол MySQL. Можно формировать экземпляр сервера MySQL, с которым работает MySQL Shell, следующими способами:

  • Когда вы запускаете MySQL Shell, используя параметры команды. Посмотрите раздел 3.1.1.

  • Когда MySQL Shell работает с использованием команды \connect, см. раздел 5.1.
  • В режиме Python или JavaScript, используя метод shell.connect(' instance').

Эти различные способы соединиться с сервером MySQL понимают определение соединения как:

  • Строка типа URI, например, myuser@example.com:3306/main-schema. См. Connecting using a URI String.

  • Как пары ключ/значение, например, {user:'myuser', host:'example.com', port:3306, schema:'main-schema'}. Эти пары ключ/значение поставляются на языке естественных конструкций для внедрения. Это означает, что можно поставлять параметры связи, используя пары ключ/значение в качестве объекта JSON в JavaScript, или используя пары ключ/значение в словаре в Python. См. Connecting using Key-value Pairs.

Независимо от того, как вы соединяетесь, важно понять, как пароли обработаны MySQL Shell. По умолчанию связи, как предполагается, требуют пароля. Пароль (у которого есть максимальная длина 128 знаков) требуют при приглашении ко входу в систему, его можно сохранить, используя раздел 3.2. Если пользователь безпарольную учетную запись, или если применена идентификация сокета (например, используя сокетные соединения Unix), необходимо явно определить, что никакой пароль не обеспечивается, и запрос пароля не требуется. Чтобы сделать это, используйте один из следующих методов:

  • Если вы соединяетесь с использованием последовательности типа URI, поместите : после user в строку типа URI, но не определяйте пароль после него.

  • Если вы соединяетесь с использованием пары ключ/значение, обеспечьте использование пустой строки '' после ключа password.
  • Если вы соединяетесь, используя отдельные параметры, укажите опцию --no-password или --password= с пустым значением.

Если вы не определяете параметры для связи, следующие умолчания используются:

  • user установлен к имени пользователя системы.

  • host установлен в localhost.
  • port при соединении по X Protocol установлен в X Plugin port 33060 или в 3306 при соединении по обычному протоколу MySQL.

Если связь с сервером потеряна, MySQL Shell не пытается снова соединиться автоматически. Используйте команду \reconnect, чтобы заставить MySQL Shell попробовать несколько попыток повторного соединения за текущую глобальную сессию с ранее поставляемыми параметрами.

Чтобы настроить использование перерыва связи, применяется параметр связи connect-timeout. Значение connect-timeout должно быть неотрицательным целым числом, которое определяет период времени в миллисекундах. Значение по умолчанию 10000 миллисекунд или 10 секунд. Например:

// Decrease the timeout to 2 seconds.
mysql-js> \connect user@example.com?connect-timeout=2000
// Increase the timeout to 20 seconds
mysql-js> \connect user@example.com?connect-timeout=20000

Чтобы отключить перерыв устанавливают значение connect-timeout = 0, означая, что клиент ждет до зависящего от платформы тайм-аута сокета.

Чтобы позволить сжатие для связи, используйте параметр связи compression, например:

mysql-js> \connect user@example.com?compression=true

Когда установлено в true (или 1), этот выбор позволяет сжатие всей информации, посланной между клиентом и сервером. По умолчанию сжатие отключено (false или 0). Если вы соединяетесь с использованием параметров команды, эквивалентный параметр --compress (-C). Сжатие доступно для связей MySQL Shell, используя только классический протокол MySQL. Можно установить опцию MySQL Shell defaultCompress, чтобы позволить сжатие для каждой глобальной сессии. Команда MySQL Shell \status показывает, позволено ли сжатие для сессии.

В Unix MySQL Shell по умолчанию использует сокеты Unix, когда следующие условия выполнены:

  • Порт TCP не определяется.

  • Имя хоста не определяется или это равно localhost.
  • Опция --socket или -S указана.

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

Если имя хоста определяется, но это не localhost, соединение по протоколу TCP устанавливается. В этом случае, если порт TCP не определяется, значение по умолчанию 3306 используется.

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

  • Если вы соединяетесь с использованием последовательности типа URI, определите user@.

  • Если вы соединяетесь с использованием пары ключ/значение, определите {"host": "."}
  • Если вы соединяете, используя отдельные параметры, определите --host=. или -h .

По умолчанию, имя канала MySQL используется. Можно определить альтернативный именованный канал, используя опцию --socket или как часть URI-последовательности.

В последовательностях типа URI путь к файлу сокета Unix или именованному каналу Windows должен или быть закодирован, используя кодирование процента или окружен круглыми скобками, что устраняет необходимость кодировать процентами такие знаки, как общий разделитель каталогов (/). Если путь к файлу сокета Unix включен в последовательность типа URI как часть строки запроса, ведущий слэш должен быть закодированным процентом, но если это заменяет имя хоста, ведущий слэш не должен быть закодирован процентом, как показано в следующих примерах:

mysql-js> \connect user@localhost?socket=%2Ftmp%2Fmysqld.sock
mysql-js> \connect user@localhost?socket=(/tmp/mysqld.sock)
mysql-js> \connect user@/tmp%2Fmysqld.sock
mysql-js> \connect user@(/tmp/mysqld.sock)

Только в Windows именованный канал должен предварен символами \\.\ а также быть или закодированным, используя кодирование процента, или окружен круглыми скобками, как показано в следующих примерах:

(\\.\named:pipe)
\\.\named%3Apipe

В Windows, если одна или более сессий MySQL Shell связаны с экземпляром MySQL Server, используя именованный канал и необходимо закрыть сервер, необходимо сначала закрыть сессии MySQL Shell. Сессии, которые все еще связаны таким образом, могут заставить сервер висеть во время процедуры закрытия. Если это действительно произойдет, выйдите из MySQL Shell, и сервер продолжит процедуру парковки.

3.1.1. Соединение, используя отдельные параметры

В дополнение к определению параметров связи, используя путь, также возможно определить данные о связи когда запускается MySQL Shell, используя отдельные параметры команды для каждого значения. Полный перечень опций приведен в приложении A.1.

Используйте связанные параметры связи:

Варианты команды ведут себя так же, как опции клиента mysql, см. Connecting to the MySQL Server.

Используйте следующие параметры, чтобы управлять, как пароль обеспечивается для связи:

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

    Указание пароля в командной строке опасно. См. End-User Guidelines for Password Security. Можно использовать файл опций, чтобы избежать задавать пароль в командной строке.

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

Чтобы позволить сжатие для сессии, определите опцию --compress (-C). Этот параметр позволяет сжатие всей информации, посланной между клиентом и сервером. Сжатие доступно для связей MySQL Shell, используя только классический протокол MySQL. В последовательности типа URI эквивалентный параметр compression. Команда MySQL Shell \status покажет, позволено ли сжатие для сессии.

Когда параметры определяются несколькими способами, например, используя --uri и определение отдельных параметров, например, --user, следующие правила применяются:

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

  • Если отдельные аргументы соединения и --uri определяются, значение --uri взято в качестве основы, а значения отдельных аргументов отвергают определенный компонент основного URI.

    Например, чтобы отвергнуть user из основного URI:

    shell> mysqlsh --uri user@localhost:33065 --user otheruser
    

Следующие примеры показывают, как использовать параметры команды, чтобы определить связи. Установить связь X-протокола с указанным пользователем по порту 33065:

shell> mysqlsh --mysqlx -u user -h localhost -P 33065

Попытка установить классическую связь протокола MySQL с указанным пользователем со сжатием:

shell> mysqlsh --mysql -u user -h localhost -C

3.1.2. Использование зашифрованных соединений

Использование зашифрованных соединений возможно, когда соединение по TLS (иногда называемый SSL) позволено сервером MySQL. Большая часть конфигурации MySQL Shell основана на вариантах, используемых сервером MySQL, см. Using Encrypted Connections.

Чтобы защищенное соединение при запуске MySQL Shell, используйте следующие опции команды:

  • --ssl: Устарело. Надо использовать --ssl-mode. Это позволяет или отключает зашифрованные соединения.

  • --ssl-mode: Определяет состояние защиты связи с сервером.
  • --ssl-ca= filename: Путь к файлу в формате PEM, который содержит список доверенных сертификатов SSL.
  • --ssl-capath= directory: Путь к каталогу, который содержит доверенные сертификаты SSL в формате PEM.
  • --ssl-cert= filename: Название файла сертификата SSL в формате PEM, чтобы использовать для установления зашифрованной связи.
  • --ssl-cipher= name: Название шифра SSL, чтобы использовать для установления зашифрованной связи.
  • --ssl-key= filename: Название файла ключей SSL в формате PEM, чтобы использовать для установления зашифрованной связи.
  • --ssl-crl= name: Путь к файлу, содержащему списки аннулированных сертификатов в формате PEM.
  • --ssl-crlpath= directory: Путь к каталогу, который содержит файлы, содержащие списки аннулированных сертификатов в формате PEM.
  • --tls-version= version: Протоколы TLS, разрешенные для зашифрованных связей.

Альтернативно, варианты SSL могут быть закодированы как часть последовательности URI как часть элемента запроса. Доступные варианты SSL совпадают с упомянутыми выше, но написаны без стартовых дефисов. Например, ssl-ca это --ssl-ca.

Пути, определенные в последовательности URI, должны быть закодированы процентом, например:

ssluser@127.0.0.1?ssl-ca%3D%2Froot%2Fclientcert%2Fca-cert.pem%26ssl-cert%3D%2Fro\
ot%2Fclientcert%2Fclient-cert.pem%26ssl-key%3D%2Froot%2Fclientcert%2Fclient-key
.pem

См. Connecting Using a URI or Key-Value Pairs.

3.1.3. Связи в JavaScript и Python

Когда связь установлена, используя опции команды или при помощи любой из команд MySQL Shell, глобальный объект сессии создается. Эта сессия глобальна, потому что когда-то созданная, она может использоваться в любом из режимов MySQL Shell.

Любой глобальный объект сессии доступен в режимах JavaScript или Python, потому что переменная, названная session, содержит ссылку на него.

В дополнение к глобальному объекту сессии, сессии могут быть установлены и назначены на различную переменную при помощи функций, доступных в модулях mysql и mysqlx для JavaScript и Python.

Например, следующие функции обеспечиваются этими модулями:

  • mysqlx.getSession(connectionData[, password])

    Возвращенный объект может быть сессией, если объект был создан или восстановил использование экземпляра Session, и ClassicSession, если объект был создан или восстановил использование экземпляра ClassicSession.

  • mysql.getClassicSession(connectionData[, password])

    Возвращенный объект ClassicSession, который использует традиционный протокол MySQL и имеет ограниченный API.

connectionData может быть последовательностью URI или парами ключ/значение, содержащими параметры связи. Посмотрите Connecting Using a URI or Key-Value Pairs.

Сессии создаются также с применением mysql.getClassicSession(connection_data) или mysqlx.getSession(connection_data), они используют ssl-mode=REQUIRED по умолчанию, если нет ssl-mode и нет ни одной опции ssl-ca или ssl-capath. Если нет ssl-mode, но есть ssl-ca или ssl-capath, созданная сессия по умолчанию использует ssl-mode=VERIFY_CA.

Следующий пример показывает, как создать сессию, используя X-протокол:

mysql-js> var mysession1=mysqlx.getSession('root@localhost:33060', 'password');
mysql-js> session
<Session:root@localhost>
mysql-js>

Следующий пример показывает, как создать ClassicSession со сжатием:

mysql-js> var mysession2=mysql.getClassicSession('root@localhost:3306?compression=true', 'password');
mysql-js> session
<ClassicSession:root@localhost:3306>
mysql-js>

3.1.3.1. Использование зашифрованных связей в коде

Чтобы установить зашифрованную связь, установите информацию SSL в словаре connectionData:

mysql-js> var session=mysqlx.getSession({host: 'localhost',
   user: 'root',
   password: 'password',
   ssl_ca: "path_to_ca_file",
   ssl_cert: "path_to_cert_file",
   ssl_key: "path_to_key_file"});

См. Connecting using Key-value Pairs.

3.2. Подключаемое хранилище паролей

Чтобы сделать работу с MySQL Shell более быстрой и безопасной, можно упорствовать пароль для связи с сервером, используя хранилище, такое как keychain. Вы вводите пароль для связи в интерактивном режиме, и он сохранен с URL сервера для связи. Например:

mysql-js> \connect user@localhost:3310
Creating a session to 'user@localhost:3310'
Please provide the password for 'user@localhost:3310': ********
Save password for 'user@localhost:3310'? [Y]es/[N]o/Ne[v]er (default No): y

Когда пароль для URL сервера сохранен, каждый раз, когда MySQL Shell открывает сессию, это восстанавливает пароль из хранилища, чтобы загрузить в сервер, не имея необходимости вводить пароль в интерактивном режиме. То же самое применяется скриптов в MySQL Shell. Если никакое хранилище не формируется, пароль будет запрошен в интерактивном режиме.

MySQL Shell сохраняет только URL и пароль через средства хранилища, но не сохраняет пароль самостоятельно.

Пароли сохранены только, когда они введены вручную. Если пароль обеспечивается, используя серверную последовательность URI или в командной строке, запуская mysqlsh, он не сохранен.

Максимальная длина пароля, которая принята для соединения с MySQL Shell, 128 знаков.

MySQL Shell имеет встроенную поддержку для следующих хранилищ:

  • MySQL login-path, доступный на всех платформах, поддержанных сервером MySQL (с момента установки клиента MySQL), предлагает постоянное хранение. См. mysql_config_editor MySQL Configuration Utility.

  • MacOS keychain, см. здесь.
  • Windows API, см. здесь.

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

Если MySQL Shell работает в неинтерактивном режиме (например, применена опция --no-wizard), поиск пароля выполняется тем же самым путем, как в интерактивном режиме. Но в этом случае, если действительный пароль не найден, MySQL Shell пытается открыть сессию без пароля.

Пароль для URL сервера может быть сохранен каждый раз, когда успешная связь с сервером MySQL установлена, а пароль не был восстановлен из хранилища. Решение сохранить ли пароль принято на основе параметров credentialStore.savePasswords и credentialStore.excludeFilters, см. ниже.

Автоматическое сохранение пароля и поиск выполняются когда:

  • mysqlsh вызван с любыми вариантами связи, устанавливая первую сессию.

  • вы используете встроенную команду \connect.
  • вы используете метод shell.connect().
  • вы используете любые методы AdminAPI, которые требуют связи.

3.2.1. Варианты настройки пароля

Чтобы настроить хранилище пароля, используйте интерфейс shell.options, см. раздел 8.4. Следующие опции настраивают хранилище.

shell.options.credentialStore.helper = "login-path"

Последовательность, которая определяет хранилище для паролей. По умолчанию этот выбор установлен в специальное значение default, которое опознает помощника по умолчанию на текущей платформе. Может быть установлена в любое из значений, возвращенных методом shell.listCredentialHelpers() . Если это значение установлено неправильно, исключение поднято. Если недействительное значение обнаружено во время запуска mysqlsh , ошибка показана, хранение и поиск паролей отключены. Чтобы отключить автоматическое сохранение и поиск паролей, установите это в специальное значение <disabled>:

shell.options.set("credentialStore.helper", "<disabled>")

Когда это отключено, использование всех мандатных методов хранилища MySQL Shell, обсужденных здесь, приводит к исключению.

shell.options.credentialStore.savePasswords = "value"

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

  • always пароли всегда сохраняются, если они еще не доступны в хранилище или URL сервера соответствует credentialStore.excludeFilters.

  • never пароли не хранятся.
  • prompt в интерактивном режиме, если URL сервера не соответствует shell.credentialStore.excludeFilters, будет выдан запрос, если пароль должен быть сохранен. Возможные ответы yes для сохранения, no чтобы отказаться и never, чтобы не сохранять пароль этот пароль и добавить URL к credentialStore.excludeFilters. Измененное значение credentialStore.excludeFilters не сохранен, означая, что это актуально только пока MySQL Shell не перезапущен. Если MySQL Shell работает в неинтерактивном режиме (например, указана опция --no-wizard), опция credentialStore.savePasswords всегда never.

По умолчанию значение опции prompt.

shell.options.credentialStore.excludeFilters = ["*@myserver.com:*"];

Список последовательностей, определяющих, какие URL сервера должны быть исключены из автоматического хранения паролей. Каждая последовательность может быть явным URL или образцом. Если сервер, URL которого собираются сохранить, соответствует какой-либо из последовательностей в этой опции, это не сохранено. Возможные подстановочные символы: * соответствует любому количеству любых знаков и ? соответствует отдельному символу.

Значение по умолчанию: пустой список.

3.2.2. Работа с данными авторизации

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

var list = shell.listCredentialHelpers();

Возвращает список последовательностей, где каждая последовательность это имя хранилища, доступного на текущей платформе. Специальные значения default и <disabled> не находятся в списке, но являются допустимыми для опции credentialStore.helper.

shell.storeCredential(url [, password]);

Сохранить набор данных, используя текущее хранилище (credentialStore.helper). Бросает ошибку, если деятельность хранилища терпит неудачу, например, если нынешнее хранилище не работает. Если URL уже находится в хранилище, он будет переписан. Этот метод игнорирует текущее значение опций credentialStore.savePasswords и credentialStore.excludeFilters. Если пароль не обеспечивается, MySQL Shell его спросит.

shell.deleteCredential(url);

Удаляет данные авторизации для данного URL, используя текущее хранилище (credentialStore.helper). Бросает ошибку, если операция удаления терпит неудачу, например, хранилище не работает или нет никакого мандата для данного URL.

shell.deleteAllCredentials();

Удаляет все данные авторизации, управляемые текущим хранилищем (credentialStore.helper). Бросает ошибку, если операция терпит неудачу.

var list = shell.listCredentials();

Возвращает список всех URL, сохраненных текущим хранилищем (credentialStore.helper).

3.3. Сессии MySQL Shell

Эта секция объясняет различные типы сессий в MySQL Shell, как создать и настроить их.

3.3.1. Обзор сессий MySQL Shell

MySQL Shell это объединенный интерфейс, чтобы управлять сервером MySQL через такие языки, как JavaScript или Python. Чтобы поддержать совместимость с предыдущими версиями, SQL может также быть выполнен в определенных режимах. Связь с сервером MySQL требуется. В MySQL Shell эти связи обработаны объектом Session.

Следующие типы объекта Session имеются:

  • Session: Используйте этот тип сессии для новой разработки приложений, чтобы общаться с серверами MySQL, которым позволили X-протокол. Это предлагает лучшую интеграцию с MySQL Server и поэтому используется по умолчанию.

  • ClassicSession: Используйте этот тип сессии, чтобы взаимодействовать с серверами MySQL, которым не позволили X-протокол. API, доступный для этого типа сессии, очень ограничено. Например, нет никаких операций CRUD, никакой обработки коллекции, и связывание не поддерживается.

Тип ClassicSession специфичен для MySQL Shell и не может использоваться с другими вариантами X DevAPI, такими как MySQL Connectors.

Выбор типа сессии MySQL Shell

MySQL Shell создает объект Session по умолчанию. Можно формировать тип сессии, используя опции команды MySQL Shell, элемент scheme URI или задать опции в команде \connect. Чтобы выбрать, какой тип сессии должен быть создан когда MySQL Shell запускается, используйте один из этих вариантов:

  • --mysqlx (--mx) создает Session с использованием X Protocol.

  • --mysql (--mc) создает ClassicSession, с использованием протокола MySQL.

Чтобы выбрать, какой тип сессии использовать, определяя последовательность типа URI, используют один из этих вариантов:

  • Определите mysqlx, чтобы создать сессию X-протокола. X Plugin должен быть установлен на сервере, см. Using MySQL as a Document Store.

  • Определите mysql, чтобы создать сессию протокола MySQL.

Создание сессии, используя команды MySQL Shell

Если вы открываете MySQL Shell, не определяя параметры связи, MySQL Shell открывается без установленной глобальной сессии. Возможно установить глобальную сессию, как только MySQL Shell была запущена, используя команду MySQL Shell \connect URI , где URI это URI, как определено Connecting using a URI String:

  • \connect --mysqlx | --mx URI: Создает Session, используя X-протокол.

  • \connect --mysql | --mc URI: Создает ClassicSession, используя протокол MySQL.

Например:

mysql-js> \connect mysqlx://user@localhost

Если вы не определяете протокол в команде \connect, MySQL Shell автоматически пытается использовать X-протокол для связи сессии и отступает к протоколу MySQL, если X-протокол недоступен. Опция протокола -ma, которая определяла поведение явно, теперь устарела. Использование единственной черты с краткими вариантами (то есть, -mx and -mc) также устарело с версии 8.0.13 MySQL Shell.

Альтернативно, можно использовать метод shell.connect('URI '. Например, это эквивалентно вышеупомянутой команде \connect>:

mysql-js> shell.connect('mysqlx://user@localhost')

3.4. Глобальные переменные MySQL Shell

MySQL Shell резервирует определенные переменные как глобальные переменные, которые назначены на обычно используемые объекты в скриптах. Эта секция описывает доступные глобальные переменные и предоставляет примеры работы с ними. Глобальные переменные:

  • session представляет глобальную сессию, если она есть.

  • db представляет схему, если она была определена, например, последовательностью URI.
  • dba представляет AdminAPI, компонент кластера InnoDB, который позволяет вам управлять группами серверов, см. InnoDB Cluster.
  • shell обеспечивает функции общего назначения, например, чтобы настроить MySQL Shell. shell.reports предоставляет встроенные или определенные пользователями отчеты о MySQL Shell как функции, с названием отчета как функция.
  • util обеспечивает сервисные функции, например, чтобы проверить экземпляры сервера перед модернизацией. См. главу 6.

Эти слова резервируются и не могут использоваться, например, как названия переменных.

3.5. Применение Pager

Можно настроить MySQL Shell, чтобы использовать внешний инструмент пейджера, такой как less или more. Как только пейджер настроен, он используется MySQL Shell, чтобы показать текст помощи онлайн или результатов операций SQL. Используйте следующие возможности конфигурации:

  • Настройте опцию MySQL Shell shell.options[pager] = "", строку, которая определяет внешнюю команду, которая показывает пронумерованные страницы. Эта строка может произвольно содержать параметры командной строки, которые передаются внешней команде пейджера. Правильность нового значения не проверяется. Пустая строка отключает пейджер.

    Значение по умолчанию: пустая строка.

  • Настройте переменную окружения PAGER, которая отвергает значение по умолчанию опции shell.options["pager"]. Если shell.options["pager"] была сохранена, это имеет приоритет перед переменной окружения PAGER.

    Переменная окружения PAGER обычно используется на системах Unix в том же самом контексте, как ожидается MySQL Shell, конфликты невозможны.

  • Настройте опцию MySQL Shell --pager, которая отвергает начальное значение опции shell.options["pager"], даже если это было сохранено и переменная окружения PAGER задана.
  • Используйте команду MySQL Shell \pager | \P command, чтобы установить значение опцию shell.options["pager"]. Если вызвана без аргументов, восстанавливает начальное значение опции shell.options["pager"]. Строки могут быть отмечены " или нет. Например, чтобы настроить пейджер:
    • используйте пустую строку, чтобы восстановить начальный пейджер.

    • используйте more, чтобы настроить MySQL Shell на использование more в качестве пейджера.
    • используйте more -10, чтобы настроить MySQL Shell на использование more в качестве пейджера с опцией -10

Вывод MySQL Shell, который передается внешнему инструменту пейджера, отправлен без фильтрации. Если MySQL Shell использует приглашение с цветом (см. раздел 8.3), содержит escape-последовательности ANSI. Некоторые пейджеры не могли бы интерпретировать эти escape-последовательности по умолчанию, например, less, для которого интерпретация может быть позволена, используя опцию using the -R. more интерпретирует escape-последовательности ANSI по умолчанию.

Поиск

 

Найди своих коллег!

Вы можете направить письмо администратору этой странички, Алексею Паутову. mailto:alexey.v.pautov@mail.ru