Myślę, że to Twój GRANT wymaga naprawy.
GRANT ALL PRIVILEGES ON *.* TO 'monty'@'localhost'
Może być konieczne
GRANT ALL PRIVILEGES ON *.* TO 'monty'@'website.com'
Będziesz chciał jednak upewnić się, że wszystko jest bezpieczne. Zwykle najlepszą praktyką jest nie zezwalanie na zewnętrzne połączenia mysql, które nie pochodzą z lokalnego hosta.