Terkadang di php/mysql ada perbedaan antara localhost dan 127.0.0.1
Di mysql Anda memberikan akses berdasarkan nama host, untuk pengguna lokal ini akan menjadi localhost. Saya telah melihat php mencoba terhubung dengan 'myservername' alih-alih localhost meskipun dalam konfigurasi 'localhost' didefinisikan.
Coba berikan akses di mysql untuk 127.0.0.1 dan sambungkan di php melalui 127.0.0.1 port 3306.