Recent Topics

Database schema is not up to date!

Started by on Mar 27, 2017 – Contents updated: Apr 11, 2017

Mar 27, 2017 11:42    

Hi all

This is my first time in this forum, so apologies if my netiquette is a little out.

I've been using B2Evolution successfully for some time to run my blog, as it was a standard offering from my ISP. The blog is at http://www.champ.org.uk/Racing/blog1, and if you go there you'll see that it is currently reporting the error "Database schema is not up to date!"

This error appeared to come out of nowhere - I was not aware that I'd changed anything, and then one day last month it started reporting this error. The ISP hosting the service has referred me "to the vendor" :-(

The installation of B2Evolution reports version 6.8.7.

I've successfully taken a backup of the database. I could uninstall and re-install the application, but am worried that I won't be able to restore the several years of blog posts that I have in the database.

Can anyone help, please?

Thanks, Neal

Mar 27, 2017 12:00

I should have added the detail of the message:

Database schema is not up to date!
You have schema version «12010», but we would need «12160».

Mar 28, 2017 00:56

Hi nealchampion
Deleted as irrelevant after looking at site

I had the same problem after 6.7.8 see my post above http://forums.b2evolution.net/repeated-upgrade-failure
it may be the same issue. The install folder had an inappropriate permission which my host refused access too. On the last auto update the /install/ directory had a 775 permission which is vulnerable so the host wouldn't allow files in their to be accessed, which is required for the updating of the database which is carried out from there.

There were other bad permissions too but that's another story, how the permission became 775 is a mystery when it should be 755

As I had access to my host via ftp I changed the permissions to 755 and the final database update went ok

Mar 28, 2017 00:59

@nealchampion welcome to the forums! We will try to help you.

It's not normal that you suddenly started to get redirected to that page, the code must be changed in order to do that. How did you installed b2evolution in the first place? Did you use an assistant as Softaculous or Fantastico (some providers include them by default)?

However, if you are sure that you have a backup of the database, it would be safe to execute the upgrade by following the instructions of the same page where your site is stuck right now.

Mar 28, 2017 01:02

Just checked your site and it states you do not have a /sample.htaccess file , can you check. Do you have ftp access to your site?

Looks like your problem is not related to mine so deleted crossed out earlier stuff

I noticed form your site that the some database tables needed to be utf8 which, which was done.

If you have access to the files change the install directory name as it is accessible to all and sundry on line.

Mar 28, 2017 11:02

I went to the site and tried to see what the problem was. As it was live and looked like the install page was asking to be updated I thought it might still be possible so I tried it then said there were tow problems. I that the some of the tables were not ut8 and that there was a htaccess file missing that caused a fatal error error

I tried the install option to see if it was the same problem I ha, bascally nothing would happen but a 503 error but instead it update the database to utf8 I think as that message disappeared but he htaccess one remained.

Mar 28, 2017 14:10

@mgsolipa wrote earlier:

@nealchampion welcome to the forums! We will try to help you.

It's not normal that you suddenly started to get redirected to that page, the code must be changed in order to do that. How did you installed b2evolution in the first place? Did you use an assistant as Softaculous or Fantastico (some providers include them by default)?

My ISP uses Installatron

Mar 28, 2017 14:11

@mgsolipa wrote earlier:

However, if you are sure that you have a backup of the database, it would be safe to execute the upgrade by following the instructions of the same page where your site is stuck right now.

Many thanks - that link previously gave me a 404, but is working now, so I can only assume that my ISP has changed something around the Installtron set up

Mar 28, 2017 14:14

@amoun wrote earlier:

Just checked your site and it states you do not have a /sample.htaccess file , can you check. Do you have ftp access to your site?

I do have FTP access. I've tried the upgrade, and get the same message re sample.htaccess file. But I've looked, and the file is there, in ../blog/admin. I copied it up a level (to ../blog/), but still get the same message. What is the "base folder" that the error message refers to?

Mar 28, 2017 14:18

@nealchampion wrote earlier:

@mgsolipa wrote earlier:

However, if you are sure that you have a backup of the database, it would be safe to execute the upgrade by following the instructions of the same page where your site is stuck right now.

Many thanks - that link previously gave me a 404, but is working now, so I can only assume that my ISP has changed something around the Installtron set up

And I've just upgraded to v6.8.8, and now the installer link gives a 404 again.

I wonder if I can do a rollback...

Mar 28, 2017 16:23

OK, I've spent half a day noodling around...latest update (for my benefit, as much as anyones)

I've got back-ups of my install, and of the database, on my local machine.

I ended up installing version 6.8.2, and managing to get that to point to my old existing database. This time it reported that the same schema problem, but complained I had scheme 12010, but needed 12030 (I think) i.e. it was closer to the schema version it expected. I thought I was on to something.

I then installed version 6.7.7, and on the install asked it to use the existing database. But now it just says that there's no content there, even tho it is pointing to the correct db (I checked).

I'll clear down again, do an empty install of 6.7.7, and then point it at the db (as I managed to do in paragraph 2).

Mar 28, 2017 17:09

@nealchampion wrote earlier:

I'll clear down again, do an empty install of 6.7.7, and then point it at the db (as I managed to do in paragraph 2).

And here's where I've ended up:

  • install version 6.7.7, point it at my DB, get schema error message: "have schema version «12010», but need «11805»"
  • upgrade 6.7.7 to 6.8.2 (the next version), get error: "have schema version «12010», but we would need «12130»"

So I seem to have a schema version (12010) which matches a version of B2Evolution which is no longer available.

Is there any list of software versions versus database schema versions?

And does anyone have any other ideas?

Mar 28, 2017 17:49

@nealchampion the problem is you're trying to downgrade your site right now, that's not a good idea.

Can you please leave the site at the same status it was at the moment you started this post? I just want to check the output of the upgrade process.

Thank you.

Mar 29, 2017 23:07

Unfortunately, Installatron did an automatic update, so now its at at v6.8.8-stable

The link to the installer, which points to http://www.champ.org.uk/race/install/index.php, gives a 404 again. I don't know why a fresh install (which is what I did yesterday, to this location) doesn't have an /install directory in it, but it doesn't

Apr 01, 2017 12:50

@nealchampion Can you confirm that there is an index.php file inside the install directory?

We need to be able to go back to the same status the site was when you started this post.

Apr 03, 2017 00:26

@mgsolipa wrote earlier:

@nealchampion Can you confirm that there is an index.php file inside the install directory?

We need to be able to go back to the same status the site was when you started this post.

There isn't an install directory! And this from a fresh install.

I've uninstalled and re-installed B2Evolution, so I can't easily go back. However, I do have a back-up of the installation from when I first had the problem, and there isn't an install directory in that backup either.

Apr 03, 2017 23:21

However, I do have a back-up of the installation from when I first had the problem, and there isn't an install directory in that backup either.

@nealchampion I remember to have navigated into the install folder the first time I visited your page, so it had to somehow be there.

Can you restore your backup, and add the install folder included in this release: https://github.com/b2evolution/b2evolution/releases/tag/6.8.7 (you mentioned 6.8.7 was your version)?

Apr 05, 2017 19:45

I've restored my backup, but it didn't have an install directory in it. None of the fresh installs had an install directory either. Although, I agree, I did see the install page originally.

Anyway, I created an /install directory, and uploaded the files from the repo on github that you linked too - now at least I have an install repair page. It still complained about sample.htaccess not being in the root directory, but I proceeded anyway. (Note: I also selected the upgrade UTF-8 option, but everytime it did it, it still said it needed doing] I selected the upgrade option, and it errored when trying to rename 2gb_antispam to 2gb_antispam__keyword, saying the table already existed.

So then I went into the SQL utility and dropped table 2gb_antispam__keyword. The upgrade ran a little further, but with the message "Database schema not up to date" - now saying I have 12160 and need 12161. The 'install' link seems to be nested, as it tries to link to http://www.champ.org.uk/race/install/install/index.php, which obviously gives a 404.

I now have two installations of B2Evolution,which should be at www.champ.org.uk/Racing/blog1/ and www.champ.org.uk/race/. Under the first one (which was the original URL), the site seems to be back, but all the posts are missing - which is several years worth!

I have backups, so what do I need to do to restore my content?

Apr 06, 2017 00:21

That behaviour of the installer, loading itself again in the middle of the upgrade process, is very weird. I already sent you a private message, please see.

In the meantime, regarding http://www.champ.org.uk/Racing/blog1/, do you see any post listed at the back-office.

Apr 06, 2017 00:33

As suggested by mgsolipa, I've attached my zipped database file (which is just a huge SQL script) here

If someone here can upgrade it for me that would be brilliant!

Apr 06, 2017 00:50

All right, I though you would send it on the same PM ;)

I'm on this right now.

Apr 06, 2017 01:22

All right, I already have your sites working locally.

Some questions to try the database I will send you works at the first attempt:

1) After many tests, what would be the real URL of your site (s), out of any of those further tests that you have done since the issue appeared.
2) There are two sites in the DB. They correspond to this URL: http://www.champ.org.uk/Racing, right?
3) Are there files blog1.php and blog2.php in the base folder of your site?
4) I guess http://www.champ.org.uk/race/ use a different database, right?

Apr 06, 2017 08:42

Oh, I recognise that! Thanks

OK, to answer your questions:

  1. The original 'real' URL of the site was http://www.champ.org.uk/Racing; although the blog always appeared under http://www.champ.org.uk/Racing/blog1/ - I think this was an error of mine when I first started using B2Evolution. I have no need to have blog1' in the URL
  2. The second site, http://www.champ.org.uk/race/ was a fresh install that I did, and tried to connect to the original DB.
  3. There was a blog1.php in the base folder, and I have a backup of that.
  4. According to the B2Evolution admin page, http://www.champ.org.uk/race/ is connected to the same database (champ_Racing01), so I don't know what it is behaving as if different. That install reports version 6.8.8 of B2Evolution

Many, many thanks for your help with this!

Apr 08, 2017 15:46

@nealchampion please find the attached file, it's your database upgraded to version 6.8.8.

Restore it in your server and try to load the page. Both collections remain pointed to stub files blog1.php and blog2.php, so maybe you need to restore them from your backup too.

If you don't mind, please keep the user we created and we can help you to finish the configuration, if needed. You can delete the user after that.

Apr 10, 2017 11:22

@mgsolipa wrote earlier:

@nealchampion please find the attached file, it's your database upgraded to version 6.8.8.

Restore it in your server and try to load the page. Both collections remain pointed to stub files blog1.php and blog2.php, so maybe you need to restore them from your backup too.

If you don't mind, please keep the user we created and we can help you to finish the configuration, if needed. You can delete the user after that.

That is fantastic! It's working again now, at http://www.champ.org.uk/race/ - thank you so much for your help.

Is there any explanation of what happened with the database upgrade? Is there anything I should do to try and avoid this happening in the future?

Thanks again for your help!

Neal

Apr 11, 2017 10:31

@nealchampion honestly, I didn't do anything else but the regular upgrade process, using your database in my local computer. I think this was a test, re-tests, back and forth situation and it's difficult to know what really happen.

The first thing I would suggest is figure out why the site was auto-upgraded without your control. I guess it's due to the Installatron you mentioned before, but it's something you need to confirm with your provider. As far as I know you even lost your stub file blog1.php.

The following step, as mentioned by @amoun, now the site is already back on line, is to delete the install folder. Maybe you want to keep a local copy of it, just in case you need it in the future.

In addition to above, there is a link at the header of your site which points to a 404 error (http://www.champ.org.uk/race/blog2.php). That is the second collection in your site and you should add the stub file blog2.php, exactly as you did with blog1.php, to get it working.

As an option to above, stub files are not actually needed anymore. You could configure your collections to work without them (http://b2evolution.net/man/collection-base-url-settings - i.e.: use just blog in Relative to baseurl). So, your final URL could be: http://www.champ.org.uk/race/blog.

Last but not least, remember that we created an user account at your site, so feel free to delete it, change its email and password, or whatever you want.

Regards!


Form is loading...

powered by b2evolution – This forum is powered by b2evolution CMS, a complete engine for your website.