arduino on battery for long time use
You can turn off the entire Arduino and let it wake by your RTC. That way you can conserve a lot of power. (link)

Also you will have losses from the power regulator when powering the Arduino from 12V. You might consider using a Arduino Pro mini with 3.3V powered by two AA batteries. That should last for years.