I don't know many people that have been at the same job for a decade or more. Even those that might be working in the same desk have often seen their company change, or their job change in that time. It makes me wonder if the era of working for one company is completely dead for IT workers.
If that's the case, then do workers move on when they get bored with their jobs? Is there anything you can do to stave off boredom or re-invigorate people about their work? I think you can, and it requires a bit of a balance between ensuring that specific tasks are complete, and giving people the freedom to pursue the things that matter to them.
That doesn't mean that your Exchange administrator gets to go teach music on company time, but it could mean that the "backup guy" gets some training in ASP.NET and the chance to build some tools that he or she would enjoy. Or perhaps it means allowing the DBA time to sit and learn some C#. It's often the case of finding out what people enjoy about their work, or what they'd change, and helping them to move more in that direction.
It also means that you change the workload slightly, and don't expect the person to continue to get the same amount of boring work done while tackling some other interesting projects. A balance is needed to ensure that a person doesn't get burnt out. If you don't reduce the boring workload, the interesting stuff will get dropped, and you will have an unhappy employee.
The key to this is communication. Managers need to explain the need for some work to get done, but also listen to employees and ensure they are getting time to enjoy work. Otherwise you might find yourself losing more high performers and retaining the low ones.