Search Postgresql Archives

Re: PG vs MySQL

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Frank,
pls. apologize. Maybe my description was not so clear. What I was referring to was the fact that under MySQL you have more freedom to give individual users of a shared server rights to create and manage their databases In addition all databases are kept in separate directories unlike postgres.


As a server administrator, this make life simpler and you dont need to worry about other users messing around outside their designated environment.

I guess one reason users compare MySQL with Postgres is that they see the benefits of postgres and intend to switch or at least look into it, but at the same time they dont want to compromise when it comes to ease of use and administration.
MySQL is still the default database offered by any web hosting company and if Postgres wants to become the designated db engine for these services or become the worlds no.1 open source db then i think lots of things need to be done. Take for example the admin interface (MySQL Administrator) for MySQL which is done very professionally or the ease of setting up Replication. Postgres still is quite far behind there and for normal users that know MySQL best the transition is probably a too big step and risk.


But then again, it might not be the aim of postgres to become that no1 open source db and part of every web hosting environment. Instead rather to be an alternative for the serious databases for corporate use.

Might actually quite interesting to start a discussion on this topic here :-)

Cheers
Alex


Frank Finner wrote:


On Sun, 28 Mar 2004 14:24:15 +0900 Alex <alex@meerkatsoft.com> sat down, thought long and then
wrote:



Hi,
what is the recommended way to run multiple databases under postgres.

In MySQL it is rather simple to give different users or websites their own database with all the access rights.

Any suggestion or links to documents are highly appreciated.

Alex





If you call "createdb -?" within a shell you will get the following:


---
createdb creates a PostgreSQL database.

Usage:
 createdb [OPTION]... [DBNAME] [DESCRIPTION]

Options:
 -D, --location=PATH       alternative place to store the database
 -E, --encoding=ENCODING   encoding for the database
 -O, --owner=OWNER         database user to own the new database
 -T, --template=TEMPLATE   template database to copy
 -e, --echo                show the commands being sent to the server
 -q, --quiet               don't write any messages
 --help                    show this help, then exit
 --version                 output version information, then exit

Connection options:
 -h, --host=HOSTNAME       database server host or socket directory
 -p, --port=PORT           database server port
 -U, --username=USERNAME   user name to connect as
 -W, --password            prompt for password

By default, a database with the same name as the current user is created.

Report bugs to <pgsql-bugs@postgresql.org>.
---

So, to create a database from shell, you have to call "createdb -O <valid database user> <databasename>". You should do this as valid database superuser
who may add databases!


Another way is to connect to template1 as the future owner:
"psql template1 <valid database user>"
and create the database with "CREATE DATABASE <databasename>...". Every valid user may connect to
template1. You don´t need to use psql, this works for example also with PgAdmin, it´s even simpler
because you don´t need to remember the syntax, just click around.

Of course, the <valid database user> must be enabled to create databases, therefore it must have
been created either by calling "createuser -d <valid database user> ..." or with an appropriate SQL
command "CREATE USER <valid database user> ... CREATEDB" by a database superuser, or again with a
tool like PgAdmin.

BTW: Why do so many people comparisons with MySQL syntax during the last days? "MySQL can do this,
in MySQL I can do this that way" and so on. Next time I´ d like to read something like "In DB2 I can
simply add a database by whatever." or "With MS-SQL-Server you just have to do the following 32
steps to create a backup.". :-)

Who cares about how something works in MySQL? They are NOT the providers of a standard everybody has
to use!

Regards, Frank.




---------------------------(end of broadcast)--------------------------- TIP 5: Have you checked our extensive FAQ?

http://www.postgresql.org/docs/faqs/FAQ.html





---------------------------(end of broadcast)--------------------------- TIP 7: don't forget to increase your free space map settings

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Postgresql Jobs]     [Postgresql Admin]     [Postgresql Performance]     [Linux Clusters]     [PHP Home]     [PHP on Windows]     [Kernel Newbies]     [PHP Classes]     [PHP Books]     [PHP Databases]     [Postgresql & PHP]     [Yosemite]
  Powered by Linux