Please help! Update to Piwik 1.8 broke my Installation

Well then post the full error message. The error posted in the first post is only related to the lock tables priviledge.

Since my error messages are basically the same … I thought I would not have to repost them.

Do you mean you get the
SQLSTATE[42000]: Syntax error or access violation: 1044 Access denied for user ‘piwik’@‘localhost’ to database ‘piwik’ ?

them please post again your FULL error message :slight_smile:

VISITORS BY SERVERTIME

SQLSTATE[42000]: Syntax error or access violation: 1044 Access denied for user ‘piwik_user’@‘localhost’ to database ‘my_crazy_database’

Backtrace:
#0 /home/path/to/piwik/core/PluginsFunctions/Sql.php(51): Zend_Db_Adapter_Pdo_Abstract->exec(‘LOCK TABLES piw…’)
#1 /home/path/to/piwik/core/PluginsFunctions/Sql.php(205): Piwik_Sql::exec(‘LOCK TABLES piw…’)
#2 /home/path/to/piwik/core/PluginsFunctions/Sql.php(359): Piwik_Sql::lockTables(‘piwik_archive_n…’, ‘piwik_archive_n…’)
#3 /home/path/to/piwik/core/ArchiveProcessing.php(688): Piwik_LockTables(‘piwik_archive_n…’, ‘piwik_archive_n…’)
#4 /home/path/to/piwik/core/ArchiveProcessing.php(533): Piwik_ArchiveProcessing->loadNextIdarchive()
#5 /home/path/to/piwik/core/ArchiveProcessing/Period.php(230): Piwik_ArchiveProcessing->initCompute()
#6 /home/path/to/piwik/core/ArchiveProcessing.php(472): Piwik_ArchiveProcessing_Period->initCompute()
#7 /home/path/to/piwik/core/Archive/Single.php(226): Piwik_ArchiveProcessing->launchArchiving()
#8 /home/path/to/piwik/core/Archive/Single.php(256): Piwik_Archive_Single->prepareArchive()
#9 /home/path/to/piwik/core/Archive/Single.php(514): Piwik_Archive_Single->get(‘VisitTime_serve…’, ‘blob’, NULL)
#10 /home/path/to/piwik/plugins/VisitTime/API.php(34): Piwik_Archive_Single->getDataTable(‘VisitTime_serve…’)
#11 /home/path/to/piwik/plugins/VisitTime/API.php(48): Piwik_VisitTime_API->getDataTable(‘VisitTime_serve…’, ‘1’, ‘range’, ‘last30’, false)
#12 [internal function]: Piwik_VisitTime_API->getVisitInformationPerServerTime(‘1’, ‘range’, ‘last30’, false, ‘1’)
#13 /home/path/to/piwik/core/API/Proxy.php(190): call_user_func_array(Array, Array)
#14 /home/path/to/piwik/core/API/Request.php(128): Piwik_API_Proxy->call(‘Piwik_VisitTime…’, ‘getVisitInforma…’, Array)
#15 /home/path/to/piwik/core/ViewDataTable.php(421): Piwik_API_Request->process()
#16 /home/path/to/piwik/core/ViewDataTable/GenerateGraphData.php(181): Piwik_ViewDataTable->loadDataTableFromAPI()
#17 /home/path/to/piwik/core/Controller.php(152): Piwik_ViewDataTable_GenerateGraphData->main()
#18 /home/path/to/piwik/plugins/VisitTime/Controller.php(35): Piwik_Controller->renderView(Object(Piwik_ViewDataTable_GenerateGraphData_ChartVerticalBar), false)
#19 [internal function]: Piwik_VisitTime_Controller->getVisitInformationPerServerTime()
#20 /home/path/to/piwik/core/FrontController.php(138): call_user_func_array(Array, Array)
#21 /home/path/to/piwik/core/FrontController.php(159): Piwik_FrontController->dispatch(‘VisitTime’, ‘getVisitInforma…’, Array)
#22 /home/path/to/piwik/core/ViewDataTable/GenerateGraphHTML.php(170): Piwik_FrontController->fetchDispatch(‘VisitTime’, ‘getVisitInforma…’, Array)
#23 /home/path/to/piwik/core/ViewDataTable/GenerateGraphHTML.php(125): Piwik_ViewDataTable_GenerateGraphHTML->getGraphData()
#24 /home/path/to/piwik/core/ViewDataTable/GenerateGraphHTML.php(109): Piwik_ViewDataTable_GenerateGraphHTML->buildView()
#25 /home/path/to/piwik/core/Controller.php(152): Piwik_ViewDataTable_GenerateGraphHTML->main()
#26 /home/path/to/piwik/plugins/VisitTime/Controller.php(35): Piwik_Controller->renderView(Object(Piwik_ViewDataTable_GenerateGraphHTML_ChartVerticalBar), false)
#27 [internal function]: Piwik_VisitTime_Controller->getVisitInformationPerServerTime()
#28 /home/path/to/piwik/core/FrontController.php(138): call_user_func_array(Array, Array)
#29 /home/path/to/piwik/index.php(53): Piwik_FrontController->dispatch()
#30 {main}


LAST VISITS GRAPH

SQLSTATE[42000]: Syntax error or access violation: 1044 Access denied for user ‘piwik_user’@‘localhost’ to database ‘my_crazy_database’

Backtrace:
#0 /home/path/to/piwik/core/PluginsFunctions/Sql.php(51): Zend_Db_Adapter_Pdo_Abstract->exec(‘LOCK TABLES piw…’)
#1 /home/path/to/piwik/core/PluginsFunctions/Sql.php(205): Piwik_Sql::exec(‘LOCK TABLES piw…’)
#2 /home/path/to/piwik/core/PluginsFunctions/Sql.php(359): Piwik_Sql::lockTables(‘piwik_archive_n…’, ‘piwik_archive_n…’)
#3 /home/path/to/piwik/core/ArchiveProcessing.php(688): Piwik_LockTables(‘piwik_archive_n…’, ‘piwik_archive_n…’)
#4 /home/path/to/piwik/core/ArchiveProcessing.php(533): Piwik_ArchiveProcessing->loadNextIdarchive()
#5 /home/path/to/piwik/core/ArchiveProcessing.php(472): Piwik_ArchiveProcessing->initCompute()
#6 /home/path/to/piwik/core/Archive/Single.php(226): Piwik_ArchiveProcessing->launchArchiving()
#7 /home/path/to/piwik/core/Archive/Array/IndexedByDate.php(90): Piwik_Archive_Single->prepareArchive()
#8 /home/path/to/piwik/plugins/VisitsSummary/API.php(88): Piwik_Archive_Array_IndexedByDate->getDataTableFromNumeric(Array)
#9 [internal function]: Piwik_VisitsSummary_API->get(‘1’, ‘day’, ‘last30’, false, ‘nb_visits’)
#10 /home/path/to/piwik/core/API/Proxy.php(190): call_user_func_array(Array, Array)
#11 /home/path/to/piwik/plugins/API/API.php(986): Piwik_API_Proxy->call(‘Piwik_VisitsSum…’, ‘get’, Array)
#12 [internal function]: Piwik_API_API->get(‘1’, ‘day’, ‘last30’, false, ‘nb_visits’)
#13 /home/path/to/piwik/core/API/Proxy.php(190): call_user_func_array(Array, Array)
#14 /home/path/to/piwik/core/API/Request.php(128): Piwik_API_Proxy->call(‘Piwik_API_API’, ‘get’, Array)
#15 /home/path/to/piwik/core/ViewDataTable.php(421): Piwik_API_Request->process()
#16 /home/path/to/piwik/core/ViewDataTable/GenerateGraphData/ChartEvolution.php(109): Piwik_ViewDataTable->loadDataTableFromAPI()
#17 /home/path/to/piwik/core/ViewDataTable/GenerateGraphData.php(181): Piwik_ViewDataTable_GenerateGraphData_ChartEvolution->loadDataTableFromAPI()
#18 /home/path/to/piwik/core/Controller.php(247): Piwik_ViewDataTable_GenerateGraphData->main()
#19 /home/path/to/piwik/plugins/VisitsSummary/Controller.php(78): Piwik_Controller->getLastUnitGraphAcrossPlugins(‘VisitsSummary’, ‘getEvolutionGra…’, Array, Array, ‘This is an over…’)
#20 [internal function]: Piwik_VisitsSummary_Controller->getEvolutionGraph()
#21 /home/path/to/piwik/core/FrontController.php(138): call_user_func_array(Array, Array)
#22 /home/path/to/piwik/core/FrontController.php(159): Piwik_FrontController->dispatch(‘VisitsSummary’, ‘getEvolutionGra…’, Array)
#23 /home/path/to/piwik/core/ViewDataTable/GenerateGraphHTML.php(170): Piwik_FrontController->fetchDispatch(‘VisitsSummary’, ‘getEvolutionGra…’, Array)
#24 /home/path/to/piwik/core/ViewDataTable/GenerateGraphHTML.php(125): Piwik_ViewDataTable_GenerateGraphHTML->getGraphData()
#25 /home/path/to/piwik/core/ViewDataTable/GenerateGraphHTML.php(109): Piwik_ViewDataTable_GenerateGraphHTML->buildView()
#26 /home/path/to/piwik/core/Controller.php(247): Piwik_ViewDataTable_GenerateGraphHTML->main()
#27 /home/path/to/piwik/plugins/VisitsSummary/Controller.php(78): Piwik_Controller->getLastUnitGraphAcrossPlugins(‘VisitsSummary’, ‘getEvolutionGra…’, Array, Array, ‘This is an over…’)
#28 [internal function]: Piwik_VisitsSummary_Controller->getEvolutionGraph()
#29 /home/path/to/piwik/core/FrontController.php(138): call_user_func_array(Array, Array)
#30 /home/path/to/piwik/index.php(53): Piwik_FrontController->dispatch()
#31 {main}


GRAPH RETURNING VISITS
SQLSTATE[42000]: Syntax error or access violation: 1044 Access denied for user ‘piwik_user’@‘localhost’ to database ‘my_crazy_database’

Backtrace:
#0 /home/path/to/piwik/core/PluginsFunctions/Sql.php(51): Zend_Db_Adapter_Pdo_Abstract->exec(‘LOCK TABLES piw…’)
#1 /home/path/to/piwik/core/PluginsFunctions/Sql.php(205): Piwik_Sql::exec(‘LOCK TABLES piw…’)
#2 /home/path/to/piwik/core/PluginsFunctions/Sql.php(359): Piwik_Sql::lockTables(‘piwik_archive_n…’, ‘piwik_archive_n…’)
#3 /home/path/to/piwik/core/ArchiveProcessing.php(688): Piwik_LockTables(‘piwik_archive_n…’, ‘piwik_archive_n…’)
#4 /home/path/to/piwik/core/ArchiveProcessing.php(533): Piwik_ArchiveProcessing->loadNextIdarchive()
#5 /home/path/to/piwik/core/ArchiveProcessing.php(472): Piwik_ArchiveProcessing->initCompute()
#6 /home/path/to/piwik/core/Archive/Single.php(226): Piwik_ArchiveProcessing->launchArchiving()
#7 /home/path/to/piwik/core/Archive/Array/IndexedByDate.php(90): Piwik_Archive_Single->prepareArchive()
#8 /home/path/to/piwik/plugins/VisitFrequency/API.php(81): Piwik_Archive_Array_IndexedByDate->getDataTableFromNumeric(Array)
#9 [internal function]: Piwik_VisitFrequency_API->get(‘1’, ‘day’, ‘last30’, false, ‘nb_visits_retur…’)
#10 /home/path/to/piwik/core/API/Proxy.php(190): call_user_func_array(Array, Array)
#11 /home/path/to/piwik/plugins/API/API.php(986): Piwik_API_Proxy->call(‘Piwik_VisitFreq…’, ‘get’, Array)
#12 [internal function]: Piwik_API_API->get(‘1’, ‘day’, ‘last30’, false, ‘nb_visits_retur…’)
#13 /home/path/to/piwik/core/API/Proxy.php(190): call_user_func_array(Array, Array)
#14 /home/path/to/piwik/core/API/Request.php(128): Piwik_API_Proxy->call(‘Piwik_API_API’, ‘get’, Array)
#15 /home/path/to/piwik/core/ViewDataTable.php(421): Piwik_API_Request->process()
#16 /home/path/to/piwik/core/ViewDataTable/GenerateGraphData/ChartEvolution.php(109): Piwik_ViewDataTable->loadDataTableFromAPI()
#17 /home/path/to/piwik/core/ViewDataTable/GenerateGraphData.php(181): Piwik_ViewDataTable_GenerateGraphData_ChartEvolution->loadDataTableFromAPI()
#18 /home/path/to/piwik/core/Controller.php(247): Piwik_ViewDataTable_GenerateGraphData->main()
#19 /home/path/to/piwik/plugins/VisitFrequency/Controller.php(75): Piwik_Controller->getLastUnitGraphAcrossPlugins(‘VisitFrequency’, ‘getEvolutionGra…’, Array, Array, ‘This is an over…’)
#20 [internal function]: Piwik_VisitFrequency_Controller->getEvolutionGraph()
#21 /home/path/to/piwik/core/FrontController.php(138): call_user_func_array(Array, Array)
#22 /home/path/to/piwik/core/FrontController.php(159): Piwik_FrontController->dispatch(‘VisitFrequency’, ‘getEvolutionGra…’, Array)
#23 /home/path/to/piwik/core/ViewDataTable/GenerateGraphHTML.php(170): Piwik_FrontController->fetchDispatch(‘VisitFrequency’, ‘getEvolutionGra…’, Array)
#24 /home/path/to/piwik/core/ViewDataTable/GenerateGraphHTML.php(125): Piwik_ViewDataTable_GenerateGraphHTML->getGraphData()
#25 /home/path/to/piwik/core/ViewDataTable/GenerateGraphHTML.php(109): Piwik_ViewDataTable_GenerateGraphHTML->buildView()
#26 /home/path/to/piwik/core/Controller.php(247): Piwik_ViewDataTable_GenerateGraphHTML->main()
#27 /home/path/to/piwik/plugins/VisitFrequency/Controller.php(75): Piwik_Controller->getLastUnitGraphAcrossPlugins(‘VisitFrequency’, ‘getEvolutionGra…’, Array, Array, ‘This is an over…’)
#28 [internal function]: Piwik_VisitFrequency_Controller->getEvolutionGraph()
#29 /home/path/to/piwik/core/FrontController.php(138): call_user_func_array(Array, Array)
#30 /home/path/to/piwik/index.php(53): Piwik_FrontController->dispatch()
#31 {main}


FREQUENCY OVERVIEW

SQLSTATE[42000]: Syntax error or access violation: 1044 Access denied for user ‘piwik_user’@‘localhost’ to database ‘my_crazy_database’

Backtrace:
#0 /home/path/to/piwik/core/PluginsFunctions/Sql.php(51): Zend_Db_Adapter_Pdo_Abstract->exec(‘LOCK TABLES piw…’)
#1 /home/path/to/piwik/core/PluginsFunctions/Sql.php(205): Piwik_Sql::exec(‘LOCK TABLES piw…’)
#2 /home/path/to/piwik/core/PluginsFunctions/Sql.php(359): Piwik_Sql::lockTables(‘piwik_archive_n…’, ‘piwik_archive_n…’)
#3 /home/path/to/piwik/core/ArchiveProcessing.php(688): Piwik_LockTables(‘piwik_archive_n…’, ‘piwik_archive_n…’)
#4 /home/path/to/piwik/core/ArchiveProcessing.php(533): Piwik_ArchiveProcessing->loadNextIdarchive()
#5 /home/path/to/piwik/core/ArchiveProcessing/Period.php(230): Piwik_ArchiveProcessing->initCompute()
#6 /home/path/to/piwik/core/ArchiveProcessing.php(472): Piwik_ArchiveProcessing_Period->initCompute()
#7 /home/path/to/piwik/core/Archive/Single.php(226): Piwik_ArchiveProcessing->launchArchiving()
#8 /home/path/to/piwik/core/Archive/Single.php(256): Piwik_Archive_Single->prepareArchive()
#9 /home/path/to/piwik/core/Archive/Single.php(446): Piwik_Archive_Single->get(‘nb_visits_retur…’, ‘numeric’)
#10 /home/path/to/piwik/core/Archive/Single.php(489): Piwik_Archive_Single->getNumeric(‘nb_visits_retur…’)
#11 /home/path/to/piwik/plugins/VisitFrequency/API.php(81): Piwik_Archive_Single->getDataTableFromNumeric(Array)
#12 [internal function]: Piwik_VisitFrequency_API->get(‘1’, ‘range’, ‘last30’, false, false)
#13 /home/path/to/piwik/core/API/Proxy.php(190): call_user_func_array(Array, Array)
#14 /home/path/to/piwik/core/API/Request.php(128): Piwik_API_Proxy->call(‘Piwik_VisitFreq…’, ‘get’, Array)
#15 /home/path/to/piwik/plugins/VisitFrequency/Controller.php(104): Piwik_API_Request->process()
#16 /home/path/to/piwik/plugins/VisitFrequency/Controller.php(88): Piwik_VisitFrequency_Controller->getSummary()
#17 /home/path/to/piwik/plugins/VisitFrequency/Controller.php(30): Piwik_VisitFrequency_Controller->setSparklinesAndNumbers(Object(Piwik_View))
#18 [internal function]: Piwik_VisitFrequency_Controller->getSparklines()
#19 /home/path/to/piwik/core/FrontController.php(138): call_user_func_array(Array, Array)
#20 /home/path/to/piwik/index.php(53): Piwik_FrontController->dispatch()
#21 {main}

Solution: Please grant your database user the permission to LOCK tables, using phpMyAdmin or asking your webhost

This is a new requirement in Piwik 1.8 and we forgot to add a test to warn users about it.

I already have granted that database user the database specific privileges including LOCK TABLES …

In phpmyadmin priviledges for a user can be changed in 2 ways from what I see …

  • GLOBAL priviledges - which sounds to me as this would effect all databased the users is making use of

  • Database-specific privileges

Initially I did grants the LOCK TABLES prevailed specifically to the PIWIK database: problem remained

Now I tested and did grant the LOCK TABLES privilege GLOBALLY (for all databases of this user) and the describe problem disappeared …

that are my 5 cent …

OK,

it’s fixed now for me, thanks for the help.

I had to give the LOCK privilege globally AND
had to delete my config.ini.php

Without deleteing the config file, i still got the error about not being able to authenticate.
I am unsure why, because my pw didn’t change.

After a new installation with the wizard, keeping my old data tables, everything works fine now.
After the first login i was presented an update to 1.8.1 which installed without problems.

WE are also considering in a new version NOT require the LOCK privilege, see ticket: Piwik should not require mysql LOCK privilege so more users can enjoy Free Web Analytics! · Issue #3204 · matomo-org/matomo · GitHub

please post a comment in this ticket if your web host does not allow LOCK privilege