The officer was working security at College Park's El Ranchero restaurant on Old National Highway on Friday night, College Park police said. The officer said a man tried to hit him with a car, so he shot him.
The victim was being treated at Grady Hospital in Atlanta on Saturday morning. Authorities said he was expected to recover.
The incident was being investigated by the Georgia Bureau of Investigation.