1. A computer-implemented method for synthesizing a block-level backup copy of a database in a storage management system based on snapshots of the database, the method comprising executing on one or more computing devices the steps of: generating a first snapshot of the database, which includes associated metadata, wherein the first snapshot is stored to a first storage device, wherein a database management system (DBMS) that executes on a client computing device component of the storage management system performs operations that change data in the database; storing, by a media agent component of the storage management system, a copy of the first snapshot to a second storage device; after the first snapshot is generated, generating a plurality of successive snapshots of the database; after each snapshot in the plurality of successive snapshots is generated, identifying, by a data agent that is associated with the database management system, a respective set of data blocks which changed in the database relative to corresponding data blocks in an immediately preceding snapshot, which set of identified data blocks are designated changed data blocks for the respective snapshot, and maintaining, by the data agent, a respective list of the changed data blocks for the respective snapshot; extracting, by the media agent, the identified changed data blocks from the respective snapshot; storing and indexing to the second storage device, by the media agent, a plurality of incremental backups of the database corresponding to respective snapshots in the plurality of successive snapshots, wherein a respective incremental backup comprises the changed data blocks extracted from the respective snapshot; generating, based on the indexing, by the media agent, a synthetic full block-level backup of the database represented at a given point in time, wherein the synthetic full block-level backup is independent of database content and DBMS type, and comprises pointers to most-current data blocks relative to the given point in time, including pointers to changed data blocks and skipping over intermediate changed data blocks, as found by the media agent in the second storage device from: (a) the copy of the first snapshot and (b) the plurality of incremental backups, thereby resulting in the synthetic full block-level backup which represents the database at the given point in time; storing, by the media agent to the second storage device, the synthetic full backup of the database; reporting, by the media agent, completion of the synthetic full block-level backup of the database to a storage manager that maintains records thereof; and restoring the database from the synthetic full block-level backup in the second storage device without using a native restore feature of the DBMS.