Это приложение описывает команды mysqlsh.
MySQL Shell продвинутый клиент командной строки и редактор кода для MySQL. В дополнение к SQL MySQL Shell также предлагает возможности скриптов JavaScript и Python. Для получения информации об использовании MySQL Shell посмотрите MySQL Shell 8.0 (часть MySQL 8.0). Когда MySQL Shell связана с MySQL Server через X Protocol, X DevAPI может использоваться, чтобы работать с данными о документе и таблицами, см. Using MySQL as a Document Store. MySQL Shell включает AdminAPI, который позволяет вам работать с кластером InnoDB, см. InnoDB Cluster.
Многие варианты, описанные здесь, связаны со связями между MySQL Shell и MySQL Server, см. раздел 3.1 .
mysqlsh поддерживает следующие параметры командной строки.
Таблица A.1. Опции mysqlsh
Формат | Описание | Введена в версии |
---|---|---|
--auth-method | Метод аутентификации для применения.||
--cluster | Связаться с кластером InnoDB. | 8.0.4 |
--connect-timeout | Перерыв связи для глобальной сессии. | 8.0.13 |
--database | Схема, чтобы использовать (псевдоним для --schema). | |
--dba | Позвольте X-протокол на связи с сервером MySQL 5.7. | |
--dbpassword | Пароль, чтобы использовать, соединяясь с сервером. | |
--dbuser | Имя пользователя MySQL, чтобы использовать, соединяясь с сервером. | |
--execute | Выполните команду и выйдите. | |
--file | Файл, чтобы обработать в пакетном режиме. | |
--force | Продолжить работу в SQL и пакетном режимах, даже если ошибки происходят. | |
--get-server-public-key | Запросите открытый ключ RSA от сервера. | |
--help | Отобразить справочное сообщение. | |
--host | Соединитесь с сервером MySQL на данном хосте. | |
--interactive | Эмулировать интерактивный режим в пакетном режиме. | |
--javascript, --js | Запуск в режиме JavaScript. | |
--json | Вывод в формате JSON.||
--log-level | Определите уровень журналирования.||
-ma | Определить протокол сессии автоматически. | 8.0.3 |
--mysql, -mc | Создать сессию с протоколом MySQL. | 8.0.3 |
--mysqlx, -mx | Создать сессию с протоколом X Protocol. | 8.0.3 |
--name-cache | Позволить автоматическую загрузку имен таблиц на основе активной схемы по умолчанию. | 8.0.4 |
--no-name-cache | Отключите автозавершение. | 8.0.4 |
--no-password | Никакой пароль не обеспечивается для этой связи. | |
--no-wizard, --nw | Выключить мастер соединений. | |
--password | Пароль, чтобы использовать, соединяясь с сервером (псевдоним для --dbpassword) | |
--passwords-from-stdin | Прочитайте пароль из stdin. | |
--port | Номер порта TCP/IP для связи. | |
--py , --python | Запуск в режиме Python. | |
--recreate-schema | Удалить и пересоздать схему. | |
--redirect-primary | Гарантируйте связь с основным кластером InnoDB. | 8.0.4 |
--redirect-secondary | Гарантируйте связь с вторичным кластером InnoDB. | |
--schema | Схема для работы. | |
--server-public-key-path | Путь к файлу, содержащему открытый ключ RSA. | |
--show-warnings | Покажите предупреждения после каждого запроса, если есть (режим SQL). | |
--socket | Для связей с localhost файл сокета Unix или имя канала в Windows (только ClassicSessions). | |
--sql | Запуск в режиме SQL, опознав автоматически протокол, чтобы использовать для связи | |
--sqlc | Запуск в режиме SQL, используя ClassicSession | |
--sqlx | Запуск в режиме SQL, используя X Protocol | 8.0.3 |
--ssl-ca | Файл, который содержит список доверенных SSL Certificate Authorities | |
--ssl-capath | Каталог, который содержит файлы доверенных сертификатов SSL Certificate Authority | |
--ssl-cert | Файл, который содержит сертификат X.509 | |
--ssl-cipher | Название шифра SSL, чтобы использовать | |
--ssl-crl | Файл, который содержит списки аннулированных сертификатов | |
--ssl-crlpath | Каталог, который содержит файлы аннулированных сертификатов | |
--ssl-key | Файл, который содержит ключ X.509 | |
--ssl-mode | Состояние защиты связи с сервером | |
--tabbed | Вывод в формате, разделенном табуляциями | |
--table | Вывод в формате таблицы | |
--tls-version | Протоколы, разрешенные для зашифрованных связей | |
--uri | Информация о сессии в формате URI | |
--user | Имя пользователя MySQL, чтобы использовать, соединяясь с сервером (псевдоним для --dbuser) | |
--version | Отобразить информацию о версии | |
--vertical | Покажите все результаты SQL вертикально |
Отобразить сообщение справки.
--auth-method=
method
Метод аутентификации. Зависит от плагина идентификации, используемого для пароля. MySQL Shell в настоящее время поддерживает следующие методы:
mysql_native_password
см.
Native Pluggable Authentication
mysql_old_password
см.
Old Native Pluggable Authenticationsha256_password
см.
Caching SHA-2 Pluggable AuthenticationГарантирует, что целевой сервер это часть кластера InnoDB
и если так, устанавливает глобальную переменную
cluster
к объекту кластера.
--column-type-info
В режиме SQL прежде, чем напечатать возвращенный набор результатов для запроса, выводятся метаданные для каждой колонки в наборе результатов, такие как тип столбца и сопоставление.
Тип столбца возвращен как тип, используемый MySQL Shell
MySQL Shell (Type
),
и тип, используемый оригинальной базой данных
(DBType
). Для связей MySQL Shell, использующих
классический протокол MySQL, DBType
как возвращен протоколом, для связей X-протокола,
DBType
выведен из доступной информации.
Длина колонки (Length
) возвращена в байтах.
--compress
, -C
Позвольте сжатие для получения информации, посланной между клиентом и сервером. Этот выбор доступен только для классических связей протокола MySQL.
--connect-timeout
Формирует, сколько времени MySQL Shell ждет, чтобы установить глобальную сессию, определенную через параметры командной строки.
--database=name
Схема по умолчанию, чтобы использовать. Это псевдоним для
--schema
.
--dba=enableXProtocol
Включить X Plugin на связи с сервером MySQL 5.7, чтобы можно было использовать связи X-протокола для последующих связей. Требует связи, используя классический протокол MySQL.
Неважно для серверов MySQL 8.0, у которых есть X Plugin по умолчанию.
--dbpassword[=
password
]
Устарело в версии 8.0.13 MySQL Shell. Используйте вместо этого
--password[=
.password
]
--dbuser=user_name
Устарело в версии 8.0.13 MySQL Shell. Используйте вместо этого
--user=
.user_name
--execute=command
,
-e command
Выполните команду, используя в настоящее время активный язык и выйдите.
Этот выбор взаимоисключающий с
--file=
.file_name
--file=file_name
,
-f file_name
Определите файл, чтобы обработать в пакетном режиме. Любые опции после этой используются в качестве аргументов обработанного файла.
--force
Продолжить обрабатывать в SQL и пакетном режимах, даже если ошибки происходят.
--host=host_name
,
-h host_name
Соединитесь с сервером MySQL на данном хосте. В Windows, если вы
определяете --host=.
или
-h .
(предоставление имени хоста как точки),
MySQL Shell соединяется с использованием именованного канала по умолчанию (у
которого есть имя MySQL
) или альтернативного
именованного канала, который вы определяете использованием опции
--socket
.
--get-server-public-key
Аналог --get-server-public-key
.
Работает только с классическими связями протокола MySQL.
--import
Импортируйте документы JSON из файла или стандартного ввода в коллекцию MySQL Server или таблицу, используя утилиту импорта JSON. Для инструкций посмотрите раздел 6.2 .
--interactive[=full]
Эмулировать интерактивный режим в пакетном.
--js
Запуск в режиме JavaScript.
--json[={off|pretty|raw}]
Средства управления выводом JSON из сессии MySQL Shell.
Этот выбор предназначается для установления связи MySQL Shell с другими
программами, например как часть тестирования. Для изменения вывода
результатов запроса, чтобы использовать формат JSON, посмотрите
--result-format
.
Когда
--json
не имеет значения или имеет значение
pretty
, вывод произведен, как красивый JSON.
Если значение raw
, вывод
произведен в сыром формате JSON. В любом из этих случаев
--result-format
, его псевдонимы и значение
опции resultFormat
MySQL Shell проигнорированы.
Со значением off
обработка JSON не происходит,
и наборы результатов произведены как нормальные в формате, определенном
опцией
--result-format
или
опцией настройки resultFormat
.
--log-level=
N
Определите уровень журналирования. Значение может быть целым числом в
диапазоне от 1 до 8 или одним из
none
, internal
,
error
, warning
,
info
, debug
,
debug2
или debug3
.
См. главу 7.
-ma
Устарело в MySQL Shell 8.0.13. Автоматически пытается использовать X-протокол, чтобы создать связь сессии, и отступает к протоколу MySQL, если X-протокол недоступен.
--mysql
(--mc
)
Устанавливает сессию, созданную при запуске с использованием классического
протокола MySQL. Опция --mc
с двумя дефисами
заменила предыдущую опцию -mc
в версии 8.0.13.
--mysqlx
(--mx
)
Устанавливает сессию, созданную при запуске с использованием X Protocol.
Опция --mx
с двумя дефисами заменила предыдущую
опцию -mx
в версии 8.0.13.
--name-cache
Позвольте автоматическую загрузку имен таблиц на основе активной схемы по умолчанию.
--no-name-cache
Отключите загрузку имен таблиц для автозавершения на основе активной схемы
по умолчанию и объекта DevAPI db
. Используйте
\rehash
, чтобы перезагружать информацию
об именах вручную.
--no-password
Соединяясь с сервером, если у пользователя есть безпарольный доступ,
или если идентификация сокета используется, (для сокетных соединений Unix),
необходимо использовать опцию
--no-password
, чтобы явно определить, что
никакой пароль не обеспечивается и запрос пароля не требуется.
--no-wizard
Отключить мастер связи, который обеспечивает помощь, создавая связи.
--passwords-from-stdin
Прочитайте пароль со стандартного ввода, а не от терминала. Этот выбор не затрагивает никакое другое поведение пароля, такое как запрос пароля.
--password[=
password
]
,
-ppassword
Пароль, чтобы использовать, соединяясь с сервером. Максимальная длина пароля, которая принята для соединения с MySQL Shell, является 128 символами.
--password=
(password
-p
) со значением поставляет пароль, который будет
использоваться для связи. С подробной формой
password
--password=
необходимо использовать знак
равенства и не должно быть пробелов между опцией и значением. С краткой
формой -p
не должно быть никаких пробелов между
опцией и значением. Если пробел используется в любом случае, значение не
интерпретируется как пароль и может интерпретироваться как
другой параметр связи.
--password
без значения и знака равенства
или -p
без значения запросит пароль.--password=
с пустым значением
имеет тот же самый эффект, как
--no-password
, который определяет, что
пользователь соединяется без пароля. Соединяясь с сервером, если у
пользователя есть учетная запись без пароля или если используется
безпарольная идентификация (для сокетных соединений Unix), необходимо
использовать один из этих методов, чтобы явно определить, что никакой пароль
не обеспечивается и запрос пароля не требуется.
--port=
,
port_num
-P
port_num
Номер порта TCP/IP, чтобы использовать для связи. По умолчанию 33060.
--py
Запуск в режиме Python.
--quiet-start[=1|2]
Запуск без вывод вводной информации. MySQL Shell обычно печатает
информацию о продукте, информацию о сессии (схема по умолчанию и ID связи),
предупреждающие сообщения и любые ошибки, которые возвращены во время запуска
и связи. Когда вы определяете --quiet-start
без
значения или со значением 1, информация о продукте MySQL Shell не печатается,
но информация о сессии, предупреждения, и ошибки печатаются. Со значением 2
печатаются только ошибки.
--recreate-schema
Удалить и пересоздать схему.
--redirect-primary
Гарантирует, что целевой сервер это часть кластера InnoDB и если он не первичный, находит первичный и соединяется с ним. MySQL Shell вылетает с ошибкой, если что-либо следующее верно, используя этот выбор:
Group Replication неактивна.
Гарантирует, что целевой сервер это часть кластера InnoDB и если он не вторичный, находит вторичный и соединяется с ним. MySQL Shell вылетает с ошибкой, если что-либо следующее верно, используя этот выбор:
Group Replication неактивна.
--result-format={table|tabbed|vertical|json|json/raw}
Устанавливает значение resultFormat
опции
MySQL Shell для этой сессии. Форматы следующие:
Умолчание для интерактивного режима, если другое значение постоянно не
устанавливалось для опции resultFormat
в
конфигурационном файле, в этом случае то умолчание применяется.
Псевдоним
--table
может также использоваться.
Умолчание для пакетного режима, если другое значение постоянно не
устанавливалось для resultFormat
в конфигурационном файле, в этом случае то умолчание применяется.
Псевдоним
--tabbed
может также использоваться.
Производит вывод аналогично терминатору
\G
для SQL-запроса.
Псевдонимы
--vertical
или
-E
могут также использоваться.
Производит красивый JSON.
Производит сырой JSON.
Если опция
--json
используется, чтобы активировать JSON
для вывода для сессии, опцция
--result-format
, ее псевдонимы и опция
resultFormat
проигнорированы.
--schema=name
,
-D name
Схема по умолчанию.
--server-public-key-path=
file_name
В MySQL Shell это аналог
--server-public-key-path
.
Работает только с классическими связями протокола MySQL. См. плагин
caching_sha2_password
в разделе
Caching SHA-2 Pluggable Authentication.
--show-warnings
Предупреждения показаны после каждого запроса, если есть.
--socket[=path
]
,
-S [path]
В Unix, когда путь определяется, то путь это название файла сокета
Unix, чтобы использовать для связи. Если вы определяете
--socket
без значения и не знака равенства, или
-S
без значения, используется файл сокета
Unix по умолчанию для протокола.
В Windows это имя именованного канала, чтобы использовать для связи.
Имя нечувствительно к регистру. На Windows необходимо определить путь, и
опция --socket
доступна только для сессий
Classic MySQL Protocol.
Вы не можете определить сокет, если вы определяете порт или имя хоста
кроме localhost
в Unix или точки (.) в Windows.
--sql
Запуск в режиме SQL, опознав автоматически протокол, чтобы использовать,
если это не определяется как часть информации о связи.
Когда протокол, чтобы использовать не определяется, по умолчанию используется
X Protocol, отступая к классической связи протокола MySQL. Чтобы вынудить
связь использовать определенный протокол, посмотрите опции
--sqlx
или
--sqlc
. Альтернативно определите протокол в качестве части URI
или используйте опцию
--port
. См.
раздел
3.1 и здесь для деталей.
--sqlc
Запуск в режиме SQL, вынуждая связь использовать классический протокол MySQL, например, использовать MySQL Shell с сервером, который не поддерживает X-протокол. Если вы не определяете порт как часть связи, когда вы обеспечиваете параметры, этот выбор MySQL Shell использует по умолчанию порт протокола MySQL, который обычно является 3306. Порт, с которым вы соединяетесь, должен поддержать классический протокол MySQL, так например, если связь, которую вы определяете, использует порт X-протокола по умолчанию 33060, связь прерывается с ошибкой. Посмотрите раздел 3.1 и здесь для деталей.
--sqlx
Запуск в режиме SQL, вынуждая связь использовать X-протокол. Если вы не определяете порт, когда вы обеспечиваете параметры, этот выбор MySQL Shell использует порт X-протокола по умолчанию, который обычно является 33060. Порт, с которым вы соединяетесь, должен поддерживать X-протокол, так например, если связь, которую вы определяете, использует классический протокол MySQL, по умолчанию порт 3306, связь прерывается с ошибкой. Посмотрите раздел 3.1 и MySQL Shell Ports Reference.
--ssl*
Опции, которые начинаются с
--ssl
, определяют, соединиться
ли с сервером, используя SSL и указывают, где найти ключи SSL и сертификаты.
В
mysqlsh опции SSL аналогичны опциям SSL для MySQL Server,
см. Command Options for Encrypted Connections.
mysqlsh понимает такие опции SSL:
--ssl-mode
,
--ssl-ca
,
--ssl-capath
,
--ssl-cert
,
--ssl-cipher
,
--ssl-crl
,
--ssl-crlpath
,
--ssl-key
.
--tls-version
.
--tabbed
Показать результаты в формате с разделением табуляцией в интерактивном
режиме. Умолчание для этого способа формат таблицы. Этот выбор псевдоним
--result-format=tabbed
.
--table
Показать результаты в формате таблицы в пакетном режиме.
Умолчание для этого способа формат с разделением табуляцией.
Этот выбор псевдоним
--result-format=table
.
--uri=str
Создайте связь при запуске, определив опции связи в формате строки URI, посмотрите Connecting Using a URI or Key-Value Pairs.
--user=user_name
,
-u user_name
Имя пользователя MySQL, чтобы использовать, соединяясь с сервером.
--version
, -V
Покажите информацию о версии.
--vertical
, -E
Показ результатов вертикально, как тогда, когда терминатор
\G
используется для SQL-запроса.
Этот выбор псевдоним
--result-format=vertical
.