How to convince the customer to use the PostgreSQL
The company, where I work use four DB servers: MySQL, MongoDB, Redis and PostgreSQL. Everyone is open source, so today I will not compare it to commercial DB servers like MS SQL or IBM DB2. I would like to talk about two from a lot: PSQL and MySQL.
At the market are a lot of DB servers. We can choose! Although, when we choose a database server, we have to remember that our application (which will use it) will evolve and grow. If we design a website, then it can use any DB server. However, the problem occurs, when we would like to develop large application. Low productivity database server like MySQL may protest.
PostgreSQL is a mature database server. It offers stability and great opportunities. Users and admins, who write on popular forums think that PostgreSQL is the best database server for serious projects. MySQL, at the beginning, created database from MySAM type. They are quick but missing nodes integrity. If it removes some element from database and it is related to another table, then it can define, what will happen with these records (may be removed, may be insert NULL in column or this action will be prohibited). Lately, it has been developed InnoDB which has referential integrity.
The PostgreSQL has had these things from a long time. The MySQL implemented these features later. Additionally, PostgreSQL has a pl/pgsql language (like Oracle). It means that it can create procedures during the operation on a database. (INSERT, UPDATE, DELETE). However, MySQL is better for small projects. Furthermore, PostgreSQL is safer. Client (during connection) determines to which database want to connect. When trying to connect to the database server instance establish the identity of the client. Hence, determines whether the client application or the user who run the client application has the appropriate permissions for connection. PostgreSQL provides variety of authentication methods.
The method used for authentication of client connection can be selected basing on host address, database, and user. PSQL user name of databases are logically separated from the name of the operating system on which the server is running. In contrast to MS SQL Server, where there is the choice between two modes of authentication (Windows Mode or Mix Mode), PostgreSQL offers much more of possibilities - we distinguish as many as 11 authentication methods (Trust Authentication, Password Authentication, GSSAPI Authentication, SSPI Authentication Kerberos Authentication, Ident Authentication, Peer Authentication, LDAP Authentication, RADIUS Authentication, Certificate Authentication and PAM Authentication).