It sounds like you have two problems.
First, reed switches are delicate and shouldn't be used to switch a lot of current. When the switch opens (and, to a lesser extent, closes) a small arc is generated between the contacts. This can cause
- The contacts to eventually weld together, so that it won't open correctly, or
- A buildup of non-conductive junk between the contacts, preventing it from closing correctly!
You never know which failure mode will happen first. Even before it finally fails, it may become more and more resistive as the contacts degrade.
To solve the problem, you should use the reed switch to signal some other, less delicate, device. Then, this device should switch power to the solenoid. Common solutions would be either a MOSFET or a relay.
Here is a simplified MOSFET example:
simulate this circuit – Schematic created using CircuitLab
It includes a pull-down resistor and a flyback diode (sometimes called "anti-kick diode"). If you like, please see this answer for why they are required.
The second problem is that you need to provide enough power to your solenoid. It sounds like yours is rated for 6V.
If you are giving it the rated voltage and it isn't working, then you probably aren't able to supply enough current. 9V batteries have a high internal resistance, and so can't provide much current. You could put 4 AA batteries in series to get 6V and it could supply a lot more.
By the way, solenoids require a lot of current. AA batteries might not be sufficient. Do you know the current specification for your solenoid? You may need a dedicated power supply.
By the way, don't just increase the voltage! If you exceed the rated voltage you can cause failures in the solenoid.