Как стать автором
Поиск
Написать публикацию
Обновить

Комментарии 55

клёво с prompt-ом
Укажите пожалуйста под какой ОС Вы проводили эти настройки. А то ведь клиент mysql под разными ОС работает, и выглядеть такой тюнинг может по-разному.

Идея с promt мне тоже понравилась, Вы правы, так гораздо удобнее.
Тюнинг предполагается для linux, хотя, думаю, prompt без труда можно настроить и под Windows
добавил поскриптум с ссылкой на less для windows
Еще бы автокомплит был и я бы был счастлив )
автокомплит частично есть. По крайней мере под Ubuntu. Дополняет названия полей, таблиц, но не синтаксис.
угу знаю, юзаю, но хотелось бы именно всего…
НЛО прилетело и опубликовало эту надпись здесь
спасибо за замечание, поправил. По утро еще и не такие очепятки случаются
На Ubuntu конфиг файл имеет имя ~/.my.cnf

А в остальном — отлично!
В Федоре тоже.
да и в генте. И вообще почти везде по-моему.
Ну так можно в юзерском конфиге прописать, а можно глобально. Разницы нет.
ну согласно документации, он там и должен лежать:
/etc/my.cnf или mysql-data-dir/my.cnf или ~/.my.cnf
После 3 лет счастливого пользования Navicat, консольный клиент для меня — дикость)
Тем не менее, информация весьма полезна)
Не все задачи можно решить без консоли, некоторые в ней решаются просто быстрее, а некоторые без нее решить просто невозможно. Например базовая ситуация, когда на голом сервере только root пользователь без доступа в сеть, и все.

Но вообще Navicat хорош :) Умеет все что умеет MySQL Query Browser и еще чуть чуть, для разработки очень удобно
Потому и написал вторую строку своего коммента) Так сказать, бывают случаи)
+1
А еще вывод консольный клиент легко вставляется в скрипты.
Я уже много лет никак не слезу с code.google.com/p/sqlyog/.
Я перелез на Ubuntu, в бесплатной версии появилось окно «купи меня» при запуске, а я лучше найти не могу… В wine работает чудесно (тестируют специально).
Стандартные GUI от mysql аляповатые, а все другие какие-то нефичастые :(
в бесплатной версии появилось окно купи меня? о_О Может вы перепутали что? Community Edition бесплатны для юза.
Бесплатный Community Edition, который при запуске показывает nagscreen, сообщающий, что есть версии попрофессиональней.
Да, именно так, я неточно выразился.
Слушайте, удобная штука однако, спасибо за наводку.
Лично я тоже считал его лучшим инструментом для работы с бд очень долгое время, но недавно столкнулся с проблемами с кодировкой которые решить не смог и пришлось от него отказываться. Хз откуда была проблема, база вся в ютф8, дамп базы в ютф8, но ни в какую не импортируется.
:(
Чем заменили?
на сервере пока пользуюсь phpMyAdmin для мелких задач или консолью для чего-то покрупнее
на локали пользуюсь чем придется пока не нашел достойной замены :(
Для mysql вместо «less -niS» лучше использовать «less -iMSx4 -FX», более информативно и удобно.

Для postgresql хинт от Merlin Moncure:

#to profile (~/.zshrc)
export PAGER=less
export LESS="-iMSx4 -FX"

#to ~/.psqlrc
\timing
\pset pager always


необходимые для себя опции каждый сам подберет, я так думаю.
*бормочет* вы еще оракловый клиент не видели…
+1
тоже искал что нибудь потипу sqlplus
что бы во внешнем редакторе можно было править
сохранять комманды в файл, append…
еще как видели. Только речь пока про mysql
Супер… больше спасибо ))
По сабжу — спасибо, полезно.

[offtop] Лучше выключить прозрачность в терминале: глазам легче станет [/offtop]
на таком уровне прозрачность не мешает, и частенько нужно когда пишу в консоли видеть документ под ней — такая уж работа, а второй монитор не дают
Вот спасибо большое
Небольшая проблема — mysqladmin начал ругаться на неизвестные переменные pager и prompt.

Гуглить сильно неохота — кто-нибудь знает, как помирить предложенный конфиг с mysqladmin-ом?
что-то напутал в синтаксисе? посмотри что бы переменные были указаны обязательно в блоке [client]
Не-не, все правильно сделал. В mysql все прекрасно выглядит, а когда запускаю что-нибудь вроде mysqladmin -uroot create mynewdatabase получаю по голове:
mysqladmin: unknown variable 'pager=less -n -i -S'
mysql -e 'CREATE DATABASE mynewdatabase'. Только так.
Почему только так?!

Или это вариант, как обойтись без mysqladmin-а?
мб пробел между 'pager' и '='? Судя по сообщению mysqladmin считает за имя переменной всю строку 'pager=less -n -i -S'
А почему тогда mysql не ругается?

Вот как выглядит мой конфиг: pastebin.com/f6c92e12d

Судя по ошибке, с проблемами вокруг '=' клиент справляется прекрасно.

Я попробовал разные варианты расположения пробелов — ни в какую
хз. я не сталкивался с подобным. Но я и mysqladmin не так часто пользую
проблема есть. Самый простой выход перенести определение этих переменных из ~/.my.cnf непосредственно в строку запуска например:

user$mysql -u vasia -p --pager='less -n -i -S'
попробуйте завернуть в кавычки в my.cnf. Вот так, например: prompt = '\u@\h \d > '
это, кстати, помогает добавть пробел в конце промта, без обрамляющих кавчек пробелы в начале и конце удаляются.
надо вышеназванные переменные помещать не с секцию [client] а в секцию [mysql]
А как не переподключаясь к mysql вернуть переменную pager на дефолтную?
просто пишешь «pager» без параметров
(www@192.168.1.33) [poll]>pager
а на самом деле не так, а вот так:
(www@192.168.1.33) [poll]>pager
PAGER set to stdout
(www@192.168.1.33) [poll]>
идиот!

а на самом деле не так, а вот так:
(www@192.168.1.33) [poll]>nopager
PAGER set to stdout
(www@192.168.1.33) [poll]>
Спасибо автору. От себя добавлю, что если вы часто используете консольный клиент для разработки, можно добавить настройки БД по умолчанию:

[client]
default-character-set = 'utf8'
pager = 'less -n -i -S'
prompt = '\u@\h \d > '
socket = '/Applications/MAMP/tmp/mysql/mysql.sock'
user = 'root'
password = '123'
Все хорошо, но если захотите сделать mysqldump получите ошибку mysqldump: unknown variable 'prompt=(\u@\h) [\d]>'
что бы это исправить, секцию нужно назвать не [client], а [mysql]
Конечно можно эти команды вводить в интерактивном режиме, можно их прописать как системные переменные, но все же удобнее один раз прописать их в файл ~/my.cnf например так:

Простите, а точно файл должен быть ~/my.cnf? У меня Fedora-12, ожидает файл ~/.my.cnf (начинается на точку). man mysql тоже говорит про:

You can set the prompt option in the [mysql] group of any MySQL option file, such as /etc/my.cnf or the .my.cnf file in your home directory.

Вы правы, у меня там была опечатка. Поправил.
Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации