Installing Version 8 with existing Database


I wonder if anyone can help, I'm in the process of creating a site using Concrete5 (only the second one I've done so far) and tried updating the site to version 8. When doing this I receive the error "SQLSTATE[42S22]: Column not found: 1054 Unknown column 'sessionLifeTime' in 'field list' "

Due to this I tried exporting the database and doing a fresh install of version 8, which worked fine until I reinstalled the database from the previous version and then I got the same error.

As far as I can gather this is a reference to a column in the database which didn't exist in the previous incarnation. I've actually tried adding the column to the Sessions table, but then receive further errors.

Is there a simple solution to this that I am unaware of (I'm no php/sql expert by any means)?

Many thanks.

View Replies:
MrKDilkington replied on at Permalink Reply
Hi mikebenton,

I don't believe a 5.7 database export will work if used in a v8 site.

The recommendation for updating an existing 5.7 site is to update to the latest and then to 8.0.2.
wheatley replied on at Permalink Reply
Hi, thanks for the reply, sorry I forgot to mention that I had upgraded to prior to the 8.0.2 update
wheatley replied on at Permalink Reply
I didn't find a solution to this so resorted to a fresh install of 8.0.2 and new database and rebuilt the contents of the site, which fortunately aren't extensive at present.
StevieB replied on at Permalink Reply

I just thought I would add my own experience for anyone else finding this thread after having the same issue. I was updating a site from to 8.1.0.

Due to hosting my clients sites on a cloud (shared) hosting environment, I can only do manual updates because of a line in concrete>config>concrete.php (under White labeling) needing to be changed from 'handler' => 'file' to 'handler' => 'database' , otherwise Concrete5 just doesn't work.

First I tried uploading the concrete folder and replacing the original directory. This did not work and gave me the same SQLSTATE message you received. I was able to return to the previous installation simply by re-uploading the original concrete folder from my backup, always backup first kids!

Next I uploaded the concrete5-8.1.0 folder containing just the concrete folder into the updates folder and ran the update from the Dashboard with the same failure.
This time I had to go into the folder application>config> and rename the file update.php to broken.update.php and then go into updates and rename the concrete5-8.1.0 folder to broken.concrete5-8.1.0. This effectively put the site back to it's original working configuration. I was then able to delete update.php file and the v8 folder safely.

I have not figured out a way to safely update to version 8 yet but was at least able to recover to the previous version.

If anyone has figured out what the problem is so we can update I would love to know. I could just wipe the site and start again (not much in there yet), but that is a little too defeatist for me! ;)
WillemAnchor replied on at Permalink Reply
I am experiencing the same problem when trying to upgrade from to 8.2.1.

Did anyone find a solution for this ?
jackobean replied on at Permalink Reply
I know this is an old thread, but I figure if I am just now discovering this issue on one of my sites that others may as well.

To correct this specific issue I simply logged into my phpmyadmin and added a column named "sessionLifeTime" as an integer with max length of 10 to the "Sessions" table.

The next time I tried the update it completed successfully!

Hope this helps someone.
ymhymzk replied on at Permalink Reply
I had the same problem, but as you as wrote added 'sessionLifeTime' , so it solved. thanks!
losttheplot replied on at Permalink Reply
ALTER TABLE `Sessions` ADD `sessionLifeTime` INT UNSIGNED NOT NULL AFTER `sessionTime`;