1637년(인조 15) 병자호란 이후 소현세자(昭顯世子)와 봉림대군(鳳林大君: 뒤의 효종) 일행이 볼모로 심양(瀋陽)에 갈 때, 호위병으로 청나라에 따라간 8장사(壯士) 중의 한 사람이다.
1644년 세자 일행이 귀국할 때, 심양에서 출생한 네 살된 현종을 교자에 태울 수 없어 8장사가 바꾸어가면서 등에 업고 수 천리길을 오게 되었는데, 다른 사람이 업으면 계속 울던 아기가 오효성이 업으면 울음을 멈추었으므로 줄곧 업고 오게 되었다.
이로 인하여 옷의 등쪽이 모두 닳고 어깨에 상처를 입었다. 효종이 뒤에 8장사를 기념하기 위하여 8장사의 그림을 병풍에 그리게 할 때 현종을 업었던 모습을 그리게 하였다. 1656년(효종 7)에 별군직청(別軍職廳)을 설치하여 8장사를 벼슬에 등용하고, 자손들에게도 그 벼슬을 세습하게 하였다.