External Database Support?

Asked by bigbrovar

Am system adminnitrator of a university in my country and i was wondering if the tool is appropriate for use in a University setting. it seem to use its own embedded database, is there a way to configure it to use say mysql or postgres? thanks

Question information

Language:
English Edit question
Status:
Answered
For:
SchoolTool Edit question
Assignee:
No assignee Edit question
Last query:
Last reply:
Revision history for this message
Tom Hoffman (tom-hoffman) said :
#1

Generally, we are not aiming at universities, and if is likely a university would need a number of modifications, depending on the structure of the school.

SchoolTool uses the Zope Object Database (ZODB), which our friend Martijn Faassen describes well:

"The ZODB is a powerful object database for Python objects. It's very mature - it's been around for more than a decade. It is transactional, has advanced features like clustering (ZEO), blob support, and yes, it can be used independently from Zope. Zope 2, Zope 3 and Grok all use the ZODB as its default data storage, and it's seen a lot of battle testing."

http://faassen.n--tree.net/blog/view/weblog/2008/06/20/0

Revision history for this message
pedro.e.gordo@gmail.com (pedro-e-gordo) said :
#2

I was able to startup SchoolTool (in Ubuntu) connected to a MySQL server.

Didn't do much testing but I was able to use the application.

Search for RelStorage and you will find some (not much) information how you can put ZODB working with Postgres, MySQL or Oracle.

Attention: You will need to patch (or install) ZODB in order for this to work.

Steps:

1. Install SchoolTool normally
2. Install RelStorage and patch ZODB
3. Install MySQL (if not yet installed)
4. Create a new database and grant privileges
5. STOP SCHOOLSERVER
6. Edit a zodbconvert config file and execute it
7. Change /etc/schooltool/schooltool-2009/main.conf to use <relstorage> and <mysql> (remove mount-point entry)
8. Startup SchoolTool

Ex ( /etc/schooltool/schooltool-2009/main.conf ):
...
<zodb>
<relstorage>
    <mysql>
      db schooltool
      user schooltool
      passwd schooltool
      host localhost
   </mysql>
</relstorage>
</zodb>
...

By-the-way, we drop this approach and decide to use the original FileStorage.

Revision history for this message
Tom Hoffman (tom-hoffman) said :
#3

Hi Pedro,

Yes, that should work, but I don't know what the advantage would be.

Can you help with this problem?

Provide an answer of your own, or ask bigbrovar for more information if necessary.

To post a message you must log in.