I have a magento website based on community edition which i have upgraded from magento website is having more than 40,000 products.

My problem is that the indexing process on flat data is not working properly and i am not able to save my product as when i click save product button it keeps processing but never stops processing and no got data saved.

I am using this SSH command :

php shell/indexer.php --reindex catalog_product_flat

and this error comes :

Product Flat Data index process unknown error:
exception 'PDOException' with message 'SQLSTATE[42000]: Syntax error or access violation: 1142 ALTER command denied to user 'user'@'localhost' for table 'catalog_product_flat_1'' in /path.../lib/Zend/Db/Statement/Pdo.php:228

Thanks in advance, Sarvagya

  • Can you check which permissions your database user has on that database and table? – Sander Mangel Mar 14 '13 at 7:51
  • Hello Sander, I have checked the permissions it shows that all privileges have been granted to me. Thanks for your comment – Sarvagya Mar 14 '13 at 7:59
  • you are not allowed to ALTER the table, so this permission is missing. – Fabian Blechschmidt Mar 14 '13 at 8:04
  • Hello Fabian, but i able to alter database table through SSH mysql with the same user. – Sarvagya Mar 14 '13 at 8:08
  • Do you have the root user for this database? Maybe see if, when you use that one, it can alter the database. Just to rule out it's not the user you're currently using – Sander Mangel Mar 14 '13 at 8:16

Your user doesn't have the right permissions, it says it in your error.

Grant all permissions to your user for that DB.

| improve this answer | |
  • Hello sonassi, thanks for the reply but just now i have checked by using the same user to alter the table and it did that successfully. how i can suppose that it doesn't have privilege to alter? – Sarvagya Mar 14 '13 at 8:30

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.