cancel
Showing results for 
Search instead for 
Did you mean: 

Huge Kafkian process to upgrade 2.1 CE to 3.2 C.E (UNSOLVED)

sidi
Champ in-the-making
Champ in-the-making
Apreciated friends from de Forum.

We have been using Alfresco since 2006, and every day is more dificult to find responses -and I mean solutions- not more delaying answers or go to enterprise edition from the Engeniers on the Community place.

I don't know if many of you have been strugling as much as we are still doing to upgrade my Alfresco to a modern version.

What I would like to know, if someone kindly responses is this:

We have Alfresco CE 2.1 with Oracle 10G.

For having community support we are going to migrate the DB to MYSQL.

We need to know exactly which steps are necesary for.

Migrate de database in Alf 2.1 from Oracle  to MYSQL I supose Alfresco should improve a simple way, do to their  decission of not more Oracle support. It was legal when we started with de product. With a standard conversion tool was imposible to do it. Which you suggest to use?

Second which is the stable version path for upgrading to 3.2/3.4 in de community edition, we've succeded from 2.1 to 3.0 Labs with an empty MYSQL DB no more.

In the way we crashed with innumerable problems to 3.4 directly to 3.2 to 3.2r2 to 3.0 etc… etc… etc…

We need desperately clarity and help in the process.

Best Regards.
3 REPLIES 3

loftux
Star Contributor
Star Contributor
Stating the obvious: Do all this in test environment first!

For conversion from Oracle to MySQL:
Since you are on a pre 3 version, complete repository export and import is available.
http://wiki.alfresco.com/wiki/Export_and_Import
That way Alfresco itself will take care of having all the right stuff in the database

Navigate to the Administration Console.
Select Export.
Enter the following information:
Package Name: Export
Destination: the space where the ACP export files will be created, e.g. Company Home.
Export From: Select ‘Complete Repository’
Run export in the background: If this option is selected the export will be performed in the background and results may not appear immediately.
NOTE: The files are saved within Alfresco itself, so if your repo is very large, you it may take a long time, and lots of space.

To Bootstrap new repository (that wiht mysql), first download these files
Export_spaces
Export_spaces_archive 
Export_system.
Export_systeminfo.xml
Export_users.acp
Export_versions.acp

Now prepare you new repository with mysql. It should not have been started before this. It MUST be the same version you just exported with, i.e. reconfigure the current install to point to an empty mysql db and empty alf_data folder.
In the extension folder, find and rename restore-context.xml.sample to restore-context.xml
Create a subfolder restore, put your Export_<name> files in that folder. It should map to the path in restore-context.xml

Start your repository, your old content will now be imported, running with mysql.

Upgrading:
You should follow upgrade procedures outlined in http://wiki.alfresco.com/wiki/General_Upgrade_Process
There are no supported upgrade paths for Community, you will have to try yourself. If you get errors, post them here in full (in the code tag please).
What I have done is setting up something like
/opt/alfresco/2.1
/opt/alfresco/Labs3
/opt/alfresco/Labs3a
/opt/alfresco/3.2
/opt/alfresco/3.4d

Each pointing to the same db, and alf_data. Then start them in order. For each successful upgrade, stop and start next.
There are many releases in between those listed, this is NOT to say this is the upgrade path for you, I just made them up as an example. Select a release you want to try to upgrade to, if that fails, try an earlier release. If you don't find a release between what you have currently upgraded to and the one failing, post back here with the error. It will be time consuming, but eventually you have the upgrade path you want. If you do a setup as suggested, you will easily be able to repeat it for production upgrade.

sidi
Champ in-the-making
Champ in-the-making
Thanks a lot Loftux for your fast reply.

As you say the obvius has already been done. Our repository is only  28G. We've intented in many ways to export using de .acp utility. Even two weeks later  no export.acp apears in the destination space selected. Simply doesent works. The total size of the repository for data is 94G. Maybe we need more?.

Another aproach we intented was using webdav, but had two issues the first one is that de normal head metadata is not passed but we've found in a post how to solve it.

But the big problem is that custom types metadata are imposible to pass from the Alfresco in oracle to the other in mysql. The only thing we colud do was assigning diferent custom types to nodes using rules in the diferent spaces,  but with empty metada information.

So the idea of a direct D.B. conversion, and then point to it in reposity.properties, seems  faster for converting Alf 2.1 Oracle to Alf2.1 Mysql in production and then start Upgrading in fases.

We can't have our production Alfresco sttoped for migration a lot of time. By the time 15 diferent aplications use every day  are inserting and extracting data in Alfresco most of them with webservices and Alfresco Content Management Language. 

The good thing about webdav is that we could pass data in a sheduled way, puting in production the diferent aplications we have and testing the new endpoints and webservices one by one before targetting to the new alf_data and D.B.
Obviusly we could do this with import/export solution also,  if it worked.

Another thing that confusess me is what you say about not suport for upgrading in Community version of course is not suport for that but long time ago and for a lot of things more why do you think we are stil in 2.1. You know what I think once Alfresco got enough cautive enviroments tries to emulate ECM2(There origing), Vignette, etc.. Brilliant strategy. Well I have to accept that after taking  the decision to go with Alfresco in my company in 2005 join the list of fool incautious got trapped.

Best regards.

loftux
Star Contributor
Star Contributor
You may succeed with using the command line export tool, export ending up outside of alfresco store. Maybe this can be of help http://forums.alfresco.com/en/viewtopic.php?t=16145

But since your repo is very large, a direct db conversion may be best. Have you looked att postgresql? Its a closer match to Oracle, and the db conversion may be easier. Not sure how good postgresql support was in 2.1 but in the latest version it is very good. Both postgresql and mysql is stated as supported in Community edition.