Михаил Николаевич Голяков родился 19 ноября 1910 года в городе Грязовец Вологодской области в семье рабочего. Русский. Образование начальное. Работал шофёром.
В Советскую Армию призван в мае 1942 и направлен в действующую армию.
Наводчик орудия 1118-го стрелкового полка (333-я стрелковая дивизия, 12-я армия, Юго-Западный фронт) старший сержант Голяков отличился 26 сентября 1943 года в боях при форсировании Днепра южнее города Запорожье (Украина). Расчёт орудия поддерживал огнём переправу подразделений полка, а затем сам переправился через реку. Дважды вражеская пехота и танки контратаковали наши позиции на плацдарме, но артиллеристы успешно их отбивали. Свыше 20 солдат противника, 2 орудия и 2 автомашины были уничтожены расчётом. Занимаемый плацдарм был удержан.
Звание Героя Советского Союза присвоено 22 февраля 1944 года.
В конце 1945 демобилизован. Жил в Вологде. Работал слесарем на авторемонтном заводе. Умер 25 июня 1977 года.