Tourists at a four-star Cancun resort were sent scrambling for cover when gunmen pulled up on jet skis and opened fire.
Five men in military uniforms fired about 20 shots near the Oasis Palm resort on Tuesday, according to reports, but nobody was injured.
Andy Guyrich was visiting from the US and said: “We just had to hit the deck.”
His companion Kerry Arms said: “There was a delayed reaction for about maybe five seconds, then everybody started scrambling and screaming and crying and running.”
Rick Lebassa, also visiting Mexico from the US, said he thought the gunmen had been shooting into the air.
He said: “I did not see any shots coming in toward the shoreline.
“I’m not overly concerned because this is the first time ever.
“We’ve been coming down for 31 years and we’ve never had any issues.”
Lucio Hernández Gutiérrez, the chief of police in the coastal state of Quintana Roo, said the jet skis used by the gunmen have been found and seized.
It is the latest in a number of shooting incidents, as several drug cartels fight for the area’s lucrative drugs trade.
On 5 November, gunmen believed to be from the Sinaloa Cartel stormed a beach at Puerto Morelos, south of Cancun, and killed two drug dealers from a rival gang.
Guests at the Hyatt Ziva Riviera Cancun had to run for cover during the attack, which was described as a targeted execution.
Two weeks earlier, a Californian travel blogger and a German tourist were killed in a similar shooting in the beach town of Tulum.
Three other tourists – two German men and a Dutch woman – were injured.
Following Tuesday’s shooting, Cancun’s beaches were being patrolled by Mexican marines with bulletproof vests, helmets and rifles.