Куда только не заводили поиски идеального гуя для MySQL под Linux :)
Мой личный рейтинг пока выглядит так:
- HeidiSQL под вайном
- Valentina Studio
- MySQL Workbench
Web-based решения особо не интересовали по ряду причин. Но недавно наткнулся на проект DbNinja, и стало интересно. Что оно умеет можно посмотреть на страницах проекта, например, тут. Кому-то хватит, кому-то мало, но я о том, как избавиться от браузера, и открывать ЭТО в отдельном окошке, без лишних рюшек и бантиков.
На самом деле всё просто. Устанавиливаем нинзю, настраиваем. И пишем простенькое:
#!/usr/bin/perl
use strict;
use Gtk2 -init;
use Gtk2::WebKit;
use FindBin qw/$RealBin/;
my $window = Gtk2::Window->new;
$window->set_default_size( 1280, 768 );
$window->set_default_icon_from_file( $RealBin.'/dbninja.png');
$window->set_title('DbNinja');
$window->signal_connect( destroy => sub { Gtk2->main_quit } );
my $sw = Gtk2::ScrolledWindow->new;
my $view = Gtk2::WebKit::WebView->new;
$sw->add( $view );
$window->add( $sw );
$view->open( 'http://127.0.0.1/dbninja/' );
$window->show_all;
Gtk2->main;
Всё! Фактически получается отдельное приложение в отдельном окне, ничуть не похожем на браузер.
Ну, допустим, не у всех есть перл. Но у кого-то есть Qt. Не беда, создание аналогичной программы в Qt Creator ничуть не сложней. Код примитивен аж до безобразия (несущественные детали опускаю, атрибуты прописаны в соответствующих ресурсах):
MainWindow::MainWindow(QWidget *parent) :
QMainWindow(parent),
ui(new Ui::MainWindow)
{
ui->setupUi(this);
this->resize(1280, 768);
QWebView *webView = new QWebView;
QVBoxLayout *layout = new QVBoxLayout;
this->centralWidget()->setLayout(layout);
layout->addWidget(webView);
webView->load(QUrl("http://127.0.0.1/dbninja/"));
}
Вот как-то так. Мелочь, а приятно :)
Автор: kloppspb