2012-03-25 4 views
4

Могу ли я получить основную команду MySQL в BASH? показать, описать для стартеров. Я пытаюсь устранить проблему с несколькими базами данных, и я хочу сравнить их с большей спецификой. Свалка - слишком большая информация.Могу ли я получить основную команду MySQL в BASH?

+0

Вы можете уточнить это немного больше? «получение stdout» сбивает с толку. Вы хотите получить вывод данных 'mysql' в переменную bash? – Patrick

+0

Я думаю, что ответы дают суть моего намерения - собрать несколько разных способов быстро получить разные «взгляды» или фильтры базы данных из командной строки. Благодаря этим я просто наткнулся на один, я не могу поверить, если бы забыл, [mysqlshow] (http://dev.mysql.com/doc/refman/5.5/en/mysqlshow.html) – xtian

ответ

4
echo "command" | mysql -u username -ppassword -h host database_name 

не только основная команда, но полный SQL может работать таким образом

+0

Нет пространства между '-p' и 'password'. – kev

+0

Да, не требуется место – dhchen

+0

Это именно то, для чего предназначен 'mysql -e'. Зачем вам когда-либо хотеть делать «эхо» foobar »| mysql' над 'mysql -e" foobar "'? – Patrick

1

мне делать, если вы не можете знать, но есть слишком полезные опции в туздЫшпр, которые могут помочь вам

Первый вариант демпинг структуру только без каких-либо данных, добавив опцию -d

mysqldump -d -h host -u username -p databasename > dumpfile.sql 

другой отличный вариант является --where, а вот описание из руководства:

--where="where-condition", -w "where-condition" 

      Dump only records selected by the given WHERE condition. Note that 
      quotes around the condition are mandatory if it contains spaces or 
      characters that are special to your command interpreter. 

      Examples: 

      "--where=user=’jimf’" 
      "-wuserid>1" 
      "-wuserid<1" 

Для получения дополнительной информации проверить его на странице руководства туздЫшпра: http://linuxcommand.org/man_pages/mysqldump1.html

Смежные вопросы