Thread: Embedding Postgres "inside" an application
Does anyone know if there's a way to embed the Postgres database inside an application... so that it runs transparently, without the user even having to know it's there? I would prefer to use Postgres, but I fear that I may have to resort to mySQL or some other SQL database that can be embedded. I'm building a Cocoa app on OS X and am familiar with the libpq C library. Thanks!
Joe Lester <joe_lester@sweetwater.com> writes: > Does anyone know if there's a way to embed the Postgres database > inside an application... so that it runs transparently, without the > user even having to know it's there? I would prefer to use Postgres, > but I fear that I may have to resort to mySQL or some other SQL > database that can be embedded. You can't prevent the server from running as a separate process (without hugely major surgery) but you can certainly embed the server in your app bundle and run it "behind the scenes". Picking a place for the data files, etc might be a little tricky, but it should all be doable. AFAIK, MySQL also has to run as a server--I don't think you can link to it as a library and access its databases from a single process. -Doug
In article <m3u182mt25.fsf@varsoon.wireboard.com>, Doug McNaught <doug@mcnaught.org> writes: > Joe Lester <joe_lester@sweetwater.com> writes: >> Does anyone know if there's a way to embed the Postgres database >> inside an application... so that it runs transparently, without the >> user even having to know it's there? I would prefer to use Postgres, >> but I fear that I may have to resort to mySQL or some other SQL >> database that can be embedded. > You can't prevent the server from running as a separate process > (without hugely major surgery) but you can certainly embed the server > in your app bundle and run it "behind the scenes". Picking a place > for the data files, etc might be a little tricky, but it should all be > doable. > AFAIK, MySQL also has to run as a server--I don't think you can link > to it as a library and access its databases from a single process. Wrong. MySQL comes in two flavors, as a standalone server and as an embedded library.