I wonder why so many companies fail to exploit their own customer records. Quite often it is because the information is 'stuck' in a system and difficult to retrieve, sometimes there are worries about marketing to customers because of data protection issues.
The main point here is that customers can be a business' most valuable asset, there may be many reasons why they have not bought from you for some time. Nurture them, keep in touch and trust that they have a reason to come back if you have not heard from them for some time.
How? Hmm, how big is your business? CRM, Salesforce.com, Goldmine... actually there will always be a technical solution but that alone will not do it. It needs to be part and parcel of the culture.