AUGUSTA, Maine — Democrat Chris Johnson of Somerville won a special election Tuesday over Republican Dana Dow of Waldoboro to fill a vacant seat in the state Senate.

With all but two of the 22 towns that make up District 20 reporting, Johnson had 3,191 votes, or 54 percent, according to unofficial results from town officials.

Dow took 2,758 votes (46 percent) and conceded the race at about 10 p.m. Tuesday, Maine Democratic Party officials confirmed.

Party Chairman Ben Grant congratulated Johnson on the win, considered by many to be an upset.

“The people of Lincoln County spoke for people across Maine today, and the message was clear: this is not what we voted for in 2010,” Grant said in a statement. “[Gov.] Paul LePage’s agenda is wrong for Maine, and Republican legislators have been far too willing to fall in line in the face of mounting evidence that the GOP’s plans aren’t working.”

Senate District 20 encompasses all of Lincoln County as well as Windsor in Kennebec County and Friendship and Washington in Knox County.

The seat was vacated officially on Dec. 31 when Sen. David Trahan resigned. Trahan, a two-term senator from Waldoboro, stepped down to take the reigns of the Sportman’s Alliance of Maine, one of the most powerful lobbying groups in Augusta.

Johnson, who lost to Trahan by a 56-32 vote during the 2010 election for Senate District 20, takes over a seat that has been in the Republicans’ column for the last decade. He carried the communities of Damariscotta, Newcastle, Bristol, Boothbay, Boothbay Harbor, Edgecomb and Whitefield, among other towns.

“I’m thrilled with tonight’s win and thankful to all of the volunteers who helped tonight be a success and all of my supporters who turned out to the polls,” Johnson said in a statement. “It was clear on the campaign trail that voters are frustrated with Governor LePage and his agenda. They have every right to be.”

Dow, who currently represents District 50 in the Maine House, was selected in January by Lincoln County Republicans ahead of another House member, Rep. Leslie Fossel of Alna, to run for the Senate seat.

Dow previously held the Senate District 20 seat for two terms prior to Trahan’s election in 2008. He carried Wiscasset, Jefferson, Southport, Nobleboro and Waldoboro on Tuesday.

The win by the Democrat shifts the balance slightly in the Maine Senate. Once Johnson is sworn in, there will be 19 Republicans, 15 Democrats and one unenrolled senator.