| |
Все клиенты MySQL, которые связываются с сервером, используя библиотеку
mysqlclient
, применяет следующие системные переменные:
Имя | Описание |
MYSQL_UNIX_PORT | Сокет по умолчанию. Используется
для связи с localhost |
MYSQL_TCP_PORT | TCP/IP порт по умолчанию |
MYSQL_PWD | Пароль по умолчанию |
MYSQL_DEBUG | Опции для трассировки, если используется режим отладки |
TMPDIR | Каталог для временных файлов и таблиц |
Применение MYSQL_PWD
опасно. Подробности в разделе
"4.2.7 Соединение с сервером MySQL".
Клиент mysql использует файл, именованный в системной переменной
MYSQL_HISTFILE
, чтобы сохранить хронологию командной строки.
Значение по умолчанию для файла хронологии: $HOME/.mysql_history,
здесь $HOME
представляет собой значение системной переменной
HOME
. Подробности в разделе
"Приложение 2. Переменные окружения
".
Все программы MySQL имеют много различных параметров. Однако, каждая
программа MySQL обеспечивает опцию --help
, которую Вы можете
использовать, чтобы получить полное описание различных параметров программы.
Например, mysql --help
.
Вы можете отменять заданные по умолчанию параметры для всех стандартных программ пользователя с помощью файла опций. Подробности в разделе "4.1.2 Файл опций my.cnf".
Список ниже кратко описывает программы MySQL:
myisamchk
myisamchk
имеет много
функций, он описан в собственной главе. Подробности в разделе
"4 Администрирование СУБД
MySQL".
make_binary_distribution
support.mysql.com
для удобства других пользователей MySQL.
msql2mysql
mSQL
в
MySQL. Не обрабатывает все случаи, но дает хорошее начало при преобразовании.
mysqlaccess
mysqladmin
mysqladmin
может
также использоваться, чтобы узнавать версию, данные о процессах и информацию
состояния сервера. Подробности в разделе "
4.8.3 mysqladmin, администрирование сервера MySQL".
mysqlbug
mysqld
mysqldump
mysqlimport
LOAD DATA INFILE
. Подробности в разделе
"4.8.7 mysqlimport, импортирование данных из
текстовых файлов".
mysqlshow
mysql_install_db
replace
msql2mysql
, но имеет более
общую применимость. replace
меняет строки в файлах или на
стандартном вводе. Использует специальный алгоритм, чтобы сначала
соответствовать более длинным строкам. Может использоваться, чтобы менять
строки. Например, эта команда меняет a
и b
в файлах:
shell> replace a b b a -- file1 file2 ...
mysql
простая SQL оболочка (с возможностями GNU
readline
). Это поддерживает интерактивное и не интерактивное
использование. Когда используется в интерактивном режиме, результаты запроса
будут представлены в формате ASCII-таблицы. Когда используется в не
интерактивном режиме (например, как фильтр), результат будет выведен в
разделяемом табуляциями формате. Выходной формат может быть изменен,
используя параметры командной строки. Вы можете выполнять скрипты так:
shell> mysql database < script.sql > output.tab
Если Вы имеете проблемы из-за недостаточной памяти у клиента, используйте
опцию --quick
! Это вынуждает клиент mysql
использовать mysql_use_result()
вместо вызова
mysql_store_result()
, чтобы отыскать набор результатов.
Использование mysql
очень просто. Только запустите его
следующим образом: mysql database
или mysql
--user=user_name --password=your_password database
. Напечатайте
инструкцию SQL, закончите ее `;', `\g' или
`\G' и нажмите RETURN/ENTER.
mysql
поддерживает следующие параметры:
-?, --help
-A, --no-auto-rehash
-B, --batch
--character-sets-dir=...
-C, --compress
-#, --debug[=...]
-D, --database=...
my.cnf
.
--default-character-set=...
-e, --execute=...
-E, --vertical
\G
.
-f, --force
-g, --no-named-commands
-G, --enable-named-commands
-i, --ignore-space
-h, --host=...
-H, --html
-L, --skip-line-numbers
--no-pager
--no-tee
-n, --unbuffered
-N, --skip-column-names
-O, --set-variable var=option
--help
.
-o, --one-database
--pager[=...]
PAGER
. Допустимые значения: less, more, cat [> filename],
etc. Подробности в интерактивной справке (\h). Эта опция не работает в
пакетном режиме. Pager работает только в UNIX.
-p[password], --password[=...]
-p
, Вы не
можете иметь пробелов между этой опцией и паролем.
-P --port=...
-q, --quick
-r, --raw
--batch
.
-s, --silent
-S --socket=...
-t --table
-T, --debug-info
--tee=...
-u, --user=#
-U, --safe-updates[=#], --i-am-a-dummy[=#]
UPDATE
и DELETE
, которые
используют ключи. Вы можете сбрасывать эту опцию, если Вы имеете ее в Вашем
файле my.cnf
, используя параметр --safe-updates=0
.
-v, --verbose
-V, --version
-w, --wait
Вы можете также устанавливать следующие переменные через -O
или --set-variable
:
Имя переменной | Значение по умолчанию | Описание |
connect_timeout | 0 | Число секунд перед завершением подключения по тайм-ауту. |
max_allowed_packet | 16777216 | Максимальная длина пакетов для обмена с сервером. |
net_buffer_length | 16384 | Буфер для связи через сокет или TCP/IP. |
select_limit | 1000 | Автоматическое ограничение для SELECT при использовании --i-am-a-dummy |
max_join_size | 1000000 | Автоматическое ограничение для строк в объединении при использовании --i-am-a-dummy. |
Если Вы напечатаете 'help' в командной строке, mysql
распечатает команды, которые он поддерживает:
mysql> help MySQL commands: help (\h) Display this text. ? (\h) Synonym for `help'. clear (\c) Clear command. connect (\r) Reconnect to the server. Optional arguments are db and host. edit (\e) Edit command with $EDITOR. ego (\G) Send command to mysql server, display result vertically. exit (\q) Exit mysql. Same as quit. go (\g) Send command to mysql server. nopager (\n) Disable pager, print to stdout. notee (\t) Don't write into outfile. pager (\P) Set PAGER [to_pager]. Print the query results via PAGER. print (\p) Print current command. quit (\q) Quit mysql. rehash (\#) Rebuild completion hash. source (\.) Execute a SQL script file. Takes a file name as an argument. status (\s) Get status information from the server. tee (\T) Set outfile [to_outfile]. Append everything into given outfile. use (\u) Use another database. Takes database name as argument.
Внимание: pager работает только в UNIX.
Команда status
дает Вам некоторую информацию относительно
подключения и сервера, который Вы используете. Если Вы работаете в режиме
--safe-updates
, status
будет также печатать
значения для переменных mysql
, которые воздействуют
на Ваши запросы.
Полезная опция запуска для новичков (появилась в
MySQL Version 3.23.11): --safe-updates
(или
--i-am-a-dummy
для пользователей, которые скомандовали
DELETE FROM table_name
, но забыли указать предложение
WHERE
). При использовании этой опции, mysql
посылает следующую команду серверу MySQL при открытии подключения:
SET SQL_SAFE_UPDATES=1,SQL_SELECT_LIMIT=#select_limit#, SQL_MAX_JOIN_SIZE=#max_join_size#"
Здесь #select_limit#
и #max_join_size#
являются
переменными, которые могут быть заданы в командной строке mysql
.
Подробности в разделе "5.5.6 Синтаксис
SET
".
Эффект вышеупомянутой команды:
UPDATE
или
DELETE
, если Вы не имеете ограничения ключа в части
WHERE
. Можно, однако, выполнить UPDATE/DELETE
,
используя слово LIMIT
:
UPDATE table_name SET not_key_column=# WHERE not_key_column=# LIMIT 1;
#select_limit#
.
SELECT
, который, вероятно, должен будет исследовать больше,
чем #max_join_size
комбинаций строк, будет прерван.Некоторые полезные советы относительно применения клиента
mysql
:
Некоторые данные намного более читаемы, когда отображаются вертикально, вместо обычного горизонтального вывода, типа блока. Например, более длинный текст, который включает новые строки, часто намного проще читать с вертикальным выводом. Например:
mysql> select * from mails where length(txt) < 300 limit 300,1\G *************************** 1. row *************************** msg_nro: 3068 date: 2000-03-01 23:29:50 time_zone: +0200 mail_from: Monty reply: [email protected] mail_to: "Thimble Smith" <[email protected]> sbj: UTF-8 txt: >>>>> "Thimble" == Thimble Smith writes: Thimble> Hi. I think this is a good idea. Is anyone familiar with Thimble> UTF-8 or Unicode? Otherwise I'll put this on my TODO list Thimble> and see what happens. Yes, please do that. Regards, Monty file: inbox-jani-1 hash: 190402944 1 row in set (0.09 sec)
tee
. Режим
tee
может быть начат с помощью опции --tee=...
или
из командной строки в интерактивном режиме с помощью команды
tee
. Все данные, отображаемые на экране, будут также добавляться
в заданный файл. Это может быть очень полезно для отладки. Режим может быть
заблокирован из командной строки командой notee
. Выполнение
tee
второй раз снова начинает регистрировать вывод. Без
параметра будет использоваться предыдущий файл. Обратите внимание, что
tee
сбрасывает результаты в файл после каждой команды прежде,
чем появляется командная строка.
--pager[=...]
. Без параметра клиент mysql
будет искать системную переменную PAGER и соответственно устанавливать свой
параметр pager
. Этот режим может быть запущен из интерактивной
командной строки командой pager
и заблокирован командой
nopager
. Команда факультативно берет параметр, и
pager
будет установлен в заданное им значение. Команда
pager
может быть вызвана без параметра, но это требует, чтобы
использовалась опция --pager
, или pager
будет
значением по умолчанию (stdout). pager
работает только в UNIX,
так как это использует функцию popen(), которая не существует в Windows. Под
ОС Windows опция tee
может использоваться вместо этого, хотя она
не может быть столь же удобна, как pager
в некоторых ситуациях.
pager
: Вы можете использовать
его, чтобы писать в файл:
mysql> pager cat > /tmp/log.txtИ результаты будут переданы только в этот файл. Вы можете также передавать любые параметры для программ, которые Вы хотите использовать с
pager
:
mysql> pager less -n -i -SИз вышеупомянутого обратите внимание на опцию '-S'. Вы можете посчитать ее очень полезной при просмотре результатов. Попробуйте опцию с горизонтальным выводом (команды заканчиваются на '\g' или ';') и с вертикальным выводом (команды заканчиваются на '\G'). Иногда очень широкий набор результатов должен быстро читаться с экрана, с опцией -S и программой less Вы сможете просмотреть результаты внутри интерактивного less слева направо без строк, более длинных, чем Ваш экран. Это может сделать результат намного более читаемым. Вы можете переключать режим внутри интерактивного less с помощью '-S'. Подробности в описании на 'h'.
mysql> pager cat|tee /dr1/tmp/res.txt|tee /dr2/tmp/res2.txt| \ less -n -i -S
tee
,
pager
установить на 'less', и Вы будете способны просмотреть
результаты в unix 'less' и все еще копировать весь вывод в файл. Различие
между UNIX tee
, используемом с pager
и клиентом
mysql
то, что встроенный режим tee
работает, даже
если Вы не имеете UNIX tee
.Утилита для выполнения административных операций. Синтаксис:
shell> mysqladmin [OPTIONS] command [command-option] command ...
Вы можете получить список параметров, которые Ваша версия
mysqladmin
поддерживает, выполняя mysqladmin
--help
.
Текущая версия mysqladmin
поддерживает следующие команды:
create databasename
drop databasename
extended-status
flush-hosts
flush-logs
flush-tables
flush-privileges
kill id,id,...
password
ping
processlist
reload
refresh
shutdown
slave-start
slave-stop
status
variables
version
Все команды могут быть сокращены к их уникальному префиксу. Например:
shell> mysqladmin proc stat +----+-------+-----------+----+-------------+------+-------+------+ | Id | User | Host | db | Command | Time | State | Info | +----+-------+-----------+----+-------------+------+-------+------+ | 6 | monty | localhost | | Processlist | 0 | | | +----+-------+-----------+----+-------------+------+-------+------+ Uptime: 10077 Threads: 1 Questions: 9 Slow queries: 0 Opens: 6 Flush tables: 1 Open tables: 2 Memory in use: 1092K Max memory used: 1116K
Результат команды mysqladmin status
имеет следующие столбцы:
Uptime | Число секунд, которые прошли с момента запуска сервера |
Threads | Число активных потоков (клиентов) |
Questions | Число запросов от клиентуры с тех пор, как
mysqld был запущен. |
Slow queries | Запросы, которые заняли больше, чем
long_query_time секунд. Подробности в разделе
"4.9.5 Медленный файл регистрации".
|
Opens | Сколько таблиц открылись в mysqld .
|
Flush tables | Сколько выполнено команд flush ... ,
refresh и reload .
|
Open tables | Число таблиц, которые открыты СЕЙЧАС. |
Memory in use | Память, распределенная непосредственно кодом
mysqld (доступно только, когда MySQL компилируется с опцией
--with-debug=full). |
Max memory used | Максимальная память, распределенная
непосредственно кодом mysqld (доступно только, когда MySQL
компилируется с опцией --with-debug=full). |
Если Вы делаете myslqadmin shutdown
на сокете (другими
словами, на компьютере, где запущен mysqld
),
mysqladmin
будет ждать, пока не будет удален MySQL
pid-file
, чтобы гарантировать, что сервер mysqld
был завершен правильно.
mysqlcheck
для поддержания таблиц и восстановленияНачиная с MySQL version 3.23.38, Вы можете использовать новый инструмент
для проверки и ремонта таблиц MyISAM
. Отличие от
myisamchk
в том, что mysqlcheck
должен
использоваться, когда сервер mysqld
работает, а
myisamchk
работает только, когда сервер выключен.
mysqlcheck
использует команды сервера MySQL
CHECK
, REPAIR
, ANALYZE
и
OPTIMIZE
удобным для пользователя способом.
Имеются три альтернативных способа вызвать mysqlcheck
:
shell> mysqlcheck [OPTIONS] database [tables] shell> mysqlcheck [OPTIONS] --databases DB1 [DB2 DB3...] shell> mysqlcheck [OPTIONS] --all-databases
mysqlcheck
имеет специальное свойство, сравнимое с другой
клиентурой: заданное по умолчанию поведение при проверке таблиц (-c) может
быть изменено переименованием. Так, если Вы хотите иметь инструмент для
ремонта таблиц по умолчанию, Вы должны только скопировать
mysqlcheck
под именем mysqlrepair
или создать
символическую связь mysqlrepair
.
Имена, которые Вы можете использовать, чтобы изменить заданное по
умолчанию поведение mysqlcheck
:
mysqlrepair: По умолчанию опция -r mysqlanalyze: По умолчанию опция -a mysqloptimize: По умолчанию опция -o
Параметры, доступные для mysqlcheck
, перечислены здесь,
пожалуйста, проверьте, что Ваша версия поддерживает вызов
mysqlcheck --help
.
-A, --all-databases
-1, --all-in-1
-a, --analyze
--auto-repair
-#, --debug=...
--character-sets-dir=...
-c, --check
-C, --check-only-changed
--compress
-?, --help
-B, --databases
--default-character-set=...
-F, --fast
-f, --force
-e, --extended
-h, --host=...
-m, --medium-check
-o, --optimize
-p, --password[=...]
-P, --port=...
-q, --quick
-r, --repair
-s, --silent
-S, --socket=...
--tables
-u, --user=#
-v, --verbose
-V, --version
Утилита позволяет сбросить в дамп одну или несколько баз данных для резервирования или транспортировки на другой сервер SQL (необязательно MySQL). Дамп будет содержать инструкции SQL, чтобы создать и заполнять таблицу данными.
Если Вы делаете копию на сервер, Вы должны рассмотреть использование
вместо этой утилиты mysqlhotcopy
. Подробности в разделе
"4.8.6 mysqlhotcopy, копирование баз
данных и таблиц MySQL".
shell> mysqldump [OPTIONS] database [tables] mysqldump [OPTIONS] --databases [OPTIONS] DB1 [DB2 DB3...] mysqldump [OPTIONS] --all-databases [OPTIONS]
Если Вы не задаете таблицы или используете --databases
или
--all-databases
, целая база данных будет сброшена в дамп.
Вы можете получить список параметров, которые поддерживает Ваша версия
mysqldump
, выполняя mysqldump --help
.
Обратите внимание, что, если Вы выполняете mysqldump
без
опций --quick
или --opt
, mysqldump
загрузит целый набор результатов в память перед дампингом. Это будет,
вероятно, проблемой, если Вы обрабатываете большую базу данных.
Обратите внимание, что, если Вы используете новую копию программы
mysqldump
и собираетесь делать дамп, который будет читаться
очень старым сервером MySQL, Вы не должны использовать параметры
--opt
или -e
.
mysqldump
поддерживает следующие параметры:
--add-locks
LOCK TABLES
перед и UNLOCK TABLE
после
каждого дампа таблицы, чтобы получить быстрые вставки в MySQL.
--add-drop-table
drop table
перед каждой инстукцией создания.
-A, --all-databases
--databases
со всеми выбранными базами данных.
-a, --all
--allow-keywords
-c, --complete-insert
-C, --compress
-B, --databases
USE
db_name;
будет включен в вывод перед каждой новой базой данных.
--delayed
INSERT DELAYED
.
-e, --extended-insert
INSERT
. Дает более компактные и
быстрые инструкции вставок.
-#, --debug[=option_string]
--help
--fields-terminated-by=...
--fields-enclosed-by=...
--fields-optionally-enclosed-by=...
--fields-escaped-by=...
--lines-terminated-by=...
-T
и имеют то же самое
значение, что и соответствующие предложения для LOAD DATA INFILE
.
-F, --flush-logs
-f, --force,
-h, --host=...
localhost
.
-l, --lock-tables
READ LOCAL
, чтобы позволить параллельные вставки в
случае таблиц MyISAM
.
-n, --no-create-db
-t, --no-create-info
CREATE TABLE
).
-d, --no-data
--opt
--quick --add-drop-table --add-locks
--extended-insert --lock-tables
. Опция должна дать Вам самый быстрый
возможный дамп для чтения на сервере MySQL.
-pyour_pass, --password[=your_pass]
-P port_num, --port=port_num
localhost
, там применяются Unix-сокеты.
-q, --quick
mysql_use_result()
.
-r, --result-file=...
-S /path/to/socket, --socket=/path/to/socket
localhost
.
Он является заданным по умолчанию компьютером.
--tables
-T, --tab=path-to-some-directory
table_name.sql
, который содержит команды SQL
CREATE, и файл table_name.txt
, который содержит данные для
каждой указанной таблицы. ОБРАТИТЕ ВНИМАНИЕ: Это работает
только, если mysqldump
выполнен на той же самой машине, что и
сервер mysqld
. Формат файла .txt
соответствует
опциям --fields-xxx
и --lines--xxx
.
-u user_name, --user=user_name
-O var=option, --set-variable var=option
-v, --verbose
-V, --version
-w, --where='where-condition'
"--where=user='jimf'" "-wuserid>1" "-wuserid<1"
-O net_buffer_length=#, where # < 16M
--extended-insert
или --opt
),
mysqldump
создаст строки длины до net_buffer_length
.
Если Вы увеличиваете эту переменную, Вы должны также гарантировать, что
переменная max_allowed_packet
в сервере MySQL больше, чем
net_buffer_length
.Наиболее нормальное использование mysqldump
: создание копий
целых баз данных. Подробности в разделе "4.4.1
Резервирование баз данных":
mysqldump --opt database > backup-file.sql
Вы можете прочитать этот файл обратно в MySQL:
mysql database < backup-file.sql
или:
mysql -e "source /patch-to-backup/backup-file.sql" database
Однако, утилита также очень полезна, когда надо заполнить другой сервер MySQL информацией из базы данных:
mysqldump --opt database|mysql --host=remote-host -C database
Возможно выполнить дамп нескольких баз данных одной командой:
mysqldump --databases database1 [database2 database3...] > my_databases.sql
Если требуются все базы данных, можно использовать:
mysqldump --all-databases > all_databases.sql
mysqlhotcopy
представляет собой perl-скрипт, который
использует LOCK TABLES
, FLUSH TABLES
и
cp
или scp
, чтобы быстро сделать копию базы данных.
Это самый быстрый способ сделать копию с базы данных или одиночной таблицы,
но это может быть выполнено только на той же самой машине, где находятся
каталоги баз данных.
mysqlhotcopy db_name [/path/to/new_directory] mysqlhotcopy db_name_1 ... db_name_n /path/to/new_directory mysqlhotcopy db_name./regex/
mysqlhotcopy
поддерживает следующие параметры:
-?, --help
-u, --user=#
-p, --password=#
-P, --port=#
-S, --socket=#
--allowold
--keepold
--noindices
myisamchk -rq
.
--method=#
cp
или scp
).
-q, --quiet
--debug
-n, --dryrun
--regexp=#
--suffix=#
--checkpoint=#
--flushlog
--tmpdir=#
Вы можете использовать perldoc mysqlhotcopy
, чтобы получить
более полную документацию для mysqlhotcopy
.
mysqlhotcopy
читает группы [client]
и
[mysqlhotcopy]
из файлов опций.
Чтобы выполнить mysqlhotcopy
, Вы нуждаетесь в доступе к
резервному каталогу для записи, в привилегии SELECT
для таблиц,
которые Вы собираетесь копировать, и в привилегии MySQL Reload
,
чтобы выполнить команду FLUSH TABLES
.
mysqlimport
интерфейс командной строки к инструкции SQL
LOAD DATA INFILE
. Большинство параметров
mysqlimport
непосредственно соответствует тем же самым
параметрам LOAD DATA INFILE
.
mysqlimport
вызывается подобно этому:
shell> mysqlimport [options] database textfile1 [textfile2....]
Для каждого текстового файла, указанного в командной строке,
mysqlimport
отделяет любое расширение от имени файла и
использует результат, чтобы определить, в которую таблицу импортировать
содержание файла. Например, файлы с именами patient.txt,
patient.text и patient будут все вместе импортированы в
одну таблицу patient
.
mysqlimport
поддерживает следующие параметры:
-c, --columns=...
LOAD DATA
INFILE
, которая затем будет передана MySQL.
-C, --compress
-#, --debug[=option_string]
-d, --delete
--fields-terminated-by=...
--fields-enclosed-by=...
--fields-optionally-enclosed-by=...
--fields-escaped-by=...
--lines-terminated-by=...
LOAD DATA INFILE
.
-f, --force
--force
mysqlimport
прерывает работу, если нужная
таблица не существует.
--help
-h host_name, --host=host_name
localhost
.
-i, --ignore
--replace
.
-l, --lock-tables
-L, --local
localhost
(который является заданным по умолчанию компьютером).
-pyour_pass, --password[=your_pass]
mysqlimport
запросит
Вас относительно пароля.
-P port_num, --port=port_num
localhost
,
там применены сокеты Unix.
-r, --replace
--replace
и --ignore
контролируют
обработку управления параметров входных записей, которые дублируют
существующие записи на уникальных значениях ключа. Если Вы определяете
--replace
, новые строки заменят существующие, которые имеют то
же самое уникальное значение ключа. Если Вы определяете
--ignore
, они будут пропущены. Если Вы не определяете никакой
опции вообще, происходит ошибка, когда найдено двойное значение ключа, а
остальная часть текстового файла игнорируется.
-s, --silent
-S /path/to/socket, --socket=/path/to/socket
localhost
(является заданным по умолчанию компьютером).
-u user_name, --user=user_name
-v, --verbose
-V, --version
Имеется типовой образец выполнения mysqlimport
:
$ mysql --version mysql Ver 9.33 Distrib 3.22.25, for pc-linux-gnu (i686) $ uname -a Linux xxx.com 2.2.5-15 #1 Mon Apr 19 22:21:09 EDT 1999 i586 unknown $ mysql -e 'CREATE TABLE imptest(id INT, n VARCHAR(30))' test $ ed a 100 Max Sydow 101 Count Dracula . w imptest.txt 32 q $ od -c imptest.txt 0000000 1 0 0 \t M a x S y d o w \n 1 0 0000020 1 \t C o u n t D r a c u l a \n 0000040 $ mysqlimport --local test imptest.txt test.imptest: Records: 2 Deleted: 0 Skipped: 0 Warnings: 0 $ mysql -e 'SELECT * FROM imptest' test +------+---------------+ | id | n | +------+---------------+ | 100 | Max Sydow | | 101 | Count Dracula | +------+---------------+
mysqlshow
может использоваться, чтобы быстро посмотреть,
какие базы данных существуют, их таблицы и столбцы этих таблиц.
Программой mysql
Вы можете получать ту же самую информацию
командой SHOW
. Подробности в разделе "
4.5.5 Синтаксис SHOW
".
mysqlshow
вызывается подобно этому:
shell> mysqlshow [OPTIONS] [database [table [column]]]
Обратите внимание, что в более новых версиях MySQL, Вы только видите те базы данных/таблицы/столбцы, для которых Вы имеете некоторые привилегии.
Если последний параметр содержит подстановочные знаки оболочки или SQL
(*
, ?
, %
или _
),
показывается только то, что согласовано групповым символом. Это может вызвать
некоторый беспорядок, когда Вы пробуете отображать столбцы для таблицы с
символом _
в имени, поскольку в этом случае
mysqlshow
показывает Вам имена, соответствующие образцу. Это
легко устранимо добавлением в конце командной строки символа %
(как отдельный параметр).
perror
может использоваться, чтобы печатать сообщения об
ошибках. perror
может вызываться подобно этому:
shell> perror [OPTIONS] [ERRORCODE [ERRORCODE...]] например: shell> perror 64 79 Error code 64: Machine is not on the network Error code 79: Can not access a needed shared library
perror
может использоваться, чтобы отобразить описание для
кода ошибки системы или драйвера таблицы MyISAM/ISAM. Сообщения об ошибках
обычно зависят от системы.
Клиент mysql
обычно используется в интерактивном режиме:
shell> mysql database
Однако, также возможно поместить Ваши команды SQL в файл и сообщить, чтобы
mysql
читал ввод из того файла. Чтобы сделать так, создайте
текстовый файл text_file, хранящий команды, которые Вы желаете
выполнить. Затем вызовите mysql
как показано ниже:
shell> mysql database < text_file
Вы можете также запустить Ваш текстовый файл с помощью инструкции
USE db_name
. В этом случае, не нужно определять имя базы данных
на командной строке:
shell> mysql < text_file
Закладки на сайте Проследить за страницей |
Created 1996-2024 by Maxim Chirkov Добавить, Поддержать, Вебмастеру |