Support

Akeeba Backup for Joomla!

#16284 Installer crashes with postgresql database

Posted in ‘Akeeba Backup for Joomla! 4 & 5’
This is a public ticket

Everybody will be able to see its contents. Do not include usernames, passwords or any other sensitive information.

Environment Information

Joomla! version
n/a
PHP version
n/a
Akeeba Backup version
n/a

Latest post by nicholas on Wednesday, 05 June 2013 11:10 CDT

user76368
Mandatory information about my setup:

Have I read the related troubleshooter articles above before posting (which pages?)? I tried to
Have I searched the tickets before posting? Yes
Have I read the documentation before posting (which pages?)? Yes
Joomla! version: Joomla! 3.1.1 Stable [ Ember ] 26-April-2013 14:00 GMT
PHP version: 5.3.3-7+squeeze15
MySQL version: 9.1.9 (PostgreSQL !!!)
Host: (optional, but it helps us help you)
Akeeba Backup version: (unknown)

EXTREMELY IMPORTANT: Please attach a ZIP file containing your Akeeba Backup log file in order for us to help you with any backup or restoration issue. If the file is over 2Mb, please upload it on your server and post a link to it.

Description of my issue:
Admin Tools and Backup installer crash both with PostgreSQL:
Database query failed (error # %s): %s SQL=CREATE TABLE IF NOT EXISTS `j_ak_profiles` ( `id` int(10) unsigned NOT NULL AUTO_INCREMENT, `description` varchar(255) NOT NULL, `configuration` longtext, `filters` longtext, PRIMARY KEY (`id`) ) DEFAULT CHARACTER SET utf8 (akeeba-backup)
JLIB_DATABASE_QUERY_FAILED SQL=SELECT "value" FROM "j_admintools_storage" WHERE "key" = 'cparams' (admintools)
With Admin-Tools the site gets even corrupted as a result. Appreciate for your help. THX

nicholas
Akeeba Staff
Manager
Akeeba Backup only supports MySQL databases

Nicholas K. Dionysopoulos

Lead Developer and Director

🇬🇷Greek: native 🇬🇧English: excellent 🇫🇷French: basic • 🕐 My time zone is Europe / Athens
Please keep in mind my timezone and cultural differences when reading my replies. Thank you!

user76368
Hi Nicholas,
Thank you for your high speed reply. After upgrading websites to Joomla 3 I'm more than happy porting the databases to PostgreSQL. So after having finally found your brilliant tools I will have to give them up again? Or is there anything planed for the near future?
Kind regards
Andreas

nicholas
Akeeba Staff
Manager
There is an inherent problem with MS SQL Server and PostgreSQL: they don't have a SHOW CREATE command like MySQL. This means that in order to backup the database you have to go through the information_schema views. And this is where hell breaks loose. The information there is convoluted and doesn't describe everything you need to produce the DDL of tables and views. Things are slightly better for procedures, triggers and functions. Still, it's not possible to make a proper database dump in SQL unless you use command line tools.

I've tried in the past using command line tools, namely in JoomlaPack. There are two major drawbacks. The first is that it's not always certain that you can execute command-line tools through PHP (hosts disable the necessary functions due to security concerns) and you can't even be sure about the location or the version of the tools provided – or if they are provided. Basically, it's a shot in the dark.

The other thing is that the output you get must be grabbed in full and post-processed. This means potentially grabbing several Megabytes of data, ending up in a memory outage error. If you get past this, you have to process everything in one go, which means a PHP timeout error. Unless you save it to disk, which means that many hosts with file size limits will choke on it (to make things worse, without a meaningful error message or any error message at all) and you might get a timeout error or resource usage limit error when reading from the file.

So, between only supporting MySQL and going straight to the nuthouse I chose the former.

Now, the practical question is why you moved to PostgreSQL. I assume it's performance. Well, I agree MySQL's performance sucks (it's improved in 5.6, but still not up to par in big databases). There are good news. You can use MariaDB or Percona which are essentially different databases (much more performant) but remain API compatible with MySQL. I have clients who do use MariaDB and at least one person has used Percona. I consider using either of these the best solution.

Moreover, you should note that most Joomla! extensions are not designed for use on any database other than MySQL (and compatible databases). Given the lack of experience in the developer community on those other database servers and the G I N O R M O U S investment of time necessary to be able to optimise software for use on a specific database server I'd recommend staying clear of non-MySQL-compatible databases, at least for the next 5-6 years.

Nicholas K. Dionysopoulos

Lead Developer and Director

🇬🇷Greek: native 🇬🇧English: excellent 🇫🇷French: basic • 🕐 My time zone is Europe / Athens
Please keep in mind my timezone and cultural differences when reading my replies. Thank you!

user76368
Thank you very much explaining things that detailed. To be honest I haven't thought it would be that complicated. With our own software we've traditionally worked with IBM DB/2 and then looked for a database on PC platforms. After some testing MySQL failed (at that point in time). So we are working with PostgreSQL for almost ten years now without ever having had any problems. Now with Joomla (we started with 2.5) we worked with two databases within one installation. So maybe I have to consider leaving that as it is for the moment because I really fell in love with your admin and backup components. By the way they'll be probably the only extensions we will use in our scenarios. May I hope getting the SFTP transfer issue fixed? (different ticket).
Wish you a wonderful evening and thanks again for your answer.
Andreas

nicholas
Akeeba Staff
Manager
I'd say stick with a performance-tuned MySQL clone, like MariaDB. It's fast and flexible.

I'll answer to the SFTP ticket shortly.

Nicholas K. Dionysopoulos

Lead Developer and Director

🇬🇷Greek: native 🇬🇧English: excellent 🇫🇷French: basic • 🕐 My time zone is Europe / Athens
Please keep in mind my timezone and cultural differences when reading my replies. Thank you!

Support Information

Working hours: We are open Monday to Friday, 9am to 7pm Cyprus timezone (EET / EEST). Support is provided by the same developers writing the software, all of which live in Europe. You can still file tickets outside of our working hours, but we cannot respond to them until we're back at the office.

Support policy: We would like to kindly inform you that when using our support you have already agreed to the Support Policy which is part of our Terms of Service. Thank you for your understanding and for helping us help you!