I agree that it seems to be in the stage of reviewer(s) being invited and with regard to your further comment, was there any invitation at all? Sometimes, in my experience are delayed for two reasons: (1) small journal with a small database of reviewers and (2) topic with very few people who know enough to be a reviewer.
I think withdrawing is a reasonable option. I personally allow generally for 1 year to have a paper reviewed but that is assuming there is SOME action from them in that time; if nothing ha happened with your paper in so long, then that might be telling you they are VERY slow and you might not get ANY action for a long time.
My question would be "how easy is it to send to another journal and, effectively, start the review process at the start?" The answer really depends on that particular journal. In addition, how easy is it to withdraw manuscripts from the first journal? Sometimes it is very hard with some journals, I have heard.
1. Journal does not have sufficient reviewer database. Editors failed to identify reviewers.
2. Invited reviewers declined to review or failed to submit the review report.
3. There are more accepted articles which needs to be allotted volume number. The review process for summited articles is delayed.
4. The editor is not active or missed the manuscript in his busy schedule.
5. The editorial board changed and failed to track manuscripts assigned to previous editors. (This happened to us in an Elsevier journal. The status never changed for more than a year. The new editor sent us an apology after our repeated mails)
Note: Generally an author does not receive any answer for any query from the editorial board. If pressed more, they have a readymade template which will reach your inbox. It is extremely hard to get real answer for any queries. This appears to be the modus operandi of editors across journals.