• This site uses cookies. By continuing to use this site, you are agreeing to our use of cookies. Learn more.

XF 1.2 Help with Mysqli prepare error

#1
Last night, all the sudden this error happened. I didn't do anything (install, deinstall, update or so). Just it happened and I don't know why. I can't access forum at all.

An exception occurred: Mysqli prepare error: Table 'forum2.xf_deferred' doesn't exist in /home/admin/malezeljeznice.net/forum/library/Zend/Db/Statement/Mysqli.php on line 77

  1. Zend_Db_Statement_Mysqli->_prepare() in Zend/Db/Statement.php at line 115
  2. Zend_Db_Statement->__construct() in Zend/Db/Adapter/Mysqli.php at line 381
  3. Zend_Db_Adapter_Mysqli->prepare() in Zend/Db/Adapter/Abstract.php at line 478
  4. Zend_Db_Adapter_Abstract->query() in Zend/Db/Adapter/Abstract.php at line 825
  5. Zend_Db_Adapter_Abstract->fetchOne() in XenForo/Model/Deferred.php at line 148
  6. XenForo_Model_Deferred->updateNextDeferredTime() in XenForo/Dependencies/Abstract.php at line 183
  7. XenForo_Dependencies_Abstract->preLoadData() in XenForo/FrontController.php at line 127
  8. XenForo_FrontController->run() in /home/admin/malezeljeznice.net/forum/index.php at line 13
Also one thing that is strange is in phpmyadmin in 9 of 10 time drops connection only for database of forum and other 15 databases works OK. So I can't even see tables or do anything in phpmyadmin with this databse. Tables are there (I checked in root folder and all files are there but there is some problem with forum db, but don't know what)


Important thing is that I didn't touch anything so error and problem just occurred from itself.

Please help!
 

Jeremy

Well-known member
#2
Does the error continually occur? Or has it been just the once?

If you can, go to the upgrader and see if it informs you there is an upgrade to perform.
 
#5
I can't access any part of forum.

When try to go to /install i get this error

Mysqli statement execute error : Lost connection to MySQL server during query

  1. Zend_Db_Statement_Mysqli->_execute() in Zend/Db/Statement.php at line 317
  2. Zend_Db_Statement->execute() in Zend/Db/Adapter/Abstract.php at line 479
  3. Zend_Db_Adapter_Abstract->query() in Zend/Db/Adapter/Abstract.php at line 753
  4. Zend_Db_Adapter_Abstract->fetchRow() in XenForo/Model/User.php at line 418
  5. XenForo_Model_User->getUserByName() in XenForo/Model/User.php at line 460
  6. XenForo_Model_User->getUserByNameOrEmail() in XenForo/Model/User.php at line 1237
  7. XenForo_Model_User->validateAuthentication() in XenForo/Install/Controller/Upgrade.php at line 291
  8. XenForo_Install_Controller_Upgrade->actionLogin() in XenForo/FrontController.php at line 337
  9. XenForo_FrontController->dispatch() in XenForo/FrontController.php at line 134
  10. XenForo_FrontController->run() in /home/admin/malezeljeznice.net/forum/install/index.php at line 18

I belive that problem is with SQL and not directly with forum, but my VPS support is not helping me much so maybe you could give me some tips where to look for problem. It really frustraits me. I have 15 more databases and all of them works, except this for forum. I just don't know what could happened.
The most puzzling is that I didn't touch anything to brake down server or forum code, but it just happened without any warning or result of action I did. (
 

Brogan

XenForo moderator
Staff member
#6
If this error happened randomly then you need to contact your host as it sounds like a server problem.

Tables don't just disappear so if xf_deferred is missing and you didn't make any changes then something has gone drastically wrong on the server.
 
#7
After repairing some taibles and trying to access /install i get

Server Error
Mysqli statement execute error : Got error -1 from storage engine

  1. Zend_Db_Statement_Mysqli->_execute() in Zend/Db/Statement.php at line 317
  2. Zend_Db_Statement->execute() in Zend/Db/Adapter/Abstract.php at line 479
  3. Zend_Db_Adapter_Abstract->query() in XenForo/Model/DataRegistry.php at line 164
  4. XenForo_Model_DataRegistry->set() in XenForo/Model/Option.php at line 745
  5. XenForo_Model_Option->rebuildOptionCache() in XenForo/Application.php at line 732
  6. XenForo_Application->loadOptions()
  7. call_user_func_array() in XenForo/Application.php at line 921
  8. XenForo_Application->lazyLoad() in XenForo/Application.php at line 952
  9. XenForo_Application::get() in XenForo/Model/User.php at line 908
  10. XenForo_Model_User->getVisitingGuestUser() in XenForo/Visitor.php at line 419
  11. XenForo_Visitor::setup() in XenForo/Install/Controller/Upgrade.php at line 50
  12. XenForo_Install_Controller_Upgrade->_setupSession() in XenForo/Controller.php at line 304
  13. XenForo_Controller->preDispatch() in XenForo/FrontController.php at line 336
  14. XenForo_FrontController->dispatch() in XenForo/FrontController.php at line 134
  15. XenForo_FrontController->run() in /home/admin/malezeljeznice.net/forum/install/index.php at line 18
is this telling you something.

And really xf_deferred is missing on server. What I can do about it? Is there any way to fix it (create it manualy?)
 
#9
Also little update:
VPS did something to db and it was down for few minutes, now it is up again and running some parts that didnt work before but now I get this:

when try to access /install

Mysqli prepare error: Incorrect information in file: './forum2/xf_data_registry.frm'



and this when try to access frontend of forum
An exception occurred: Mysqli prepare error: Incorrect information in file: './forum2/xf_option.frm' in /home/admin/malezeljeznice.net/forum/library/Zend/Db/Statement/Mysqli.php on line 77

I know that frm is extension of physical table file, but how serious is this and could it be fixed or not?

I am communicating with support but hope that also someone heir could help with suggestions.
 
#11
OK people tnx for your replys.

Right now i managed to pull out of this problem, installed forum in new place and now one-by one tables dumping from old db to new one. I know that they are all related in some way but could someone say exactly what tables I should dump and import if I want to keep all data from old db and which ones are not so important.

For example I imported allready

users,
froums,
posts,
nodes,
premmisions

And things are working, in admin panel I see correct statistics, I can login with old username and password but only cant see forums listed, but in node list I see that they are all there. So I guess that I missed few tables with premissions (I did import user premissions).
Also did chache rebuild.

So would it be problem if someone could provide me with list of tables that I need if I want to keep old data.

I don't minde for addons, template modification and other not so important things ( I would like to get them allm but if they are lost it is ok.). I need only data and funtionality back.
 

Brogan

XenForo moderator
Staff member
#12
You would need most of the tables such as attachment*, conversation*, forum*, node*, permission*, profile*, thread*, user*, plus others most likely.

Even if you do manage to get it working, it is likely that there will be incomplete or corrupt data which may be difficult to resolve.
 
#13
hey guys just one more question. I know it is answered few times but want to be sure to not destroy this little what I managed to save and setup again.

I did install xenForo in new folder (called "forumNEW"). My "old" forum with broken database was installed in folder called "forum".
Now after I did set up everyting in this new forum would it be OK to rename folder "forumNEW" into "forum" and then change in xenForo settings of new forum name of main directory. Will it make any problems?

I want to do it this way so users could access forum via old links (forum.mydomain.net and mydomain.net/forum)

Is there anything elese I should set or watch for while before/after renaming folder.
 
#15
Hey, i had this same problem. (not enough space) Would it work if i just delete corrupted (current) MYSQL file and upload week older backup file in stead?

I can access almost all parts of my forum, but not nodelist and stats ("front page").