First get ready to experiments. There are many suitable BJTs and MOSFETs but some are best with more than 9VDC.
Measure the logic output voltage from your Arduino to a 3K load resistor, and build a logic voltage source from a 9V battery, with a SPDT switch. Test a logic MOSFET from your logic source, with the motor and 9V battery before you connect it to Arduino. Be sure to connect a protection diode across the MOSFET as the motor is an inductive load.
Make sure there is a large capacitor across the 9V battery (like 1000 uF) to protect Arduino from voltage kicks the motor can generate.
BJTs have much larger resistance when open, a heat sink is needed. I would use one for the MOSFET, too. When the motor stalls, the current peaks high. Maybe your 9V battery will not live long to feed the motor.