Thread

  1. forking postmaster on my own - not as pguser

    Gregory Stone <guomo@yahoo.com> — 2004-01-05T18:17:19Z

    I have a need to run postgres only when my Java application is running.
    Basically I want to do a Runtime.exec() from java in order to start up the
    DB server. Is there any reason why this should present a problem? My
    init.d script is su-ing to the pguser before launching pg_ctl with all the
    various params. Can I just emulate this, but not su to the pguser account
    but use the exisitng user logon? Also, besides standard unix safety rules
    about limited access accounts and all, is there any reason I HAVE to be
    the pguser to start up postgres?
    
    Thanks,
    
    Gregory
    
    =====
    --
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    Gregory Stone       |  "Suppose you were an idiot, and suppose you were                        
    guomo@yahoo.com     |    a member of congress; but I repeat myself."
                        |                                      - Mark Twain
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    
    __________________________________
    Do you Yahoo!?
    Find out what made the Top Yahoo! Searches of 2003
    http://search.yahoo.com/top2003
    
    
  2. Re: forking postmaster on my own - not as pguser

    Nigel J. Andrews <nandrews@investsystems.co.uk> — 2004-01-05T19:00:10Z

    On Mon, 5 Jan 2004, Gregory Stone wrote:
    
    > I have a need to run postgres only when my Java application is running.
    > Basically I want to do a Runtime.exec() from java in order to start up the
    > DB server. Is there any reason why this should present a problem? My
    > init.d script is su-ing to the pguser before launching pg_ctl with all the
    > various params. Can I just emulate this, but not su to the pguser account
    > but use the exisitng user logon? Also, besides standard unix safety rules
    > about limited access accounts and all, is there any reason I HAVE to be
    > the pguser to start up postgres?
    
    No need to be the pguser user at all. Any user of the system can run a postgres
    cluster. Note, that is a postgres cluster, i.e. if you're trying to start
    postgres to look at databases in a cluster that was built by a different user
    then it isn't going to work.
    
    So in summary, what you want to do is something like:
    
    initdb -D /home/myuser/data blah blah blah
    pg_ctl -D /home/myuser/data blah blah blah
    createdb -D /home/myuser/data blah blah blah
    all the other stuff to build your DBs and then you just need to fork and exec
    as myuser in your application.
    
    
    --
    Nigel Andrews