Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

MySQL. Библиотека профессионала - Аткинсон Л

..pdf
Скачиваний:
168
Добавлен:
24.05.2014
Размер:
10.41 Mб
Скачать

282 Глава Утилиты командной строки

При наличии этой опции утилита будет пытаться подключиться к серверу до тех пор, пока очередная попытка не увенчается успехом.

Команды

В интерактивном режиме утилита реагирует на SQL инструкции и на спе циальные команды. Инструкции могут занимать несколько строк, а символ новой строки воспринимается как обычный символ пробела. Приглашение интерпретатора

команд обычно выглядит так:

После первой строки многострочной инструк

ции выдается приглашение

Если начать строковый литерал, а затем нажать

<Enter>, утилита сообщит об

отобразив в приглашении или Конец строки

помечается точкой с запятой.

 

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

clear (\c)

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

connect

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

edit (\e)

Эта команда вызывает внешний редактор для ввода текста запроса. Имя редактора содержится в переменной среды EDITOR. Если часть запроса уже введена, она будет доступна для редактирования. При выходе из редактора будет вновь вызван интер претатор mysql. Данная команда недоступна в Win32.

ego (\G)

Эта команда заставляет утилиту выполнить текущую инструкцию и отобразить ее результаты в вертикальном стиле (см. описание опции

exit (\q)

Эта команда завершает сеанс работы с интерпретатором команд.

Полный список утилит 283

до (\д)

Эта команда заставляет утилиту выполнить текущую инструкцию.

Эта команда отображает справочную информацию о доступных командах.

(\n)

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

pager[команда] (\Ркоманда)

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

print (\p)

Эта команда отображает текущую инструкцию, содержащуюся в буфере.

quit(\q)

Это синоним команды

Эта команда включает режим автоматического дополнения имен.

sourceфайл(\. файл)

Эта команда заставляет утилиту выполнить инструкции, содержащиеся в ном текстовом файле.

status(\s)

Эта команда возвращает информацию о клиенте и сервере (листинг 14.8).

mysql> status

mysql

11.15

3.23.37, for

Connection

id:

13

Current database:

 

Current user:

 

284 Глава Утилиты командной строки

Current pager:

 

 

 

Using

 

 

 

 

Server version:

3.23.37

 

 

Protocol version:

10

 

 

Connection:

 

 

via UNIX socket

Client

 

 

 

 

Server

 

latinl

 

 

UNIX socket:

 

 

 

 

Uptime:

 

1 day 4

hours 52

18 sec

Threads: 5

Questions: 299 Slow queries: 0

153

Flush

1 Open tables: 0

Queries per second

tee [файл] (\Т

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

use (\и

Эта команда позволяет сменить базу данных.

mysql_install_db

Этот сценарий создает стандартные таблицы привилегий в базе данных Обычно он запускается один раз при первой инсталляции программы MySQL. Если таблицы привилегий уже существуют, сценарий ничего не делает.

Этот Perl сценарий проверяет привилегии заданных узла, пользователя и базы данных. Синтаксис его вызова таков:

mysqlaccess [узел [пользователь I

|

| | имя]

| пароль]

| H ИМЯ]

Полный список утилит 285

|

пароль]

| U

имя]

I

| и]

I

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

Утилита mysqladmin выполняет ряд административных задач. Формат ее вызова таков:

mysqladmin

| С]

| конфигурация]

force I

I

|

узел]

 

|

|

Р

|

| s]

| секунды]

| S файл]

| имя]

| v]

| V]

\

[create имя]

[drop имя]

[flush hosts]

[flush status]

[password

[ping]

[refresh]

[reload]

[start slave]

[status]

[stop slave]

[variables]

286 Глава Утилиты командной строки

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

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

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

конфигурация)

Эта опция заставляет утилиту записывать отладочную информацию в указанный журнальный файл. Поддержка данной опции должна быть включена в утилиту на эта пе компиляции. По умолчанию данные записываются в trace. Подробнее о формате журнальных файлов рассказывается в главе 24, "Физическое хранение данных".

Эта опция заставляет утилиту продолжать обработку входных данных даже в слу чае обнаружения ошибки. При удалении базы данных подтверждение не потребуется.

При наличии этой опции выдается лишь описание синтаксиса командной строки, а все остальные опции игнорируются.

узел)

Эта опция задает узел, к которому будет пытаться подключиться утилита. По умол чанию связь устанавливается с локальным узлом. В качестве аргумента может присут ствовать доменное имя или IP адрес.

Эта опция задает пароль для подключения к серверу. При ее отсутствии пароль не посылается. Если же пароль не указан, программа попросит его ввести. Учтите, что пароль, вводимый в командной строке, могут увидеть другие пользователи, просмат ривающие список процессов. Обратите также внимание на то, что между названием короткой версии опции и паролем не нужен пробел.

Полный список утилит 287

( Р порт)

Эта опция переопределяет стандартный номер порта, с которым работает утилита (по умолчанию —3306).

Эта опция меняет формат вывода команды extended status в режиме Вместо подсчета итоговых сумм будут вычисляться разности между текущими и пре дыдущими значениями.

Эта опция сокращает объем возвращаемой утилитой.

секунды)

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

( S файл)

Эта опция переопределяет стандартный используемый для подключения к серверу. Обычно файл называется sock.

имя)

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

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

( V)

При наличии этой опции будет выдана лишь информация о версии утилиты.

( E)

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

При наличии этой опции утилита будет пытаться подключиться к серверу до тех пор, пока очереднаяпопытка не увенчается успехом.

288 Глава Утилиты командной строки

create имя

Эта команда создает базу данных и является аналогом инструкции CREATE DATABASE.

drop имя

Эта команда удаляет базу данных и является аналогом инструкции DROP DATABASE.

extended status

Эта команда возвращает расширенную информацию о состоянии сервера. Сооб щаются значения различных переменных, а также некоторые статистические дан ные, например общее число подключений и суммарное время работы (листинг 14.9). Аналогичные данные выдает инструкция SHOW STATUS. При наличии опций и отображаемая информация будет непрерывно обновляться.

extended status

 

I Variable name

|

Value I

 

 

Т

 

 

О

 

 

О

Bytes_received

 

411

Bytes_sent

 

12630

Connections

 

19

 

 

0

 

 

0

 

 

0

Delayed_insert_threads

 

0

Delayed_writes

 

0

Delayed_errors

 

0

 

 

1

Handler_delete

 

0

 

 

0

 

 

0

Handler_read_next

 

0

Handler_read_prev

 

0

 

 

0

Handler_read_rnd_next

 

0

Handler_update

 

0

Handler_write

 

0

Key_blocks_used

 

5

 

 

0

Key_reads

 

0

Key_write_requests

 

0

Key_writes

 

0

Max_used_connections

 

2

 

 

0

 

 

0

Open_tables

 

0

Open_files

0

Open_streams

0

Полный список утилит 289

d_t

0

Questions

49

Select_full join

0

 

range_join

0

 

 

0

Select range check

0

Select scan

0

Slave

running

OFF

Slave open temp tables

0

Slow

launch

0

Slow

queries

0

Sort_merge passes

0

Sort

range

0

Sort rows

0

Sort scan

0

Table_locks immediate

0

Table

locks waited

0

 

cached

0

 

 

18

 

running

3

 

1

 

 

3648

flush hosts

Эта команда выполняет инструкцию FLUSH HOSTS, которая очищает кэш имен компьютеров и адресов Internet. Когда компьютер меняет свой IP адрес, данный бу фер нужно очистить. Это также позволит заново установить соединения, которые ранее были отменены из за превышения лимита ошибок.

flush logs

Эта команда выполняет инструкцию FLUSH LOGS, которая закрывает и повторно открывает все журнальные файлы. Нумерованные файлы получат новые номера.

flush privileges

Эта команда выполняет инструкцию FLUSH PRIVILEGES, которая повторно за гружает таблицы привилегий в базуданных Это необходимо делать после руч ного редактирования таблиц.

flush status

Эта команда выполняет инструкцию FLUSH STATUS, которая сбрасывает боль шинство значений, сообщаемых инструкцией SHOW TABLE STATUS.

flush tables

Эта команда выполняет инструкцию FLUSH TABLES, которая закрывает все

лицы.

290 Глава Утилиты командной строки

flush threads

Эта команда очищает буфер потоков.

kill процесс,

Эта команда разрывает одно или несколько соединений. Получить список актив ных соединений можно с помощью команды

password

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

ping

Эта команда посылает серверу проверяя, функционирует ли сервер.

processlist

Эта команда возвращает информацию о соединениях, установленных с сервером. Аналогичные данные можно получить с помощью инструкции SHOW PROCESSLIST. В первом столбце возвращаемой таблицы указываются идентификаторы соединений. Это те значения, которые необходимо передавать команде kill.

refresh

Эта команда закрываеттаблицы и журнальные файлы.

reload

Эта команда повторно загружает таблицы привилегий.

shutdown

Эта команда останавливает сервер. Для его повторного запуска нужно вызвать демон В среде Windows NT и 2000 сервер запускается командой NET START В этой цели служит сценарий, располагаемый в каталоге например:

start

start slave

Эта команда запускает подчиненный сервер.

status

Эта команда возвращает статусное сообщение, в котором указаны общее время ра боты сервера, число активных потоков, общее число запросов и среднее число запро сов в секунду (рис. 14.10).

Полный список утилит 291

Uptime: 3914

Threads: 3 Questions: 63

Slow queries: 0

0

Flush tables:

1 Open tables: 0 Queries

per second

0.016

stop slave

Эта команда останавливает подчиненный сервер.

variables

Эта команда выполняет инструкцию SHOW VARIABLES (см. главу 13, "Инструкции SQL").

version

Эта команда возвращает информацию о версии сервера. Сюда же включаются и данные о его состоянии (листинг

[root@red

version

 

 

3.23.37, for

on i586

Copyright

2000 MySQL & MySQL Finland

&

This software comes with ABSOLUTELY NO WARRANTY. This is free software,

and you are welcome to modify and redistribute it under the GPL license

Server version

 

Protocol version

10

Connection

via UNIX socket

UNIX socket

 

Uptime:

56 36 sec

Threads: 3 Questions: 42 Slow queries: 0 0 Flush 1 Open 12

Queries per second avg:

Эта утилита преобразует записи двоичного журнального файла в текстовую форму или в SQL инструкции. Синтаксис вызова утилиты таков:

mysqlbinlog

 

 

I

 

 

|

сервер]

|

о

записи]

 

\

пароль]

I

порт]