Thread: Universal admin frontend
Hi all! I'm thinking about starting a (serius) project to bring a good graphical interface to the administration and operation of postgresql, similar to what other databases have. The goal is to be able to do all the administrative work of postgres in a single program. It would include manage databases, tables, users, privileges ..., see/alter table contents, start/stop the server(s), configure postgres, manage backups, have a good SQL console, monitorize the backends, ... As you can see it would be a superset of the pgaccess capabilities but backwards compatible with it. The program would be done in Java/Swing, being automaticaly portable. The license would be the license of PostgreSQL itself. The cuestion is: Is there any posibility of such a beast being ever included in the standard distribution of PostgreSQL, if it prove util, well designed and rock-solid, or it would not be accepted like a standard add-on by the PostgreSQL hacker comunity? (perhaps Java/Swing not acceptable, ...) Thank you. Pedro Abelleira Seco _______________________________________________________________ Do You Yahoo!? Yahoo! Messenger: Comunicación instantánea gratis con tu gente - http://messenger.yahoo.es
Well, there is something called druid which almost works with postgres, some of the problems are related to the jdbc driver not being complete. Also there is pgAdmin which is windows specific. Dave ----- Original Message ----- From: "Pedro Abelleira Seco" <pedroabelleira@yahoo.es> To: <pgsql-hackers@postgresql.org> Sent: Tuesday, June 19, 2001 11:48 AM Subject: [HACKERS] Universal admin frontend > Hi all! > > I'm thinking about starting a (serius) project to > bring a good graphical interface to the administration > and operation of postgresql, similar to what other > databases have. > > The goal is to be able to do all the administrative > work of postgres in a single program. It would > include manage databases, tables, users, privileges > ..., see/alter table contents, start/stop the > server(s), configure postgres, manage backups, have a > good SQL console, monitorize the backends, ... > > As you can see it would be a superset of the pgaccess > capabilities but backwards compatible with it. > The program would be done in Java/Swing, being > automaticaly portable. The license would be the > license of PostgreSQL itself. > > The cuestion is: Is there any posibility of such a > beast being ever included in the standard distribution > of PostgreSQL, if it prove util, well designed and > rock-solid, or it would not be accepted like a > standard add-on by the PostgreSQL hacker comunity? > (perhaps Java/Swing not acceptable, ...) > > Thank you. > > Pedro Abelleira Seco > > _______________________________________________________________ > Do You Yahoo!? > Yahoo! Messenger: Comunicación instantánea gratis con tu gente - > http://messenger.yahoo.es > > ---------------------------(end of broadcast)--------------------------- > TIP 4: Don't 'kill -9' the postmaster > >
something like this, web based, would be most cool ... have to be able to monitor multiple port/backends too ... On Tue, 19 Jun 2001, [iso-8859-1] Pedro Abelleira Seco wrote: > Hi all! > > I'm thinking about starting a (serius) project to > bring a good graphical interface to the administration > and operation of postgresql, similar to what other > databases have. > > The goal is to be able to do all the administrative > work of postgres in a single program. It would > include manage databases, tables, users, privileges > ..., see/alter table contents, start/stop the > server(s), configure postgres, manage backups, have a > good SQL console, monitorize the backends, ... > > As you can see it would be a superset of the pgaccess > capabilities but backwards compatible with it. > The program would be done in Java/Swing, being > automaticaly portable. The license would be the > license of PostgreSQL itself. > > The cuestion is: Is there any posibility of such a > beast being ever included in the standard distribution > of PostgreSQL, if it prove util, well designed and > rock-solid, or it would not be accepted like a > standard add-on by the PostgreSQL hacker comunity? > (perhaps Java/Swing not acceptable, ...) > > Thank you. > > Pedro Abelleira Seco > > _______________________________________________________________ > Do You Yahoo!? > Yahoo! Messenger: Comunicaci�n instant�nea gratis con tu gente - > http://messenger.yahoo.es > > ---------------------------(end of broadcast)--------------------------- > TIP 4: Don't 'kill -9' the postmaster > Marc G. Fournier ICQ#7615664 IRC Nick: Scrappy Systems Administrator @ hub.org primary: scrappy@hub.org secondary: scrappy@{freebsd|postgresql}.org
On Tue, Jun 19, 2001 at 05:48:21PM +0200, Pedro Abelleira Seco wrote: > I'm thinking about starting a (serius) project to > bring a good graphical interface to the administration > and operation of postgresql, similar to what other > databases have. > > The goal is to be able to do all the administrative > work of postgres in a single program. It would > include manage databases, tables, users, privileges > ... How about phppgadmin? I haven't checked in depth but it seems to be able to do quite a lot of these. Michael -- Michael Meskes Michael@Fam-Meskes.De Go SF 49ers! Go Rhein Fire! Use Debian GNU/Linux! Use PostgreSQL!
> How about phppgadmin? I haven't checked in depth but > it seems to be able to > do quite a lot of these. Yes, and pgaccess too, but I see cons in these two tools: - Pgaccess looks a bit poor. Tcl/Tk is not the definitive user interface toolkit. Yes, it is enough for many things, but not for all. - Phppgadmin is a web based tool. You need a php enabled web server. Most end users/admins don't want to have to configure a web server, PHP ("what is PHP?") and to have a poor interface (I'm talking about web based interfaces in general, not the phppgadmin in particular). - Both of them have limitations of what they can manage. You can't use them to backup/restore the database, to edit/see the postgresql configuration, to monitor the server(s), to start/stop server(s), ... It's dificult to take an _employer_, who only wants to do his job and go home, and say to him that we are going to replace the Oracle and SQLServer databases with Postgresql databases. In fact there are more reasons that the interface, but you are working already in the other problems and solving they fine. To say it briefly if an average IT manager asks you to "show him PostgreSQL" and you open pgsql or pgaccess you are done. Sad but true. > Michael > -- > Michael Meskes > Michael@Fam-Meskes.De > Go SF 49ers! Go Rhein Fire! > Use Debian GNU/Linux! Use PostgreSQL! Pedro _______________________________________________________________ Do You Yahoo!? Yahoo! Messenger: Comunicación instantánea gratis con tu gente - http://messenger.yahoo.es
> - Both of them have limitations of what they can > manage. You can't use them to backup/restore the > database, to edit/see the postgresql configuration, to > monitor the server(s), to start/stop server(s), ... > It's dificult to take an _employer_, who only wants to > do his job and go home, and say to him that we are > going to replace the Oracle and SQLServer databases > with Postgresql databases. In fact there are more > reasons that the interface, but you are working > already in the other problems and solving they fine. > To say it briefly if an average IT manager asks you to > "show him PostgreSQL" and you open pgsql or pgaccess > you are done. Sad but true. What about a KDE or Gnome piece of software? In fact, I believe that such a project may already be in its infancy... Chris
On Wed, Jun 20, 2001 at 09:13:13AM +0200, Pedro Abelleira Seco wrote: > - Phppgadmin is a web based tool. You need a php > enabled web server. Most end users/admins don't want > to have to configure a web server, PHP ("what is > PHP?") and to have a poor interface (I'm talking about > web based interfaces in general, not the phppgadmin in > particular). Maybe, but then you are platform independent. > - Both of them have limitations of what they can > manage. You can't use them to backup/restore the > database, to edit/see the postgresql configuration, to > monitor the server(s), to start/stop server(s), ... Correct. You need another sort of tool for that. If you go web based webmin can do most of this, or at least aims at this. > To say it briefly if an average IT manager asks you to > "show him PostgreSQL" and you open pgsql or pgaccess > you are done. Sad but true. [I assume you mean psql with pgsql.] Yes, but could show him that there are such tools with Oracle too. Sqlplus is no better than psql for that matter. If you want to add your commands inside a graphic tool you could use mpsql/kpsql which are unfortunately not maintained anymore. Note, that I do not say the tools are there for all your needs, but that I think there are quite some tools worth extending. I don't think what we need is another tool that does parts of the job, but an effort to build the one tool you can use for all of this. If this has to start from scratch so be it. But maybe it's good idea to improve some other tool. Michael -- Michael Meskes Michael@Fam-Meskes.De Go SF 49ers! Go Rhein Fire! Use Debian GNU/Linux! Use PostgreSQL!
> What about a KDE or Gnome piece of software? In > fact, I believe that such a > project may already be in its infancy... Yes, I could be, but no all systems have one of them installed or even installable (think not only about Linux, but all the platforms in wich Postgres run, Windows too) Other advantage of the Java/Swing aproach, apart from its portability, is that is easy to program in that platform. I have programed for KDE and have done a little test against both gtk+, gtk--, but Java is another level. Suddenly all is easy, you can do what you can imagine. I don't want to start a flamewar about the best programming language. I only say that for this kind of task Java is the only platform in wich I feel sure about what can be done and when it can be. > > Chris > Pedro _______________________________________________________________ Do You Yahoo!? Yahoo! Messenger: Comunicación instantánea gratis con tu gente - http://messenger.yahoo.es
On Wed, 20 Jun 2001, Christopher Kings-Lynne wrote: > > - Both of them have limitations of what they can > > manage. You can't use them to backup/restore the > > database, to edit/see the postgresql configuration, to > > monitor the server(s), to start/stop server(s), ... > > It's dificult to take an _employer_, who only wants to > > do his job and go home, and say to him that we are > > going to replace the Oracle and SQLServer databases > > with Postgresql databases. In fact there are more > > reasons that the interface, but you are working > > already in the other problems and solving they fine. > > To say it briefly if an average IT manager asks you to > > "show him PostgreSQL" and you open pgsql or pgaccess > > you are done. Sad but true. > > What about a KDE or Gnome piece of software? In fact, I believe that such a > project may already be in its infancy... Please, dont' depend on those things. A lot of people dont' like KDE, Gnome. Pure Gtk would be enough for such a project. > > Chris > > > ---------------------------(end of broadcast)--------------------------- > TIP 1: subscribe and unsubscribe commands go to majordomo@postgresql.org > Regards, Oleg _____________________________________________________________ Oleg Bartunov, sci.researcher, hostmaster of AstroNet, Sternberg Astronomical Institute, Moscow University (Russia) Internet: oleg@sai.msu.su, http://www.sai.msu.su/~megera/ phone: +007(095)939-16-83, +007(095)939-23-83
+1 for implementation in java. While it isn't the fastest it is platform independant. I would also suggest starting with something like druid, and making it postgres specific. Dave ----- Original Message ----- From: "Oleg Bartunov" <oleg@sai.msu.su> To: "Christopher Kings-Lynne" <chriskl@familyhealth.com.au> Cc: "Pedro Abelleira Seco" <pedroabelleira@yahoo.es>; <pgsql-hackers@postgresql.org> Sent: Wednesday, June 20, 2001 6:26 AM Subject: RE: [HACKERS] RE: Universal admin frontend > On Wed, 20 Jun 2001, Christopher Kings-Lynne wrote: > > > > - Both of them have limitations of what they can > > > manage. You can't use them to backup/restore the > > > database, to edit/see the postgresql configuration, to > > > monitor the server(s), to start/stop server(s), ... > > > It's dificult to take an _employer_, who only wants to > > > do his job and go home, and say to him that we are > > > going to replace the Oracle and SQLServer databases > > > with Postgresql databases. In fact there are more > > > reasons that the interface, but you are working > > > already in the other problems and solving they fine. > > > To say it briefly if an average IT manager asks you to > > > "show him PostgreSQL" and you open pgsql or pgaccess > > > you are done. Sad but true. > > > > What about a KDE or Gnome piece of software? In fact, I believe that such a > > project may already be in its infancy... > > Please, dont' depend on those things. A lot of people dont' like > KDE, Gnome. Pure Gtk would be enough for such a project. > > > > > Chris > > > > > > ---------------------------(end of broadcast)--------------------------- > > TIP 1: subscribe and unsubscribe commands go to majordomo@postgresql.org > > > > Regards, > Oleg > _____________________________________________________________ > Oleg Bartunov, sci.researcher, hostmaster of AstroNet, > Sternberg Astronomical Institute, Moscow University (Russia) > Internet: oleg@sai.msu.su, http://www.sai.msu.su/~megera/ > phone: +007(095)939-16-83, +007(095)939-23-83 > > > ---------------------------(end of broadcast)--------------------------- > TIP 1: subscribe and unsubscribe commands go to majordomo@postgresql.org > >
On Wed, 20 Jun 2001, Oleg Bartunov wrote: > > What about a KDE or Gnome piece of software? In fact, I believe that such a > > project may already be in its infancy... > > Please, dont' depend on those things. A lot of people dont' like > KDE, Gnome. Pure Gtk would be enough for such a project. I think people go ahead and throw the KDE and Gnome functionality into a piece of software just because they can (maybe because they like it as a buzzword?). Pure GTK would be best if that is the type of app you are wanting to code and if you do decide to include gnome functionality - don't make it some intwined with the rest of the code that their can't be a --without-gnome switch to the configure program. I do agree that java would be the best way to go. I kinda cringe to say that because most java apps I have seen are pretty lousy and buggy (personal opinion - no need for flames or holy wars here). I will say the only java application I really did like was the java tools that Oracle ships with their product. Very nice, very fast and fairly stable (in my experience) - so I know that a nice product can be made if the right people worked on it and enough thought went into the project. -- //========================================================\\ || D. Hageman <dhageman@dracken.com> || \\========================================================//
Michael Meskes wrote:<br /><blockquote cite="mid:20010620104335.A10444@feivel.fam-meskes.de" type="cite"><pre wrap="">OnWed, Jun 20, 2001 at 09:13:13AM +0200, Pedro Abelleira Seco wrote:<br /></pre><blockquote type="cite"><pre wrap="">-Phppgadmin is a web based tool. You need a PHP<br />enabled web server. Most end users/admins don't want<br />tohave to configure a web server, PHP ("what is<br />PHP?") and to have a poor interface (I'm talking about<br />web basedinterfaces in general, not the phppgadmin in<br />particular).<br /></pre></blockquote><pre wrap=""><br />Maybe, butthen you are platform independent.<br /><br /></pre></blockquote><br /> First, we need a set of tasks that the softwarewould need to be able to do. These tasks, may answer your questions or at least help decide which environment wouldbest suit your admin tool.<br /><br /> AFIAA, there exists a port of Java for just about every OS that PostgreSQL supports,not that it should be the only reason for choosing it. Not that my vote counts, but I'd go for the java approachand be willing to code a lot on the interface, anyone else interested?<br /><br /> To start this list off, the GoodIdea (tm):<br /><br /><ul><li>User Management<ul><li>Create<li>List<br /><li>Modify<ul><li>Change Password<li>Grant permissions<li>GroupMembership</ul><li>Delete</ul><li> Database Management<ul><li>Create<li>List<br /><li>Modify<ul><li>Tables<li>Constraints<li>Rules<li>Owners/Permissions<br /></ul><li>Delete</ul><li>Maintenance<ul><li>Vacuum<li>Analyze</ul><li>Monitoring<br/><ul><li>Statistics<br /></ul></ul><br/> This is one of the big things that PostgreSQL has been missing for sometime. Personally, I believe thatit would benefit both developers and users.<br /><br /> Regardless, that's my two bits...<br /><br />
On Wed, Jun 20, 2001 at 09:13:13AM +0200, Pedro Abelleira Seco wrote: > To say it briefly if an average IT manager asks you to > "show him PostgreSQL" and you open pgsql or pgaccess > you are done. Sad but true. > Well, then open Access. What do you do when the same manager wants to see your web server? Open IE? Ross
AFIAA, there exists a port of Java for just about every OS that PostgreSQL supports, not that it should be the only reason for choosing it. Not that my vote counts, but I'd go for the java approach and be willing to code a lot on the interface, anyone else interested?
Anyone thought about wxPython? Much faster then java, can be distributed as a standalone executable on Windows. Supports Unix / Mac / Windows. Don't know if it supports more or less PG relevant platforms than Java. I have been thinking about working on this type of tool myself.
Anyone thought about wxPython? Much faster then java, can be distributed as a standalone executable on Windows. Supports Unix / Mac / Windows. Don't know if it supports more or less PG relevant platforms than Java. I have been thinking about working on this type of tool myself.
Hello! Why not go back to the roots of postgres? PostgreSQL is written completely in C. The development community has shown that it is possible to write efficient code for different platforms with pure C. The administration task can be separated in 2 different tasks: A server (in C) which is really doing the administrative work. A client programm written in what so ever (C + X11, Java, Perl, TCL/Tk, ....) which performs the user interface. I know that this a not the easiest way to do the job but the most flexible (in my opinion). -- Mit freundlichen Gruessen / With best regards Reiner Dassing
>Hello! >Why not go back to the roots of postgres? >PostgreSQL is written completely in C. The development community has >shown that it is >possible to write efficient code for different >platforms with pure C. >The administration task can be separated in 2 different tasks: >A server (in C) which is really doing the administrative work. >A client programm written in what so ever (C + X11, Java, Perl, TCL/Tk, >....) which performs the user interface. I think you are totally right. >I know that this a not the easiest way to do the job but the most >flexible (in my opinion). In fact I believe that it is also the easiest. Pedro _______________________________________________________________ Do You Yahoo!? Yahoo! Messenger: Comunicación instantánea gratis con tu gente - http://messenger.yahoo.es
> >PostgreSQL is written completely in C. The development community > >has shown that it is [snip] > >The administration task can be separated in 2 different tasks: [snip] Isn't this essentially the split between postmaster/workers and a client? i.e. I don't know how much value is added by introducing another communication protocol when JDBC would work fine. From my understanding of the users API you can handle pretty much everything other than pg_dump. Eg CREATE USER, CREATE DATABASE etc can all be issued from a client using standard PostgreSQL SQL. I'd have to cast my vote on the Java frontend. Cheers, Mark Pritchard
On 21 Jun 2001 19:23:09 +1000, Mark Pritchard wrote: > > >PostgreSQL is written completely in C. The development community > > >has shown that it is > [snip] > > >The administration task can be separated in 2 different tasks: > [snip] > > Isn't this essentially the split between postmaster/workers and a client? > i.e. I don't know how much value is added by introducing another > communication protocol when JDBC would work fine. From my understanding of > the users API you can handle pretty much everything other than pg_dump. Eg > CREATE USER, CREATE DATABASE etc can all be issued from a client using > standard PostgreSQL SQL. > > I'd have to cast my vote on the Java frontend. > > Cheers, > > Mark Pritchard > For an admin tool you might want to display OS info , server load, database file sizes, logfile viewing etc. I have been working on such a tool for my own use , ( GTK+ based front end) and decided that a client / server model would be the most useful approach. I was probably going to write a separate daemon rather than integrate new stuff into the backend. -- Colin M Strickland perl -e'print "\n",map{chr(ord()-3)}(reverse split //,"\015%vhlwlqxpprF#ir#uhzrS#hkw#jqlvvhqudK%#\015\015nx". "1rf1wilv1zzz22=swwk###369<#84<#:44#77.={di##339<#84<#:44#77.=ohw\015]". "K9#4VE#/ORWVLUE#/whhuwV#dlurwflY#334#/wilV\015uhsrohyhG#ehZ#urlqhV");'
>For an admin tool you might want to display OS info , >server load, >database file sizes, logfile viewing etc. >I have been working on such a tool for my own use , ( >GTK+ based front >end) and decided that a client / server model would be >the most useful >approach. I was probably going to write a separate >daemon rather than >integrate new stuff into the backend. I agree. In fact one important thing is to be able to edit the configuration of Postgres (of the different servers) from the app. Administration should include configuration. And backups, too (with a register of them). I also think that the separate daemon would be necessary (you should be able to start/stop/restart servers). In a first aproximation one could write a totally independent daemon able to manage the tasks not accesible by the standard interface. I mean, no table, user, ... management; this is solved. But it's clear that it would be easier (and more reliable, mantainable, elegant) not to have to duplicate things like the config file parsing. One could pick code from Postgres itself, but a copy/paste strategy is bad in the long run (not so long, in fact). If one could access some things of the Postgres engine, it would be easy to have the daemon. But you should compile such code in the postgres build process, or have a API to ask Postgres this kind of things. Both aproaches should have aproval/support by the developers. Of course at the start one can develop this as a patch/addon to the Postgres code, but in the long run it should be in the core distribution (with a option, sure) for use by all the admin tools. The only hard part is the communication protocol. It have to be secure. Secure by design, so simple. And usable for many diferent languages. But I think that, for a start, one should abstract the communication protocol in a interface to help us to concentrate in the general problem, and to plug after a communication lib. Because one cannot simply start coding some that has no one use case, my idea is to develop a Gui tool, concentrating it in the aspects _not_ covered by other tools (pgacces, phppgadmin, pgAdmin, ...) and with a rough support for the usual aspects (user, tables management, sql querys, ...) to have a good prototype in wich experiment what is really needed in the backend. Once this done you can mature the tool independently. The other configuration tools can extend to use the new capabilities if they want. Pedro _______________________________________________________________ Do You Yahoo!? Yahoo! Messenger: Comunicación instantánea gratis con tu gente - http://messenger.yahoo.es
Colin Strickland wrote: > > On 21 Jun 2001 19:23:09 +1000, Mark Pritchard wrote: > > > >PostgreSQL is written completely in C. The development community > > > >has shown that it is > > [snip] > > > >The administration task can be separated in 2 different tasks: > > [snip] > > > > Isn't this essentially the split between postmaster/workers and a client? > > i.e. I don't know how much value is added by introducing another > > communication protocol when JDBC would work fine. From my understanding of > > the users API you can handle pretty much everything other than pg_dump. Eg > > CREATE USER, CREATE DATABASE etc can all be issued from a client using > > standard PostgreSQL SQL. > > > > I'd have to cast my vote on the Java frontend. > > > > Cheers, > > > > Mark Pritchard > > > > For an admin tool you might want to display OS info , server load, > database file sizes, logfile viewing etc. > I have been working on such a tool for my own use , ( GTK+ based front > end) and decided that a client / server model would be the most useful > approach. I was probably going to write a separate daemon rather than > integrate new stuff into the backend. Actually we could start it by offering the standard SQL92 wiews for system tables and PG-standard PL/PGSQLfunctions for things that can't currently be done in SQL standard way, like removing primary key or dropping a column. Having _one_ _documented_ way for even the things that psql's \d commands can show would make writing other system tools much easier. And yes, I think a separate deamon approach will be needed for many things anyway (like changing pg_hba.conf or firewall rules, showing system logs, ...). seems that something using some standard protocol (I would favour XML-RPC (for simplicity) over https (for security)) to expose actions would be a good candidate for the daemon thingie. -------------- Hannu
I'd certainly be keen on helping out with a Java/Swing approach. It would be an excellent test of the meta-data stuff in the JDBC driver and to catch any ommissions. I'm willing to provide a homepage etc if wanted (and for some reason the main postgres site isn't used), maybe Sourceforge could be a goer too?. A lot of the code will end up being useful too I suspect for other Java/Postgres projects. Regards, Joe -----Original Message----- From: Matthew T. O'Connor [mailto:matthew@zeut.net] Sent: Thursday, 21 June 2001 2:22 PM To: Thomas Swan; Michael Meskes Cc: pgsql-hackers@postgresql.org Subject: Re: [HACKERS] Re: Universal admin frontend AFIAA, there exists a port of Java for just about every OS that PostgreSQL supports, not that it should be the only reason for choosing it. Not that my vote counts, but I'd go for the java approach and be willing to code a lot on the interface, anyone else interested? Anyone thought about wxPython? Much faster then java, can be distributed as a standalone executable on Windows. Supports Unix / Mac / Windows. Don't know if it supports more or less PG relevant platforms than Java. I have been thinking about working on this type of tool myself.
On Thu, Jun 21, 2001 at 02:32:59PM +1000, Joe Shevland wrote: > I'd certainly be keen on helping out with a Java/Swing approach. It would be > an excellent test of the meta-data stuff in the JDBC driver and to catch any > ommissions. I'm willing to provide a homepage etc if wanted (and for some > reason the main postgres site isn't used), maybe Sourceforge could be a goer > too?. A lot of the code will end up being useful too I suspect for other > Java/Postgres projects. I'd suggest hosting it at www.greatbridge.org, for that very reason: other Java/Postgres projects are more likely to find you there. And that's where the existing admin type projects (phppgadmin, pgadmin) are hosted, so you all can steal ideas from one another. ;-) Ross
Thank you all for your feedback. Now I know there is interest for this tool. I'm going to do it. I will be busy until the last week of July (including a little vacation) so I'm going to start the work in August. When the basic desing/shedule was ready and I had some code I will announce it, but you have to wait at least until September. See you soon! Pedro _______________________________________________________________ Do You Yahoo!? Yahoo! Messenger: Comunicación instantánea gratis con tu gente - http://messenger.yahoo.es