The bad
Well, it certainly can backfire. If you have previously interviewed with a firm, they will probably have that in your files, and if you rejected their offer, they will remember. They may believe that you interviewed just for practice (as here) or possibly even shared their offer with your current employer to negotiate salaries.
The same goes double if you are extended an offer and start negotiating (maybe you also want to practice negotiating?), only to turn them down. The "target" firm will keep their final rejected offer in their files. Two years later, you might be happy to work under the offered conditions, but they know that you already turned that down once, so they will be less keen on spending more resources on you a second time, arguing that you will probably demand at least as much as you rejected last time.
Also, your current employer may get wind of your interviewing. It's a small world, after all. I'd rather not explain to my manager that "it was all for practice, honest, I'm staying here." Will he believe me?
Finally, this takes time. Tailoring your cover letter and resume is not instantaneous. Is the time spent worth it?
The good
Of course interviewing is a skill, so it makes sense to stay in shape. The "practice" argument is certainly valid.
More importantly, during this practice, you may just be offered a position and/or salary/benefits package that simply is too good to pass on, even if you are happy where you are. You wouldn't have heard of this position/package without your practice interviews.
Finally, you are making it known that you are on the market. So even if you are not offered something at a firm or reject the offer, people there will remember you (see above), and that can certainly be for the good. The next time an interesting position opens up, they may recall your stellar interview performance (due to all the practice ;-) and email you.
The bottom line
I personally don't like spending the time. With a job and a family, I'd honestly rather spend my little spare time at the gym than going to interviews. But your mileage may vary.
EDIT: the ethics
Other answers have addressed the ethical issue, and I should have, too. My bad. Here goes.
Yes, wasting the interviewers' time is unethical, no doubt about that. But I don't think this is totally clear-cut. On the one hand, you would be "practice-interviewing" for positions that are not completely, utterly irrelevant to you, your situation in life and your career aspirations. Otherwise, either the firm won't invite you if you are an obvious mismatch to the position, or you wouldn't go to the interview or apply in the first place, because you couldn't learn anything from that interview. Therefore, even if you are happy in your current situation, there is a non-negligible chance that either of the cases under "The good" above occurs: you may get an offer that is honestly too good to pass up, or you at least make valuable contacts for later on (and contacts are always valuable for both sides). In either case, you wouldn't have completely wasted the interviewers' time.
Conversely, even if you are searching for a job and go into an interview leaning towards accepting an (eventual) offer, you may learn during the interview that the firm and you are not a good match, and you may end up declining an offer. Would you say that you wasted the interviewers' time? I wouldn't.
So: your propensity to accept an offer prior to an interview is rarely a 100% yes or no. How badly you really waste anyone's time is really a function of this a priori propensity. And yes, I do suggest keeping this in mind. "Is the nonzero chance of actually getting an offer I might seriously consider accepting, or of making mutually beneficial contacts worth everyone's time?"
(Don't get me started on employers wasting people's time, because HR had a quota of number of interviews to fill for each position, either because of internal targets or because of backfiring legal requirements.)