Norris would get a $25,000 bonus for 180 innings and $50,000 more for 200 under Monday's agreement. He also would earn $50,000 each for making the All-Star Game or winning a Gold Glove.
Norris, who turns 30 on March 2, was 15-8 with a 3.65 ERA in 28 starts last season, when he made $5.3 million. He had asked for a raise to $10.25 million and been offered $7.5 million. Norris is eligible for free agency after this season.
The 28-year-old Flaherty hit .221 with seven homers and 32 RBIs in 312 plate appearances last year, when he made $512,500. He played all four infield positions, left field and right field.
Flaherty had asked for $1.5 million in arbitration and had been offered $900,000. He would get a $25,000 bonus if he reaches 400 plate appearances this season.