There have always been several options available within SQL Server to make sure your database is always available to your users and/or the data inside your database is replicated to another server so as to minimize the chances of losing data. Just like with performing regular database backups to ensure you can revert to a previous state of your database should a crash or data corruption occur, planning and maintaining highly available database environments is part of your job as a DBA.
Now that data has become incredibly important ...