I have 46 usernames and passwords. In the old days, I kept all of these running under one or two usernames with 2 or 3 passwords shared among them. With the recent activity of groups like Lulzsec and Anonymous, this is a dangerous game to play. One of my email address, username, and password was grabbed by a recent hack of a major tech site. Fortunately my other accounts went untouched, but I was forced to find a solution for both my insecure password keeping, and the length of time in trying to remember passwords.
The issue is if one of these passwords gets out there, especially if shared with an email address or the same username on other accounts, anyone could access to any of my accounts out there. This could include PayPal and other bank accounts, email for passwords resets, twitter, facebook, etc.
KeePass is a small Windows Application that allows you to store and use your passwords for various sites. It has password generator that can build extremely hard to guess passwords with a ridiculous amount of characters. The awesome part - even you don't need to know your password once stored in KeePass and changed online. You set the change for each site, which can be a different password for each site. Now this isn't necessary for low-risk sites, but for bank accounts and other areas where the potential for loss is greater, it's a secure and easy way to manage.
Once you create a database on your system, you can protect the database with a password you remember. To access the database you'll need that password. Each item in your database stores username, password, URL, notes, and other information.
Here's where it's nice...
For me to open my bank account website, I right click on the account, click "Open URL", which opens the browser in the website. Then I click "Auto-Type", and it types in my username and password for me. So instead of opening a browser, typing the URL, typing the username and then the (possible multiple try) password, it's 4 quick clicks and I'm in. 1) Open KeePass 2) Right click Account 3) Open in URL 4) Auto-type.
I still user some overlapping passwords for common accounts that I don't really care too much about, but the big ones, email, servers, bank accounts, etc, I generate lengthy random passwords that could not be guessed or copied from a distributed list.
What if you lose your database
I'd still recommend having a backup plan if your DB gets corrupted, you lose access to your computer or desperately need to get into your account from another location. Since I'm 99% accessing the internet from home, this solution works well. I do have all of my major accounts directed to my private email used only for family emailing and business. This allows a password reset if I desperately need it.

