Pull to refresh

Comments 116

Да, но 350 файлов и почти 4 МБ размер для выполнялки SQL-запросов — перебор, ИМХО.
Ну я не стал изобретать два велосипеда и взял готовый фреймворк для реализации, а там папка 3rdparty скриптов 321 файл :(

Конечно же огромная часть из них в этом проекте не нужна — займусь чисткой! Сделаем действительно маленький bundle.
Для такого простого функционала не хватает лишь одного — чтоб все это содержалось в одном файлике + один файлик для конфига (+ввод конфига руками если его нет) =) Вот тогда цены ему не будет. Залил два файла/один файл, и работаешь себе без проблем.
в этом смысле я просто балдею от сипексдампера (я до сих пор пользуюсь первой версией для создания бакапов, во второй вроде все там распухло и окрутело чересчур) — один файл в 35 Кб
Витала идея, витала! Вы очень большой молодец :) Спасибо.
Сделано красиво. Только мне кажется что набегут те, кому бутстрап надоел и… впрочем.
Ну иногда лучше с ним, чем без него. Глупо под такую мелочь делать какой-то особенный дизайн. А пользоваться некрасивым интерфейсом я не люблю :)
Не любят — пусть пишут свой велосипед!!!
попробуйте Adminer — забудете о phpmyadmin как о страшном сне
Честно говоря, сколько убийц phpMyAdmin не пробовал, ни один не прижился.
Остановился на chive, минимум зависимостей и настроек, очень легок. Для VPS (nginx + php-fpm) что-то легкое искал. Счастлив не ставить монстра phpmyadmin.
Мне показался слишком перегруженным.
В каком смысле «перегруженней»? Перегруженней чем phpmyadmin?
Ну да. Шило на мыло.
chive потому что на Yii? :D
Он сам к CMSке прикрепится? Частенько так ломает искать логины и пароли в почте, не находить. Или находить, а они не работают, потому что уже сменили. Надо лезть к клиенту на сервер — пытаться искать их в конифигах.

Так хочется просто зааплоадить нечто, сделать пару нужных SQL, удалить, и заниматься другими делами :)
Нет, chive сам не прикрепится к CMS. Тут ваш bike опережает всех убийц phpmyadmin'a =)
Просто не надо хранить пароли в почте.
Их клиенты присылают, а я стараюсь вообще пароли не хранить, потому не записываю те, которые врядле еще раз понадобятся. Особенно, когда каждый день по нескольку новых проектов.
UFO just landed and posted this here
Спасибо, решение понравилось
Плюсую, сам давно пользуюсь и очень доволен. И сразу ссылку чтобы не гуглить:
UFO just landed and posted this here
Дам совет тем, кто может быть не в курсе. Есть очень удобный и классный клиент для mysql — SqlYog. И если у вас закрыта субд на внешку(а она закрыта), можно просто скинуь tunnel.php, прописать к нему путь и работать как ни в чем не бывало.
Минус — платность. Хотя если вы часто работаете с mysql, проектируете базы и всякое такое, то 99$ не так много.
Да, это отличная программа. Вижу только плюсы для себя и большое удобство работы. Про PhpMyAdmin после этого и не вспоминаю)
Я не вижу у них на сайте на чем он работает — если только под Windows, то для меня это не вариант :(

А вообще по возможности предпочитаю то, что работают в любой OS, а в идеале и на мобильных платформах.
SQLYog под Linux как по маслу идёт под Wine — уже 2,5 года пользуюсь =)
Wine есть под все ОС, в том числе Mac и Windows.
тогда попробуйте бесплатный Sequel PRO
А я где-то уже отвечал — его и использую на десктопе — отличная программка.
UFO just landed and posted this here
А вообще по возможности предпочитаю то, что работают в любой OS, а в идеале и на мобильных платформах.

Если вы хотите с телефона исполнять sql запросы, проектировать БД, анализировать производительность, работать с индексами и прочее-прочее, то что-то не так.
Во всяком случае я не представляю когда это может быть необходимо. Разве что вы единственный незаменимый человек, но это проблемы менеджмента, а не ПО.
Я имел ввиду подход в целом — чем более униваерсальный метод, тем лучше. Все что нужно ставить и настраивать, да еще и работает только под Win/Mac/Linux для меня мнее предпочтительно универсального варианта.

А вообще я трудоголик :) Так что иногда и с iPad что-то приходится зайти поправить/проверить. С телефона нет — не люблю малюсенькие экраны.

Именно по-этому, кстати вариант с тунеллированием тоже не очень подходит — нужен соответствующий клиент на десктопе.

Но для задач, более сложных чем выполнить запрос или посмотреть PROCESSLIST пожалуй надо принять к сведению.
Хм, я с планшета сижу в ссх и управляю сервером, сижу на диванчике и пока идет фильм что-то меняю/добавляю/просматриваю. Что не так? Не стоит выражаться шаблонными фразами, я бы и с телефона по ссх управлял бы сервером, если бы была возможность. Там же и sql запросы есть возможность выполнять.
Есть community-версия
Нет некоторых фишек (в которых лично я никогда не нуждался), и назойливый баннер при загрузке и закрытии программы, а так — совершенно бесплатен.
«Нет некоторых фишек»
Например той о которой говорит человек =)
>когда надо быстренько запустить пару запросов к MySQL базе у клиента на сервере.
Не понимаю, не проще ли просто напрямую mysql клиентом подключиться и выполнить эту пару запросов?
А мне нравится phpminiadmin. Один файл, минимум наворотов, минимум зависимостей и все на старом добром http, никаких аяксов и localstorage. Даже Adminer, который тут выше рекомендовали, по сравнению с ним — монстр.
А почему не через ssh?
Когда есть SSH, то по SSH — так оно намного быстрее и удобней. В противном случае через SQLyogTunnel.php :)
Простая замена phpMyAdmin для гиков

$ mysql
mysql>
Я только за! Жаль по FTP не дает шел запустить! :)
Вот и я присоединился к группе «Статьи не читай, комменты пиши!»
Забудьте FTP как страшный сон, SFTP!
Во-во, всегда удивлялся этим гикам — почта только через ssl, на из дома на работу-VPN, пароли только в голове и т.п., а как клиентские (читай: ответственность за чужой бизнес) сайты админить — так, блин, по FTP!
К сожалению приходится работать с тем, что клиент дает. А они часто покупают дешевый хостинг с предустановленным WP (в лучшем случае) и доступом по FTP. А иногда дают просто ФТП и говорят пришлите базу — мы сами поставим. А потом приходится объяснять, что сделали не так и как исправить.

В идеальном мире конечо есть и SSH и SCP и SFTP, да и cPanel с установленным phpMyAdmin.

Но мир не всегда идеален :)
Залили на сервер, запустил через system данный perl скрипт :)
И у себя через netcat подняли соеденение :)

#!/usr/bin/perl
use IO::Socket;
# Use: bc.pl [Host] [Port]
# nc.exe -l -n -v -p 80
$ARGV=@ARGV;
if ($ARGV
Пока нет, и импорта скорее всего не будет. Не для тех задач оно. А вот экспорт клиент просил сделать по возможности (уж очень ему понравились запросики сохраненные) так что Excel будет :)
хм, интересно, а можно например клиенту кинуть URL типа такого:
mysite.com/client.php?query_id=N&expired=20120615&hash={md5(blabla)}
или, чего уж там мелочиться:
mysite.com/client.php?query_text=encrypted_qyery_body,
где encrypted_qyery_body зашифрованный текст запроса (только select конечно же), ключ прошит в теле скрипта.
Можно добавить кнопку «Permanent link», не знаю будет ли востребована :)
Жаль, что не совместимо с PHP <5.3.0. На многих хостингах все еще PHP 5.2.x.
Не думали отказаться от анонимных функций для совместимости?

Я ненавижу хабрапарсер. Срезал все, что было после <. А еще это ограничение 1 комментарий в 5 минут — дурацкий комментарий висел пять минут и я не мог его «исправить».
С анонимными функциями удобнее и веселее, да и Singleton без get_called_class навскидку удобно (в одну строку) не делается…
SqlBuddy, правда в последнее время не очень активно развивается но текущего функционала мне вполне хватает :)
это же… это же… это же твиттербутстрааап
Вроде самое место для него. Или рисовать новый дизайн руками для малюсенького инструмента?
Я люблю немного юмора в коде, вот над этим, например, смеялся

$fileName = dirname(dirname(dirname(dirname(__FILE__)))) . '/config.php'
С тех пор как перелез на Мак использую Sequel Pro
Бесплатная и очень удобная GUI. Поддерживает так-же коннект к мускулу через SSH тунель.
Аналогично. И тоже не нарадуюсь. Это теперь одна из тех программ, из-за которых слезть с мака на что-либо другое будет проблематично, уж больно она хороша.
Согласен, именно им и пользуюсь на десктопе.
А оно поддерживает HTTP-туннелирование? :)
Насколько мне известно — нет.
А мне больше нравится подход с HTTP-туннелированием, его многие программы для управления БД поддерживают (EMS SQL Manager, например; есть бесплатные) — залил маленький файл, зарегистрировал базу и получил все (почти) средства управления + значительно выше скорость работы.
А можете сделать отправку по Ctrl+Enter?
Вау! Отличная вещь! Давно задумываюсь над поиском нечто подобного, но то руки не доходили, а когда доходили, то натыкался на кривые или не красивые в плане дизайна вещи. А у вас всё на высоте. Идеальное для меня решения! Спасибо!
p.s. научить бы её еще дамп делать
Ну корректный дамп не совсем тривиальная задача, но где-то у меня была реализация. Можно добавить.
И как пища для размышлений: было бы хорошо запаковать всё в один файл, без необходимости распаковки. Было бы совсем хорошо.
Ну в один не получится — как минимум три — php, js, css + шаблоны. Можно паковать в zip и сделать, чтобы он сам там распаковывался. Вот это сделать крайне просто, но надо будет давать право на запись всей папки. Наверное с текущим позиционированием — залил, поработал, удалил — такой вариант вполне приемлем.
/bike.php?get=css
/bike.php?get=js
/bike.php?get=tpl
в чем трабл?
Ну если я правильно понял суть идеи господина RubtsovAV — задача минимизировать количество файлов.

Тоесть надо еще
/bike.php?get=png
/bike.php?get=jpg
/bike.php?get=xml (не в данном случае, но в принципе)


И один большой php — с кучей всего внутри! И весь код перелопатить, и все ссылки на картинки в css перекроить… Мсье знает толк в извращениях :)

Кстати это может быть инетерсным отдельным проектом — phpProject2file! Пишешь в обычном нормальном стиле, а потом пакушь все в один PHP скрипт. Прям аж руки зачесались! :)
Если мне не изменяет мой склероз, phar это умеет.
По-моему, для него надо сам код писать специальным образом, как минимум инклуды через phar://, или нет? Если бы я решал задачу сделать из проекта один файл — я бы искал/делал решение, которое не требует менять сам код исходгого проекта.

Ну и js/css/images/html в варанте с phar, наверное, будут идти отдельными файлами, а это бОльшая часть почти всех сайтов.

Кстати вариант /bike.php?get=js скорее всего не будет кешироваться браузером, потому что админы обычно апач настраивают так, чтобы он на скрипты отдавал nocache. А так как я рассматриваю универсальный вариант — тоесть не могу перенастраивать сервер — некешируемые скрипты и картинки большой минус.
Всё равно автоматически переписать всё и всюду нельзя — там будут хаки для юза в простом и в пакованном режиме
UFO just landed and posted this here
Интересная идея, но я думаю, что это будет лишнее в этом скрипте. Он, как бы, не для этого…
MySQL Workbench + форвардинг портов через SSH — обалденное сочетание. Настраиваешь один раз и с одного компа по всем, с одним интерфейсом и очень функционально.
Буквально сегодня пытался использовать mysqldiff из MySQL Workbench Utilities через SSH tunnel. Говорит, мол

$mysqldiff --server1=root:somepass@127.0.0.1:8889 --server2=root:somepass@127.0.0.1:3306 db1.obj1:db2.obj2
# server1 on 127.0.0.1:… connected.
# server2 on localhost:… ERROR: Cannot connect to the server2 server.
Error 1045: Access denied for user 'root'@'127.0.0.1' (using password: YES)

в то время как, естественно, просто из консоли руками я с теми же логином/паролем вхожу на сервер замечательно.
Не сталкивались с таким поведением утилит при ssh-тунелировании?
Cталкивался с таким моментом: когда указываешь адрес как localhost — он пытается подключиться к локальному SQL через сокет, а не удаленному через сеть. Помогало указывать адрес как 127.0.0.1, но у вас я вижу он так и написан, только при выполнении почему-то изменился на localhost у server2. Я бы в эту сторону исследовал.
Меня превращение 127.0.0.1 в localhost тоже смущало/ет. А нет идей в какую сторону надо «исследовать»?
Кстати, описанный выше отрицательный результат получается на AWS EC2. На локальной виртуалке в VirtualBox mysqldiff коннектится нормально.
Попробуйте сменить локальный порт на втором сервере со стандартного на 3307, допустим. Ну а вообще надо почитать доки на mysqldiff, может там какая подковырка.
был похожий проект, turboadmin, жаль — почил в бозе =(
Довольно часто возникает ситуация, когда надо быстренько запустить пару запросов к MySQL базе у клиента на сервере. При этом есть только FTP и параметры соединения с СУБД. Самый простой выход — загрузить туда phpMyAdmin, ну а дальше дело техники.

Для меня самый простой способ залить туда r57shell… он умеет сразу много полезного и всего 1 файлик…
Я не уверен, что по умолчанию PHP на сервере разрешено запускать шелл скрипты. Если разрешено — я бы как раз запретил. Спасибо — посмотрю на него.
Оно довольно старое и писаное на PHP… последняя версия за 2009 год.
Умеет дампы баз.
Умеет грузить файлы (можно даже с другого ftp)
Ну и вообще просто удобный миниатюрный инструмент с довольно большим функционалом…
UFO just landed and posted this here
На мой взгляд не хватает возможности просмотра структуры таблиц, ну а вообще сам я привык юзать десктопные клиент MySql Workbench и pgAdmin.
DESC [table name]
SHOW CREATE TABLE [tabe name]


В разделе Library есть снипеты Show table structure и Show CREATE TABLE statement. Даже название таблицы вас спросят :)

А название таблицы спрашивает потому что снипет имеет вид «SHOW CREATE TABLE %Table name%», а bike это понимает и задает соответствующий вопрос. Никакого хардкода на какие-то определенные типы команд :)
А я тут, наоборот в своем велосипеде на эту тему стараюсь сделать поудобнее частые команды. У меня заточка под удобный поиск и редактирование базы. Там датагриды с инлайновым редактированием, что-то близкое к HeidiSQL.
Возможно добавлю инлайн редактирование, благо в этом фрейме есть к нему поддержка из коробки. В реальном проекте это выглядит так:


Главное не перебощить с функционалом, а то вся идея сойдет на нет :)
Ага, клиент увидит такое (имею в виду скрипт позволяющий редактировать базу) и откажется платить за само приложение — мол, зачем, если юзеры могут заносить данные и так :)
в Ubuntu 12.04 Firefox 13 скролл тормозит неподетски
Parse error: syntax error, unexpected T_FUNCTION in E:\Rooms\u99626\olt.ru\www\joomla\bike\breeze\Breeze.php on line 58

Хотя скинул в директорию с joomla
может поможет:

  if ( version_compare ( PHP_VERSION, '5.3.0', '<' ) ) {
    die('PHP 5.3+ required');
  }
Можно конечно, но проверку хотелось бы в библиотеку вставить, а не в index.php. А значит скорее всего compile check сработает раньше. Подумаю. Спасибо.
Для интересующихся есть еще легковесный и вполне себе функциональный Adminer. Полезен там, где надо быстро и просто подключится.
Я вообще себе шелл залил. )) Удобно — всё в одном файле — и бэкапы, и файлменеджер, и SQL-запросы…
Web Shell by oRb называется. )
$ mysql # и несколько других утилит командной строки

покрывает все нужды :)
Sign up to leave a comment.

Articles