본관은 안동(安東). 자는 군실(君實), 호는 석릉(石陵). 할아버지는 김방행(金方行)이고, 아버지는 우의정 김이교(金履喬)이며, 어머니는 어석정(魚錫定)의 딸이다.
1825년(순조 25) 식년 문과에 병과로 급제한 뒤, 한때는 함경도위유어사(咸鏡道慰諭御史)로 뽑혀 수재(水災)로 고생하는 그 곳 주민을 구제하고 위로하였다. 1830년에는 통정대부에 오르고, 1837년(헌종 3) 대사성이 되었다가 그 이듬해에는 이조참의로 옮겼다.
1839년에는 충청도감사가 되었으며, 5년 뒤에 이조참판이 되면서 순조롭게 승진하여 대사헌을 지낸 다음, 1847년 형조판서를 거쳐 이조판서에 이르렀다.