Where did dbtransfer.php go?

Where did dbtransfer.php go?

by Howard Miller -
Number of replies: 10
Picture of Core developers Picture of Documentation writers Picture of Particularly helpful Moodlers Picture of Peer reviewers Picture of Plugin developers
I was reading with interest about a tool for migrating MySQL databases to PostgreSQL. Supposedly in admin/dbtransfer.php

However, in 2.3 it's not there. Just a lonely language file for it.

Where did it go? I assume it didn't work...

EDIT:
Even more confused...

I found it in the 'admin tools' plugins (a group of plugins I didn't know existed). It's called 'Database Transfer'. However, I can't see any way to actually access those tools sad Where is the UI to actually run the thing. Am I being stupid?
Average of ratings: -
In reply to Howard Miller

Re: Where did dbtransfer.php go?

by Paul Holden -
Picture of Core developers Picture of Moodle HQ Picture of Moodle Workplace team Picture of Particularly helpful Moodlers Picture of Peer reviewers Picture of Plugin developers Picture of Testers

Yeah, there doesn't seem to be a UI for actually running the admin tools... however if you navigate to $moodle/admin/tool/dbtransfer/ you can run it from there smile

In reply to Paul Holden

Re: Where did dbtransfer.php go?

by Howard Miller -
Picture of Core developers Picture of Documentation writers Picture of Particularly helpful Moodlers Picture of Peer reviewers Picture of Plugin developers
Yep, thanks. Spotted that eventually. I wonder if it is an oversight that it got dropped from the experimental menu?
In reply to Howard Miller

Re: Where did dbtransfer.php go?

by Petr Skoda -
Picture of Core developers Picture of Documentation writers Picture of Peer reviewers Picture of Plugin developers
Hi, it is not visible because it is still experimental and not finished, sorry.
In reply to Petr Skoda

Re: Where did dbtransfer.php go?

by Howard Miller -
Picture of Core developers Picture of Documentation writers Picture of Particularly helpful Moodlers Picture of Peer reviewers Picture of Plugin developers
So, does that mean even more experimental than ordinary experimental.... ???

I'll get my coat big grin big grin
In reply to Howard Miller

Re: Where did dbtransfer.php go?

by Colin Fraser -
Picture of Documentation writers Picture of Testers

I am sorry, you will have to enlighten me here... I would have expected that if I took an SQL dump from a MySQL database and run it in PostGres, that I would be able to use the PostGres database with a minimum of fuss. I understood that SQL was sufficiently developed that it could make this kind of transfer without too many issues. The key here is SQL, and while there may be some angst around triggers, there should be no problems with tables indices and such. Am I correct, or rather, this is not so? 

In reply to Colin Fraser

Re: Where did dbtransfer.php go?

by Petr Skoda -
Picture of Core developers Picture of Documentation writers Picture of Peer reviewers Picture of Plugin developers
Eh, that would work only if older versions of MySQL obeyed SQL standards and did not allow NULLs in not-null columns; our log actions would not store non-standard sql commands as sql data; horrible Oracle would learn to make difference between nulls and empty strings; accent and case insensitive collations/comparison would work the same in all databases, etc. etc. etc.
In reply to Colin Fraser

Re: Where did dbtransfer.php go?

by Howard Miller -
Picture of Core developers Picture of Documentation writers Picture of Particularly helpful Moodlers Picture of Peer reviewers Picture of Plugin developers
That would be great... but there are all sorts of differences. For a start, the 'autoincrement' field is unique to MySQL.
In reply to Howard Miller

Re: Where did dbtransfer.php go?

by Colin Fraser -
Picture of Documentation writers Picture of Testers

Ahhh so while similaritites are supposed to be a part of SQL, ego and self-interest drive a sufficient number of variations to make any direct changeover difficult. In short, the advertising of each of the companies making a DBMS is considerably less than honest when they claim they are fully compliant with "SQL standards"... but who's "standards"? Their own?  

In reply to Colin Fraser

Re: Where did dbtransfer.php go?

by Howard Miller -
Picture of Core developers Picture of Documentation writers Picture of Particularly helpful Moodlers Picture of Peer reviewers Picture of Plugin developers
The ANSI standard possibly... but these things are either open to interpretation or get added to.
In reply to Colin Fraser

Re: Where did dbtransfer.php go?

by Simon Story -

You could argue that SQL is different from ever vendor because SQL was deficient in the first place.

In defence of SQL, it is quite old to begin with, at least in IT terms. The original creators probably didn't imagine how we are using it today. Imagine the problem of DBMS creators wanting to add a feature that is hard to describe (Geospatial data perhaps?) based upon the SQL specification.

So yes, each vendor has come up with their own variations for their own reasons.

At least SQL is sufficiently similar across vendors that applications like Moodle can abstract the database with enough success that when writing Moodle code that interacts with the database you can, within reason, don't need to worry to much about type of database the Moodle installation is using.