Omeka is not displaying URLs from the database

I am attempting to migrate an Omeka installation from an ancient CentOS 6 server to a shiny new Ubuntu 22.04 server. This involved significant upgrades to various system libraries from what Omeka was running on, in addition to a move from Omeka 2.1.4 to Omeka 3.1. The system “works”, as actual pages are displayed and “some” information is pulled from the database, but the only public-facing page that works is the home page. All links in the navigation menu and links sourced from the data base (item pages) do not display. The error thrown is as follows:

Zend_Db_Statement_Mysqli_Exception: Mysqli prepare error: Unknown column ‘required’ in ‘where clause’ in /var/www/html/application/libraries/Zend/Db/Statement/Mysqli.php:77
Stack trace:
#0 /var/www/html/application/libraries/Zend/Db/Statement.php(115): Zend_Db_Statement_Mysqli->_prepare()
#1 /var/www/html/application/libraries/Zend/Db/Adapter/Mysqli.php(388): Zend_Db_Statement->__construct()
#2 /var/www/html/application/libraries/Zend/Db/Adapter/Abstract.php(479): Zend_Db_Adapter_Mysqli->prepare()
#3 /var/www/html/application/libraries/Omeka/Db.php(80): Zend_Db_Adapter_Abstract->query()
#4 /var/www/html/application/libraries/Omeka/Db/Table.php(647): Omeka_Db->__call()
#5 /var/www/html/plugins/UserProfiles/models/Table/UserProfilesType.php(32): Omeka_Db_Table->fetchObjects()
#6 /var/www/html/plugins/UserProfiles/UserProfilesPlugin.php(167): Table_UserProfilesType->getIncompleteProfileTypes()
#7 /var/www/html/application/libraries/Omeka/Plugin/Broker.php(268): UserProfilesPlugin->filterGuestUserLinks()
#8 /var/www/html/application/libraries/globals.php(324): Omeka_Plugin_Broker->applyFilters()
#9 /var/www/html/plugins/GuestUser/GuestUserPlugin.php(169): apply_filters()
#10 /var/www/html/application/libraries/Omeka/Plugin/Broker.php(268): GuestUserPlugin->filterPublicNavigationAdminBar()
#11 /var/www/html/application/libraries/globals.php(324): Omeka_Plugin_Broker->applyFilters()
#12 /var/www/html/application/libraries/globals.php(2745): apply_filters()
#13 /var/www/html/application/views/scripts/common/admin-bar.php(22): nav()
#14 /var/www/html/application/libraries/Omeka/View.php(114): include(‘…’)
#15 /var/www/html/application/libraries/Zend/View/Abstract.php(889): Omeka_View->_run()
#16 /var/www/html/application/libraries/Zend/View/Helper/Partial.php(109): Zend_View_Abstract->render()
#17 /var/www/html/application/libraries/Zend/View/Abstract.php(350): Zend_View_Helper_Partial->partial()
#18 /var/www/html/application/libraries/globals.php(1681): Zend_View_Abstract->__call()
#19 /var/www/html/application/views/scripts/functions.php(24): common()
#20 /var/www/html/application/libraries/Omeka/Plugin/Broker.php(154): admin_bar()
#21 /var/www/html/application/libraries/globals.php(188): Omeka_Plugin_Broker->callHook()
#22 /var/www/html/themes/berlin/common/header.php(43): fire_plugin_hook()
#23 /var/www/html/application/libraries/Omeka/View.php(114): include(‘…’)
#24 /var/www/html/application/libraries/Zend/View/Abstract.php(889): Omeka_View->_run()
#25 /var/www/html/application/libraries/Zend/View/Helper/Partial.php(109): Zend_View_Abstract->render()
#26 /var/www/html/application/libraries/Zend/View/Abstract.php(350): Zend_View_Helper_Partial->partial()
#27 /var/www/html/application/libraries/globals.php(1681): Zend_View_Abstract->__call()
#28 /var/www/html/application/libraries/globals.php(1695): common()
#29 /var/www/html/themes/berlin/items/show.php(1): head()
#30 /var/www/html/application/libraries/Omeka/View.php(114): include(‘…’)
#31 /var/www/html/application/libraries/Zend/View/Abstract.php(889): Omeka_View->_run()
#32 /var/www/html/application/libraries/Zend/Controller/Action/Helper/ViewRenderer.php(912): Zend_View_Abstract->render()
#33 /var/www/html/application/libraries/Zend/Controller/Action/Helper/ViewRenderer.php(933): Zend_Controller_Action_Helper_ViewRenderer->renderScript()
#34 /var/www/html/application/libraries/Zend/Controller/Action/Helper/ViewRenderer.php(972): Zend_Controller_Action_Helper_ViewRenderer->render()
#35 /var/www/html/application/libraries/Zend/Controller/Action/HelperBroker.php(277): Zend_Controller_Action_Helper_ViewRenderer->postDispatch()
#36 /var/www/html/application/libraries/Zend/Controller/Action.php(527): Zend_Controller_Action_HelperBroker->notifyPostDispatch()
#37 /var/www/html/application/libraries/Zend/Controller/Dispatcher/Standard.php(308): Zend_Controller_Action->dispatch()
#38 /var/www/html/application/libraries/Zend/Controller/Front.php(954): Zend_Controller_Dispatcher_Standard->dispatch()
#39 /var/www/html/application/libraries/Zend/Application/Bootstrap/Bootstrap.php(106): Zend_Controller_Front->dispatch()
#40 /var/www/html/application/libraries/Zend/Application.php(384): Zend_Application_Bootstrap_Bootstrap->run()
#41 /var/www/html/application/libraries/Omeka/Application.php(73): Zend_Application->run()
#42 /var/www/html/index.php(23): Omeka_Application->run()
#43 {main}

A couple more notes…I am not the original admin on this system and the original admin wrote/modified two plugins that we no longer need, but has abandoned development on them. I currently have one of the plugins disabled at it causes an error that I think is the result of updates to the Geolocation plugin.

The other known issue is that once the database is imported, it requires an update, which fails because of zero value dates. I removed the requirements based on another post to this forum and the database “updates” instantly. I can then add the ZERO_DATE entries back into the config.

I’ll be glad to provide any other information required to troubleshoot…I’m sure I’m missing some crucial information to effectively troubleshoot, but didn’t want to write a novel in my first post.

The message here indicates a problem with the UserProfiles plugin. Does disabling it help?

That does fix the problem…if we are not adding new users to the system, can we leave the UserProfiles plugin disabled, or I’m game to try and troubleshoot further…what might you need to facilitate this?

UserProfiles is typically used when you allow public visitors to the site to register for accounts, so if you aren’t doing that you may just not need/want it.

The error here is an indication that the tables in your database for the UserProfiles plugin (specifically the user_profiles_types table) don’t match the structure the plugin expects. Typically this means there was some issue with the plugin’s upgrade process: either a bug in the upgrade code within the plugin, or the administrator forced the upgrade, or something like that.

Usually one simple method that works if there’s an upgrade problem is just to uninstall and reinstall the plugin: this will delete and re-create the database tables. However, there’s a caveat here: uninstalling will remove the plugin’s data, so if you have data related to that plugin that you want or need to keep, that’s usually not an appropriate choice. Looking at the current structure of your tables (i.e., the SHOW CREATE TABLE SQL command) can also indicate what’s wrong with the tables and may reveal any steps that need to be taken to make them work correctly.

Thanks so much for your help. We did use this system at one point for “crowdsourcing” metadata for our collections. We are no longer doing this, so I may simply leave the plugin disabled. The responsible parties for the server are planning to/in the process of migrating the collections to a different platform, so no further changes should be written to it. They really only want it available for visitors to browse, but I had to get the system secured for it to remain publicly accessible.

Again, thanks for your help.