Just had a somewhat crazy idea to try Symphony on a project at work…but we are a huge Oracle shop. Anyone know how agnostic the database stuff is? Or, has anyone tried something other than MySQL?

Nevermind, answering my own question.

I’m going the other way, wishing that Symphony supported sqlite. A quick look through the code suggests that most of the heavy lifting is done in class.mysql.php , though I did see some MySQL specific code sprinkled around the other files such as the installation and caching code, which is where you would expect it.

Symphony as a desktop app?…

Mysql light would be cool for local deployment (development but as well ensembles as apps run by fluid in the taskbar or fullsize), because it is available out of the box on a mac (next to apache and php) and iOS … .

You could even go crazy copy over(extension available) your local pages to your host(or google app engine as a CDN) to serve only static files. Comments can be by disqus with JS….

SQLite is a nice little database, and works fine if your site is “read mostly” and you’re not getting too much traffic, which is the case with most websites. If you really want to go the “desktop app” route, you might look at the eXist-db native XML database , which can run in it’s own little Jetty server. You can still use your XSLT skills, and XQuery isn’t that hard to pick up.

I had a chat with Allen about this privately. Our company were thinking about the Symphony route, so a paid service for Oracle support would have been an option. Allen was looking into it, but I think it’s been left back in favour of getting 2.2 going, plus the lack of available support from my Oracle DBAs for assistance in understanding Oracle.

My employers have since forgotten all of this and the purse strings have been sown shut, so it may be a little way off.

While I was looking around, my only major notice of it being difficult was the install file being completely MySQL centric (and why wouldn’t it be), which, after trying to manipulate into an SQLite version (as I have no Oracle system to play with) I found it difficult to do.

There is no reason why it can’t be done, by replacing the class.mysql.php contents to allow other DBs, although the references to it would always be MySQL Class methods, so it’s not true abstraction.

IMHO Symphony 3 would be more affable to these things, and as Craig said in my previous post, it has the ASDC built-in, which rightly said is a great start. Also, Symphony 2.2 is that last version in the 2 line so if anyone wanted to do this now, I think forking the repo and giving it a go would be best. When I have some more time, I’m definitely going to try and make a SQLite version to get around the MySQL/Oracle battle at work. If I can get it to run fully from a file system, I’m laughing! And it’s all free!

If anyone has any Oracle knowledge and can look at this, I’m sure there’d be plenty of people on the edge of their seat…

I think issues about data abstraction were addressed on the last podcast. Craig and I were just discussing a related issue. If Symphony is going to move beyond MySQL, seems like it would be a pretty big deal.

Creating a DS that needs to eventually run SPARQL vs SQL seems like it would have implications to the interface; you’re not going to just abstract away that difference behind the scenes (nor would you want to).

The idea of database abstraction is something the team is very much interested in pursuing, but really it’s a question of manpower. A great deal of the core code, both in Symphony 2 and Symphony 3, relies on SQL specifically. Would take a whole lot of work to abstract it all away, and who knows how costly it would be…

This is still very much in discussion, but certainly not for version 2.

I didn’t think it would be to be fair. Like you say, it needs properly planning for a way off future version of Symphony 3.

I’d be quite happy to help out doing a conversion, if there was a ‘how to’ list, I’m still learning all that (at present) so wouldn’t want to guess and mess things up…

Personally, I’m quite happy with the way everything is (anticipating v3!) for my freelance work, the question was raised initially by myself from an employers perspective, or for clients who mainly use Oracle. But I’m good at persuading most clients that what I suggest (ie Symphony/PHP/MySQL) is for valid reasons.

The sky’s the limit though eh? With time and man-power!

Create an account or sign in to comment.

Symphony • Open Source XSLT CMS

Server Requirements

  • PHP 5.3-5.6 or 7.0-7.3
  • PHP's LibXML module, with the XSLT extension enabled (--with-xsl)
  • MySQL 5.5 or above
  • An Apache or Litespeed webserver
  • Apache's mod_rewrite module or equivalent

Compatible Hosts

Sign in

Login details