Some time ago, I wanted to upgrade an SRM deployment on one of the sites we manage. Problem was, the customer in question had absolutely no idea what the SRM (embedded!*) database password is. One of my co-workers found a guide explaining a way for resetting said password - this solution turned out to be pretty complicated (it involved messing around with SRM config files etc.) and, once implemented, it caused a corruption in the SRM database (I’m still unsure how exactly that happened…)

Once we rolled SRM back to the latest snapshot, I’ve sat down to it myself and discovered a much easier way to recover this password. I’ve quickly discovered that this way of getting the password back is not really well known so I decided to post it here.

The pgpass.conf file

Turns out, the easiest way of finding out what’s the database password is to find a file called pgpass.conf; said file should be located in the home directory of the user who originally installed SRM on the server:

C:\Users\<username>\AppData\Roaming\postgressql\

The pgpass.conf should be the only file located in the above directory and is fully readable by a standard Windows Notepad. Once you open it up, you should see a list of database names, database logins and associated passwords in plaintext (“security at its finest” I guess…)

*Unfortunately, this solutions works only for SRM deployments with embedded database…