I'm building a website with very sensitive data stored in my database. Losing any of it is not an option, and that's why I'm thinking to do an incremental backup every hour or so. I work on it alone, so I use only one database super-user (am I wrong?). However, I'm not sure even how my database could be damaged. Let's assume that from SQL Injection i'm 100% safe, and that DELETE/UPDATE queries are never performed (that is, by me). So, what else should I worry from? I need to know because I couldn't find explanation, and because only then I'd know if I should backup off-site or on the same server, because if the only option is that my server itself is hacked somehow, what point would it be in saving another backup on it?
Short answer: hardware failure, programming error, operator error, malevolent actor (all sorts of attacks and "hacking").
Slightly longer answer: The moment you care about your data (anytime other than a testing environment), you should backup your database regularly and keep the backups in a safe location (not the same machine, maybe not even the same datacenter if you want resiliency in the face of network outages). Also be careful to not overwrite your backups with new ones, you don't want to propagate bad data into your backups.
Once you've done all that, you need monitoring that your backups happened properly, verification of your backups, and recovery testing (where you try to restore your backups to make sure your process works).
Hacking is kind of the least of your concerns, the most common problems are programmer/operator error and hardware failure.