distinct select from 2 databases
Use sub-query, consider the two outputs are temp1 and temp2:

SELECT
    sum( usercount ),
    `year` 
FROM
    ( SELECT * FROM  temp1  UNION ALL SELECT * FROM  temp2  ) AS temp1 
GROUP BY
    `year`


Edit   As @ypercubeᵀᴹ mentioned in the comment, UNION ALL will avoid removing the duplicated rows from temp1 and temp2.



Also if your tb and tb_old use the same sciper for the same user,
you may need to UNION before GROUP BY

SELECT
    `year`,
    count( sciper ) AS usercount
FROM
    ( SELECT sciper, YEAR ( `date` ) AS `year` FROM massfacturation_old 
        UNION 
        SELECT sciper, YEAR ( `date` ) AS `year` FROM massfacturation ) AS temp1 
GROUP BY
    `year`


In the above query, for every year and sciper combination, the temp1 will only have one row.