Welp. That just happen. I just deleted my live production database and I don't have a backup.
Yesterday I completed my new website Logname and decided to tell everyone I can about the website(Reddit, Hackernews etc).
After a day has passed, I want to see how many people register. Me being lazy without admin interface I figured I can login to postgres and query it directly.
I hosted it on heroku so I can just use this command heroku pg:psql <database-name> --app <app-name>
I already run this on terminal so I quickly go to previous history and press enter when I see pg command.
I forgot that earlier I had run this command heroku pg:reset <database-name> --confirm <app-name>
So now my database has successfully reset and I have lost all of my user if any.
Honestly I am mad as hell right now and I feel ashamed to people who tried to use my website.
One of the reason I build this website is so that user can rely on this website to maintain their info for a long time because resume is not something u need often but urgent when needed.
To all who register to give the website a try, I'm really sorry but you need to register and insert the data again but rest assured that this won't happen again.
Top comments (31)
Before you smack the enter button on a dangerous command, add a space to the start.
It will make sure the command isn't saved in history.
I didn't know this was a thing....ty!
this is gold!!!
I wish I know this earlier. Thanks!
Ouch! 😥 Lots of us know this feel all too well. Welcome to the club. 🤭
Here is a song to commemorate this thing you learned today....
"Everybody's gotta learn some time..."
youtu.be/gkH3LpvOo0U
haha thanks.
BTW that movie is one of my favourite.
I had a client come to me years ago who had done this same thing after a product launch and a heavy round of user registrations. I was able to reproduce a significant amount of registration data by parsing it out of the request logs generated by the framework they were using and the proxy in front of it. We were able to get usernames and email addresses, recreate the accounts and send an email asking everyone to reset their passwords.
You may be able to do something similar depending on your stack. Good Luck.
Never thought about using the log. Will try and see what I can salvage. At the very least I can email them individually.
Thanks!
Oh man. That suuuuuucks. I'm sorry that happened! 😟 Especially right after posting about it on Reddit etc, that must've been quite the gut punch.
It's a super easy mistake to make - I think all you can do is learn from it to double check what's in the terminal before smoshing Enter but I think sometimes that sort of thing just happens.
On that note, I highly recommend Digital Ocean for hosting your apps when you're getting to the stage where you are now, as you're clearly moving into production.
Heroku is fun and easy to set up for hobbyist projects, but isn't cost effective in the long term if you plan on scaling Logname upwards as a business.
I mention DO in particular is because I love their automatic weekly backups service on Databases, especially because of the super clear pricing whereby the backups cost a flat 20% on top of your basic rate.
Shamelessly plugging my referral link: m.do.co/c/31c29b0c4e37 <-- You get $100 USD in DO credits using this link.
Good luck out there.
I actually used DO before but I found Heroku much easier to start with. I agree the price is expensive when you scale up but I have never need to do it in the first place.
Hopefully that will change soon!.
Thanks for the referral link. Will keep that when I used DO the next time.
Is the project open sourced?
Is there a way to contribute?
Unfortunately no. I'm not sure what to do with the project yet but I will let you know if it is open sourced.
For anything important, I recommend Google Cloud SQL. Has restore options and many other features available.
I was very concerned with using Postgresql provided by Heroku because Heroku would often move the database out on top of their fairly expensive pricing and low transparency what is going on in your DB. I looked at other solutions and Google was the most comprehensive. I'm using it for my website scala-algorithms.com (PG 13)
I'm sorry this happened to you. But at the same time, you learned with it. Nothing I write here will drive the feeling away from you though.
Wishing luck for you and Logname! PS: I love it and I'll probably start using it ;)
Yeah I one time deleted my production database because my ORM configuration (copied from Stack Overflow) had a setting to wipe the database (since it assumed it was an in-memory development instance lol). Luckily AWS had automatic backups but I’m pretty sure I almost had a heart attack.
Yeah I definitely know the feeling!
You live and you learn...
True!
Amazing experience you have in your life as developer 😆. Good luck!
One of many!