WordPress and PostgreSQL (part 1)

Well, I just ran into what I consider a major roadblock or maybe a fork in the road. I really want to move to using PostgreSQLexternal_link exclusively, dropping MySQLexternal_link. But WordPressexternal_link is basically being written for MySQL excluding all other databases. This means I either have to give up on using PostgreSQL exclusively or give up using WordPress. And so the pondering proceeds.

I guess I have to examine why I want to go to PostgreSQL exclusively and the corollary that WordPress can be replaced by something else. Gonna start with the advantages and disadvantages of both PostgreSQL and MySQL.

MySQL is the simple solution. It is well supported by everything I want to use including WordPress and Drupal. It has a large development community despite its recent passing of hands first to Sun and now to Oracle. I have been using it for a long time (long enough I can’t remember how long, sometime before 2000). I know how to use it, configure it, optimize it. I can write its own form of SQL without much need to refer to the MySQL documentation. A lot of my old php code is written specifically for MySQL although my personal php framework isĀ  now written using PDO so I have some abstraction going there. With the latest versions of MySQL, it has finally reached a level of ACIDityexternal_link that I want, transactions etc.

On the other hand, MySQL is now owned by Oracle. I really don’t like the direction they have already taken it, making the community version almost impossible to find on their website. The Developer Zoneexternal_link has been buried. This puts a serious black cloud over MySQL future as an open source project in my opinion.

MySQL always felt lacking in some way. It still doesn’t have some features I would like it to have. Although it is getting closer to standard based SQL, it has a ways to go in some areas. There are little niggly things that make me look elsewhere. In otherĀ  words, I am just uneasy about MySQL and am looking for an excuse to get away from it. If I stick with MySQL, something like MariaDBexternal_link or Drizzleexternal_link to me is almost more appealing to get away from Oracle’s heavy hand. Both MariaDB and Drizzle are based on or forked from MySQL. Drizzle is doing some interesting things going off in their own direction whereas MariaDB looks to be more compatible.

PostgreSQL is one of those databases I have wanted to use instead of MySQL ever since I started using MySQL, especially since MySQL didn’t support transactions. But at that time it was (or was perceived as) more difficult to configure and maintain. It certainly has different ways of doing things and generally seems to be more complex but that is because it has more capabilities. Documentation for PostgreSQL sometimes feels like it is written for people who already know what they are doing just needing handy reminders and not for people unfamiliar with PostgreSQL at all.

Now that I am using PostgreSQL, I see it wasn’t at all as difficult as I thought but I still haven’t learned enough to feel comfortable with everything. Using phppgadminexternal_link has made things a bit easier although the command line tools give me more capability. PostgreSQL certainly has a lot more layers to work with such as schemas, triggers, and views (real ones unlike what MySQL has). And of course, it has its own way of doing SQL at times although much closer to the standards than MySQL. Ironically, although I know a lot less about PostgreSQL I already feel more comfortable about using it than I do MySQL.

I haven’t done a lot of testing with regards to performance and resource use. I am not as concerned about performance as I am about resource use. My initial tests seem to indicate that PostgreSQL uses less RAM to do the same thing despite the fact it actually can do a lot more. But that may change as I use it more.

I will continue this discussion in part 2 as I look at WordPress and make a decision to keep using it and MySQL or switch to some other blogging software that will use PostgreSQL.

2 thoughts on “WordPress and PostgreSQL (part 1)

  1. dendly

    I think your choice to abandon MySQL will lead to a lot of troubles. There are several other content management systems that also require mysql such as Joomla which I highly recommend over any other CMS – especially over WordPress and Drupal which is horrible. Mysql has so much support that you will find that you are limited to inferior products. In fact, you will find that some web apps that used to support postgresql have now abandoned it because mysql is the superior product.

  2. bill Post author

    I have to agree with you Dendly on your main point. MySQL has a lot of support and there are many more web development tools available which support MySQL than those that also support other RDBMSes.

    I do disagree that MySQL is the superior product, it isn’t, it is just the most popular.

    I also have to semi-disagree with Joomla. I think that will lead me to a new article regarding Joomla and my long like-dislike conflict with Joomla.

Leave a Reply