Carnival Cruise Lines said in a statement that the first Mexican tugboat reached the Carnival Splendor and its 4,500 passengers and crew on Tuesday afternoon. More tugboats are en route.
The statement says initial plans were to tow the ship to the Mexican coastal city of Ensenada, but it will now be taken to San Diego, where it is expected to arrive late Thursday.
If the ship moves too slowly, it could still be sent to Ensenada.
The ship, which left Long Beach on Sunday, was 200 miles south of San Diego when an engine room fire cut its power early Monday.