• If the database is in full recovery (almost certainly) then the log gets retained until a log backup is taken. Not a full backup, not a differential, a log. This is because full recovery model is an indication to SQL that you need point in time recovery on that database (the ability to restore to any point in time in the case of a disaster)

    If that is the case, then you need to schedule log backups. They will, after writing the log to a backup file, the backup process will mark the log records within the file as reusable, meaning they can now be overwritten (or removed with a shrink operation)

    If you don't need point in time recovery, if you're OK losing everything back to a full backup if the case of a disaster, then change the database to simple recovery model, and once you've done that you'll be able to shrink the down to a sensible size, no log backups necessary (or possible)

    Gail Shaw
    Microsoft Certified Master: SQL Server, MVP, M.Sc (Comp Sci)
    SQL In The Wild: Discussions on DB performance with occasional diversions into recoverability

    We walk in the dark places no others will enter
    We stand on the bridge and no one may pass