Is it possible to control 12v pump only with arduino (no 12V battery)
I have a 12v pump which runs quite nicely at low speed from 5v.

However, it takes much more current than an Arduino would switch, so would need an external power transistor to switch it, and of course it would need a beefy enough 5v source to drive it. And I'm happy with the low speed, most people would want the 12v pump performance.

If you have a large enough 5v battery, you could use a 5v to 12v boost converter, which might even be enablable directly from the Arduino. 

When those alternatives are considered, it's probably far easier to do it the obvious way and use a 12v source, using the regulator internal to the Arduino board to drive that, and using a suitable transistor to switch the pump.