Macrotone Blogs
Joomla & Database update experience.
With the need to update our test/demonstration site to the latest Joomla version there were a few steps we had to perform and I thought it might help to describe them here to aid others and act as a reference.
The system/database was running Joomla 4 with a MySQL database version 5.7, and a PHP version 5.1.
Because our host system did not permit a direct update of the MySQL database from version 5.7 to the latest they have avaiable (8.0), there were a few steps we had to go through.
1) We used phpadmin to perform an EXPORT of the 'old' database and create a file which we would use later.
2) We created a new database of the required database version 8.0.
3) We then performed an IMPORT of the file we created in step 1 above to load the database into our new database. It is worth noting here that we experienced a few minor problems with this last step. First we had to edit the file to change the lines attempting tp create and use the database to our new setup.
i.e. -- CREATE DATABASE IF NOT EXISTS `old database new` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;
-- USE `old user name`;
To:
USE `new user name`;
This then proceeded to load most of the data.
We next met a problem with creating two view, which happen to be part of a package we ourselves created. Not that the views themselves are a problem, but for some reason the import didn't like them.
i.e.
DROP TABLE IF EXISTS `xxxx_it_project_view1`;
CREATE ALGORITHM=UNDEFINED DEFINER=`o6321251`@`%` SQL SECURITY DEFINER VIEW `xxxx_it_project_view1` AS SELECT `B`.`id` AS `id`, `B`.`parent_id` AS `pid`, `C`.`level` AS `level`, `C`.`title` AS `title`, `C`.`access` AS `access` FROM (`xxxx_it_projects` `B` join `xxxx_it_projects` `C`) WHERE ((`B`.`lft` between `C`.`lft` and `C`.`rgt`) AND (`C`.`level` <> 0)) ORDER BY `B`.`lft` ASC, `C`.`lft` ASC`lft` ;
We are not familiar with the CREATE ALGORITHM statement but certainly the statement seems syntactically wrong near the end. Since we need to update/work upon the component we chose to ignore the statements and then using an editor load the rest of the file into the database via a SQL cut and paste.
The next step was to edit the Joomla database and change the settings to use the newly created database instead of the old one.
Then we had to modify the host site to use to use a later support version of PHP. i.e. 5.8.
Then we could proceed to update the version of Joomla, initially to version 5 and then finally to version 6.0
-------------------------------------------------
There still remains the update of the installed components, modules, plugins etc to update but the site is up and visible, even if there are a number of problems to resolve related to the changes made not only to Joomla versions but also PHP version updates.
The first of these is to remove any old pre-Jooma 6 site templates and default to the Cassiopia template.
Looking at the front end of the dev site a lot (most) of our old links from the menu resulted in a 404 message. We discovered that if one entered the self same link directly a page would be displayed. After some investigation we found that the SEF plugins were disabled for some reason. Enabling the plugins (baisc SEF and 4SEF which we use from Weeblr) resulted in the 404 messages going and either the pages were displayed or other errors, some of which we expected were now visible. The main 4SEF component was not enabled either for some unknown reason. I certainly do not recall disabling it or the plugins. Hmmmm. [As an aside we alos noticed that we were not using the latest version of 4SEF on our main site.]
When you subscribe to the blog, we will send you an e-mail when there are new updates on the site so you wouldn't miss them.
Comments