The best way to prevent identity theft is to prevent others from accessing your credit files without your approval by placing a free initial 90-day credit alert with one of the three credit reporting companies:
https://www.experian.com/consumer/cac/InvalidateSession.do?code=SECURITYALERT
https://www.alerts.equifax.com/AutoFraud_Online/jsp/fraudAlert.jsp
https://www.transunion.com/corporate/personal/fraudIdentityTheft/preventing/fraudAlert.page
After you setup the alert, you will get a free credit report immediately. You have to setup a reminder on your calendar to do it repeatedly every 90 days.
If you don’t have 5 minutes every 90 days, https://www.lifelock.com does it for you for a fee and provides extra guarantee.
With initial credit alert, junk mails from credit card companies will be reduced significantly because they cannot access your credit report without your approval. To further reduce junk mails to save a lot of trees and prevent your identity stolen from mail thieves, you can remove your names from junk mail mailing list: