estene
January 27, 2021, 9:46pm
1
I followed these instructions to run Omeka Classic through Reclaim Cloud. As soon as I fill out the superuser form, the site crashes and defaults to this:
Zend_Db_Statement_Mysqli_Exception
Mysqli prepare error: Table ‘omekatest2.omeka_schema_migrations’ doesn’t exist
Zend_Db_Statement_Mysqli_Exception: Mysqli prepare error: Table 'omekatest2.omeka_schema_migrations' doesn't exist in /var/www/webroot/ROOT/application/libraries/Zend/Db/Statement/Mysqli.php:77 Stack trace: #0 /var/www/webroot/ROOT/application/libraries/Zend/Db/Statement.php(115): Zend_Db_Statement_Mysqli->_prepare('SELECT version ...') #1 /var/www/webroot/ROOT/application/libraries/Zend/Db/Adapter/Mysqli.php(388): Zend_Db_Statement->__construct(Object(Zend_Db_Adapter_Mysqli), 'SELECT version ...') #2 /var/www/webroot/ROOT/application/libraries/Zend/Db/Adapter/Abstract.php(479): Zend_Db_Adapter_Mysqli->prepare('SELECT version ...') #3 /var/www/webroot/ROOT/application/libraries/Zend/Db/Adapter/Abstract.php(794): Zend_Db_Adapter_Abstract->query('SELECT version ...', Array) #4 /var/www/webroot/ROOT/application/libraries/Omeka/Db.php(80): Zend_Db_Adapter_Abstract->fetchCol('SELECT version ...') #5 /var/www/webroot/ROOT/application/libraries/Omeka/Db/Migration/Manager.php(178): Omeka_Db->__call('fetchCol', Array) #6 /var/www/webroot/ROOT/application/libraries/Omeka/Db/Migration/Manager.php(268): Omeka_Db_Migration_Manager->_getAllMigratedVersions() #7 /var/www/webroot/ROOT/application/libraries/Omeka/Db/Migration/Manager.php(120): Omeka_Db_Migration_Manager->_getPendingMigrations(Object(DateTime)) #8 /var/www/webroot/ROOT/application/libraries/Omeka/Db/Migration/Manager.php(134): Omeka_Db_Migration_Manager->canUpgrade() #9 /var/www/webroot/ROOT/application/libraries/Omeka/Controller/Plugin/Upgrade.php(55): Omeka_Db_Migration_Manager->dbNeedsUpgrade() #10 /var/www/webroot/ROOT/application/libraries/Omeka/Controller/Plugin/Upgrade.php(39): Omeka_Controller_Plugin_Upgrade->_dbNeedsUpgrade() #11 /var/www/webroot/ROOT/application/libraries/Zend/Controller/Plugin/Broker.php(287): Omeka_Controller_Plugin_Upgrade->dispatchLoopStartup(Object(Zend_Controller_Request_Http)) #12 /var/www/webroot/ROOT/application/libraries/Zend/Controller/Front.php(928): Zend_Controller_Plugin_Broker->dispatchLoopStartup(Object(Zend_Controller_Request_Http)) #13 /var/www/webroot/ROOT/application/libraries/Zend/Application/Bootstrap/Bootstrap.php(105): Zend_Controller_Front->dispatch() #14 /var/www/webroot/ROOT/application/libraries/Zend/Application.php(384): Zend_Application_Bootstrap_Bootstrap->run() #15 /var/www/webroot/ROOT/application/libraries/Omeka/Application.php(73): Zend_Application->run() #16 /var/www/webroot/ROOT/index.php(23): Omeka_Application->run() #17 {main}
I’ve tried creating the table manually via PHPMyAdmin, but that creates a different issue (unknown column in field list). This doesn’t involve any plugins, so I’m not sure how to fix it.
So, this table should be created by the installer.
What tables do you have in your database after the installer runs? It looks like maybe it encountered an error somewhere?
estene
January 27, 2021, 9:58pm
3
That’s what I was thinking. I have 18 tables after the installer runs:
omeka_collections
omeka_elements
omeka_element_sets
omeka_element_texts
omeka_files
omeka_items
omeka_item_types
omeka_item_types_elements
omeka_keys
omeka_options
omeka_plugins
omeka_processes
omeka_records_tags
omeka_search_texts
omeka_sessions
omeka_tags
omeka_users
omeka_users_activations
OK, that’s the normal 18 tables that should get created upon install.
Is there a row in the omeka_users table for your initial user you created during the install? That’s the next step, and the one right after that is setting up the migrations table. It seems likely one of those steps failed. Filling in the omeka_options table is the last step; are there any rows in there?
A side question: did you see the “Success” message from the installer?
estene
January 27, 2021, 11:45pm
5
There isn’t a row in omeka_users for my initial user, but there are three in the omeka_options table:
html_purifier_is_enabled
html_purifier_allowed_html_elements
html_purifier_allowed_html_attributes
I didn’t see the Success message from the installer - it defaulted to this error page.
Did you maybe get an error page, then need to go change the .htaccess to enable error display, then go back and get the message you provided in your first post here? If so, there’s probably actually a different error message you’d gotten the first time around, which you just couldn’t see.
Try this: drop all the installed tables, then run the installer again.
estene
January 28, 2021, 2:19pm
7
Okay, I ran the installer again and received this error:
Fatal error: Uncaught ArgumentCountError: mysqli_stmt::bind_param() does not accept unknown named parameters in /var/www/webroot/ROOT/application/libraries/Zend/Db/Statement/Mysqli.php:203 Stack trace:
#0 /var/www/webroot/ROOT/application/libraries/Zend/Db/Statement/Mysqli.php(203): mysqli_stmt->bind_param('s', value: 'estene@upenn.ed...')
#1 /var/www/webroot/ROOT/application/libraries/Zend/Db/Statement.php(303): Zend_Db_Statement_Mysqli->_execute(Array)
#2 /var/www/webroot/ROOT/application/libraries/Zend/Db/Adapter/Abstract.php(480): Zend_Db_Statement->execute(Array)
#3 /var/www/webroot/ROOT/application/libraries/Zend/Db/Adapter/Abstract.php(756): Zend_Db_Adapter_Abstract->query('SELECT `omeka_u...', Array)
#4 /var/www/webroot/ROOT/application/libraries/Zend/Validate/Db/Abstract.php(350): Zend_Db_Adapter_Abstract->fetchRow(Object(Zend_Db_Select), Array, 2)
#5 /var/www/webroot/ROOT/application/libraries/Zend/Validate/Db/NoRecordExists.php(43): Zend_Validate_Db_Abstract->_query('estene@upenn.ed...')
#6 /var/www/webroot/ROOT/application/libraries/Omeka/Record/AbstractRecord.php(792): Zend_Validate_Db_NoRecordExists->isValid('estene@upenn.ed...')
#7 /var/www/webroot/ROOT/application/models/User.php(175): Omeka_Record_AbstractRecord->fieldIsUnique('email')
#8 /var/www/webroot/ROOT/application/libraries/Omeka/Record/AbstractRecord.php(385): User->_validate()
#9 /var/www/webroot/ROOT/application/libraries/Omeka/Record/AbstractRecord.php(531): Omeka_Record_AbstractRecord->isValid()
#10 /var/www/webroot/ROOT/application/models/Installer/Task/User.php(77): Omeka_Record_AbstractRecord->save(false)
#11 /var/www/webroot/ROOT/application/models/Installer/Default.php(88): Installer_Task_User->install(Object(Omeka_Db))
#12 /var/www/webroot/ROOT/application/models/Installer/Default.php(56): Installer_Default->_createUser()
#13 /var/www/webroot/ROOT/install/controllers/IndexController.php(61): Installer_Default->install()
#14 /var/www/webroot/ROOT/application/libraries/Zend/Controller/Action.php(516): IndexController->indexAction()
#15 /var/www/webroot/ROOT/application/libraries/Zend/Controller/Dispatcher/Standard.php(308): Zend_Controller_Action->dispatch('indexAction')
#16 /var/www/webroot/ROOT/application/libraries/Zend/Controller/Front.php(954): Zend_Controller_Dispatcher_Standard->dispatch(Object(Zend_Controller_Request_Http), Object(Zend_Controller_Response_Http))
#17 /var/www/webroot/ROOT/application/libraries/Zend/Application/Bootstrap/Bootstrap.php(105): Zend_Controller_Front->dispatch()
#18 /var/www/webroot/ROOT/application/libraries/Zend/Application.php(384): Zend_Application_Bootstrap_Bootstrap->run()
#19 /var/www/webroot/ROOT/install/install.php(48): Zend_Application->run()
#20 {main} thrown in /var/www/webroot/ROOT/application/libraries/Zend/Db/Statement/Mysqli.php on line 203
HenriD
January 28, 2021, 2:32pm
8
Just wanted to say I’m having the exact same issue while trying to install a brand new Omeka Classic 2.7.1. Really don’t understand where I’m making a mistake and the process fails.
1 Like
estene
January 28, 2021, 2:51pm
9
Looking at this error on other questions , it looks like it’s a PHP 8 issue?
Yes, this looks like a PHP 8 issue.
We have a fix for this and other PHP 8 compatibility changes in the works, but they’re not yet released.
I’d recommend that people stick to PHP 7.4 right now, with PHP 8 being a very recent major release.
estene
January 28, 2021, 5:57pm
11
I wrote about this on the Reclaim Cloud forum as well, but I was able to do this successfully with the following configurations:
Apache 2.4.46
PHP 7.4.13
MySQL CE 5.7.32
HenriD
January 29, 2021, 12:17pm
12
Thanks everyone, problem solved with PHP 7.4 as you suggested.
system
Closed
October 4, 2021, 9:46pm
13
This topic was automatically closed after 250 days. New replies are no longer allowed.