Здравейте, аз работя върху портфейл Liferay, който има достъп до базата данни, използвайки JPA. Използвам Tomcat 7 и MySQL.
Този портфейл работи добре в моята машина, но когато премествам портала в тестова среда в друг сървър и се опитам да го използвам в тестовия портал, получавам следната грешка:
Достъпът е отказан за потребител "root" @ "localhost" (с парола: YES)
Базата данни за връзка с базата данни в моя persistence.xml е добре.
Опитах се да поставя грешни данни за връзката вpersistence.xml, за да видите дали грешката е променена, но не е. Например зададох потребителя като "wronguser" и когато разгънах портфела и се опитах да го използвам пак имам същата грешка:
Достъпът е отказан за потребител "root" @ "localhost" (с парола: YES)
Дори ако променя името на базата данни или URL адреса, грешката винаги е една и съща. Това е като нещо не се актуализира.Опитах се да изтриете Tomcat Temp папка, но не помогна.
Някакви идеи?
Благодаря предварително.
Отговори:
0 за отговор № 1Опитах се да поставя грешни данни за връзката вpersistence.xml, за да видите дали грешката се промени, но не го направи. Например зададох потребителя като "wronguser" и когато разгърнах портфела и се опитах да го използвам отново Имам точно същата грешка:
Това просто показва, че потребителското име / паролата, дадена на mysql в края, не идва от конфигурационния ви файл, както се очаква, а от друга, да бъде идентифицирана.
Докато не видите mysql, оплаквайки се, че "неправилният" не може да се свърже, това е първото блокиране, което трябва да изчистите, а проблемът е най-вероятно в настройката на приложението, а не в MySQL.
Ако сървърът на MySQL се оплаче по-къснопривилегии за "погрешно ползване", а след това сигурно, областта, която ще разследва, ще бъде безвъзмездна помощ за този потребител, но първо трябва да предадете на сървъра правилната информация за потребителя / хоста / паролата.