EDUCBA

EDUCBA

MENUMENU
  • Free Tutorials
  • Free Courses
  • Certification Courses
  • 360+ Courses All in One Bundle
  • Login

SQL Backup

By Payal UdhaniPayal Udhani

Home » Data Science » Data Science Tutorials » SQL Tutorial » SQL Backup

SQL Backup

Introduction to SQL Backup

SQL Backup helps us to improve the availability and service of the SQL database continuously to the users. If you are using the SQL database in the production environment for your clients then you need to make sure that your database is always working fine and is available 24 * 7. For the availability of the database, you must often keep the backup of your client’s database. In case if the database is corrupted or is crashed or lost then you should be able to restore the data in the database.

For this reason, SQL provides us with a facility to back up the database using SQL backup utility. This utility can only be used if your database is accessible and the select privilege on the tables of that database is assigned to you and the database is running. This utility creates a logical backup containing the SQL statements that can be run again to bring back the database to the state when this file was created. This utility can be used for single or multiple database backup.

Start Your Free Data Science Course

Hadoop, Data Science, Statistics & others

You must backup your database frequently to have the updated backup of your database available with you. Whenever the backup is restored the database will be back to the state when that backup file was being created using SQL backup. In this article, we will learn about the types of backups available in SQL and also study some of them in detail.

Types of Backups in SQL

There are many types of backup available in SQL and all of them differ in strategy, content, scope, and methodology of backup and restore process.

The types of the backups in SQL are specified below out of them some are commonly used.

  • Full backup
  • Transaction log
  • Differential backup
  • Tail Log backup
  • File backups
  • Copy-only backup
  • Partial backups

1. Full backup

In this type of backup strategy, all the data of the database is backed up in the disk or memory location that we have specified in this query. As whole data from the database is being backed up the process of backup may take some time especially when there is huge data to be backed up. Also, the restoration process becomes time-consuming.

But once the backup is created using a full backup strategy, at the time of necessity the database can be restored to the state when it was being backed up. In SQL, we use the BACKUP DATABASE command to create a full backup of the database with which we also have to mention the name of the database that we wish to back up and the disk location where the backup needs to be created.

Popular Course in this category
SQL Training Program (7 Courses, 8+ Projects)7 Online Courses | 8 Hands-on Projects | 73+ Hours | Verifiable Certificate of Completion | Lifetime Access
4.5 (5,650 ratings)
Course Price

View Course

Related Courses
JDBC Training (6 Courses, 7+ Projects)PHP Training (5 Courses, 3 Project)Windows 10 Training (4 Courses, 4+ Projects)PL SQL Training (4 Courses, 2+ Projects)Oracle Training (14 Courses, 8+ Projects)

2. Differential backup: BACKUP DATABASE

Backing up the whole database every time can be very time consuming and unnecessary the old data is hardly been modified. In such cases, we can only backup the data that has recently been added and modified in the database from the time when the last backup was created. This saves a sufficient amount of resources and time that must have consumed and required for backing up the old that that has already been backup in the past. While performing differential backup only a small amount of data is being backup up between the time interval of last backup and current one provided if the number of transactions that are made in that time duration as considerably small.

In case if a huge amount of data is being generated each day then differential backups can also become very time-consuming. Also, note that the restoration process doesn’t get affected and still consumes the same time as consumed while restoring full backup as in both the case whole database is being restored. The command used to perform the differential backup in SQL is the same BACKUP DATABASE along with an extra clause of the specification that is DIFFERENTIAL along with which the name of database and disk location needs to be specified.

3. Transaction log Backup

When bulk-logged or full recovery models are being used in the SQL database then we can use the transactional log backups. In this type of backup, we can take the backup of all the logs of the transactions that have been made on the database so that the data can be recovered at any specific point of time where we want as all the history of the modifications on the database is stored in the logs of transactional log backup.

This type of backup consists of all the logs that have not been backed up in the previous transactional log backup. The nature of the backup of the transaction log is incremental. When an accident occurs that results in the data loss and you want to restore the database to the specific point of time that is just before the time of the accident then you will have to restore latest differential backup data and all the transaction logs whose modifications you wish to desire to be restored.

In SQL, to perform the transaction log we will have to use the BACKUP LOG command along with the TRANSACTION LOG clause in the query statement along with the name of the database and the device location where we want to backup the logs.

Examples to Implement SQL Backup

Below are the examples mentioned :

Example #1

Full backup:

Code:

BACKUP DATABASE [EDUCBA_SQL_DEMO_DB] To DISK='f:\SQLBackup\EDUCBA_SQL_DEMO_DB.BAK'
WITH FORMAT,
MEDIANAME = 'EducbaSQLServerBackup',
NAME = 'FULL_EDUCBA_SQL_DEMO_DB_Backup';

Output:

SQL Backup1

Example #2

Differential backup –BACKUP DATABASE:

Code:

BACKUP DATABASE [EDUCBA_SQL_DEMO_DB] To DISK='f:\SQLBackup\EDUCBA_SQL_DEMO_DB_Diff.BAK'
WITH DIFFERENTIAL,
MEDIANAME = 'EducbaSQLServerDiffBackup',
NAME = 'DIFFERENTIAL_EDUCBA_SQL_DEMO_DB_Backup';

Output:

Differential

Example #3

Transaction log Backup:

Code:

BACKUP LOG [EDUCBA_SQL_DEMO_DB] To DISK='f:\SQLBackup\EDUCBA_SQL_DEMO_DB_Log.trn'
WITH
MEDIANAME = 'EducbaSQLServerLogBackup',
NAME = 'LOG_EDUCBA_SQL_DEMO_DB_Backup';
GO

Output:

Transaction log

Conclusion

We can use the backup and restore facility in SQL collectively to make the user available with data and service of the SQL database throughout the time as long as it is required. In case of accidents such as crashing of servers and corrupting of data from the databases the data that is backed up can be restored to bring back the SQL database to a state when the database was being backed up. We can use various ways for backing up the data and the type we choose for backup depends upon the requirement and amount of data as well as strategy we want to back up the data in SQL.

Recommended Articles

This is a guide to SQL Backup. Here we discuss an introduction to SQL Backup, along with 3 different types and query examples explained in detail. You can also go through our other related articles to learn more –

  1. SQL Administration
  2. SQL Management Tools
  3. MySQL Commands
  4. MySQL Server

SQL Training Program (7 Courses, 8+ Projects)

7 Online Courses

8 Hands-on Projects

73+ Hours

Verifiable Certificate of Completion

Lifetime Access

Learn More

0 Shares
Share
Tweet
Share
Primary Sidebar
SQL Tutorial
  • Advanced
    • SQL Formatter
    • SQL Injection Attack
    • Aggregate Functions in SQL
    • IF ELSE Statement in SQL
    • SQL CASE Statement
    • SQL While Loop
    • SQL INSTR()
    • What is Procedure in SQL
    • Stored Procedure in SQL?
    • SQL Server Constraints
    • SQL DELETE ROW
    • Column in SQL
    • Table in SQL
    • SQL Virtual Table
    • SQL Merge Two Tables
    • SQL Table Partitioning
    • SQL Temporary Table
    • SQL Clone Table
    • SQL Rename Table
    • SQL LOCK TABLE
    • SQL Clear Table
    • SQL DESCRIBE TABLE
    • SQL Mapping
    • Cursors in SQL
    • AND in SQL
    • Wildcard in SQL
    • SQL FETCH NEXT
    • SQL Views
    • SQL Delete View
    • Triggers in SQL
    • SQL UPDATE Trigger
    • SQL AFTER UPDATE Trigger
    • SQL Update Statement
    • SQL DROP TRIGGER
    • Types of SQL Views
    • SQL Port
    • SQL Clustered Index
    • SQL COMMIT
    • Distinct Keyword in SQL
    • PARTITION BY in SQL
    • SQL Set Operators
    • SQL UNION ALL
    • Metadata in SQL
    • SQL Bulk Insert
    • Array in SQL
    • SQL REGEXP
    • JSON in SQL
    • SQL For loop
    • EXPLAIN in SQL
    • SQL Cluster
    • SQL Backup
    • SQL Pattern Matching
    • SQL Users
    • ISNULL SQL Server
    • SQL pivot
    • SQL Import CSV
  • Basic
    • What is SQL
    • Careers in SQL
    • Careers in SQL Server
    • IS SQL Microsoft?
    • SQL Management Tools
    • What is SQL Developer
    • Uses of SQL
    • How to Install SQL Server
    • What is SQL Server
    • Database in SQL
    • SQL Data Types
    • SQL Keywords
    • Composite Key in SQL
    • SQL Constraints
    • Transactions in SQL
    • First Normal Form
    • SQL Server Data Types
    • SQL Administration
    • SQL Variables
    • SQL Enum
    • Cheat sheet SQL
  • Operators
    • SQL Operators
    • SQL Arithmetic Operators
    • SQL Logical Operators
    • SQL String Operators
    • Ternary Operator in SQL
  • Commands
    • SQL Commands
    • SQL Alter Command
    • SQL Commands Update
    • SQL DML Commands
    • SQL DDL Commands
    • FETCH in SQL
  • Clause
    • SQL Clauses
    • SQL IN Operator
    • SQL LIKE Clause
    • SQL NOT Operator
    • SQL Minus
    • SQL WHERE Clause
    • SQL with Clause
    • SQL HAVING Clause
    • GROUP BY clause in SQL
    • SQL GROUP BY DAY
    • ORDER BY Clause in SQL
    • SQL ORDER BY CASE
    • SQL ORDER BY DATE
    • SQL ORDER BY Alphabetical
    • SQL ORDER BY Ascending
    • SQL Order by Count
    • SQL GROUP BY Month
    • SQL GROUP BY Multiple Columns
    • SQL GROUPING SETS
  • Queries
    • SQL Insert Query
    • SQL SELECT Query
    • SQL SELECT RANDOM
    • SQL Except Select
    • SQL Subquery
    • SQL SELECT DISTINCT
    • SQL WITH AS Statement
  • Keys
    • SQL Keys
    • Primary Key in SQL
    • Foreign Key in SQL
    • Unique Key in SQL
    • Alternate Key in SQL
    • SQL Super Key
  • Functions
    • SQL Date Function
    • SQL String Functions
    • SQL Compare String
    • SQL Window Functions
    • SQL Timestamp
    • SQL TO_DATE()
    • SQL DATEADD()
    • SQL DATEDIFF()
    • ANY in SQL
    • LIKE Query in SQL
    • BETWEEN in SQL
    • LTRIM() in SQL
    • TOP in SQL
    • SQL Select Top
    • Merge SQL
    • SQL TRUNCATE()
    • SQL UNION
    • SQL ALL
    • SQL INTERSECT
    • SQL Alias
    • SQL Server Substring
    • CUBE in SQL
    • SQL RANK()
    • SQL MOD()
    • SQL CTE
    • SQL LAG()
    • SQL MID
    • SQL avg()
    • SQL WEEK
    • SQL DELETE
    • SQL DATEPART()
    • SQL DECODE()
    • SQL DENSE_RANK()
    • SQL NTILE()
    • SQL NULLIF()
    • SQL Stuff
    • SQL Ceiling
    • SQL EXISTS
    • SQL LEAD()
    • SQL COALESCE
    • SQL BLOB
    • SQL ROW_NUMBER
    • SQL Server Replace
    • SQL Server Permission
    • T-SQL INSERT
    • SQL Ranking Function
  • Joins
    • Join Query in SQL
    • Types of Joins in SQL
    • Types of Joins in SQL Server
    • SQL Inner Join
    • SQL Join Two Tables
    • SQL Delete Join
    • SQL Left Join
    • SQL Right Join
    • SQL Cross Join
    • SQL Outer Join
    • SQL Full Join
    • SQL Self Join
    • Natural Join SQL
    • SQL Multiple Join
  • Interview Questions
    • SQL Interview Questions
    • Advance SQL Interview Questions
    • SQL Joins Interview Questions
    • SQL Server Interview Questions

Related Courses

JDBC Training Course

PHP course

Windows 10 Training

SQL Course Training

PL/SQL Certification Courses

Oracle Certification Courses

Footer
About Us
  • Blog
  • Who is EDUCBA?
  • Sign Up
  • Corporate Training
  • Certificate from Top Institutions
  • Contact Us
  • Verifiable Certificate
  • Reviews
  • Terms and Conditions
  • Privacy Policy
  •  
Apps
  • iPhone & iPad
  • Android
Resources
  • Free Courses
  • Database Management
  • Machine Learning
  • All Tutorials
Certification Courses
  • All Courses
  • Data Science Course - All in One Bundle
  • Machine Learning Course
  • Hadoop Certification Training
  • Cloud Computing Training Course
  • R Programming Course
  • AWS Training Course
  • SAS Training Course

© 2020 - EDUCBA. ALL RIGHTS RESERVED. THE CERTIFICATION NAMES ARE THE TRADEMARKS OF THEIR RESPECTIVE OWNERS.

EDUCBA Login

Forgot Password?

EDUCBA
Free Data Science Course

Hadoop, Data Science, Statistics & others

*Please provide your correct email id. Login details for this Free course will be emailed to you
Book Your One Instructor : One Learner Free Class

Let’s Get Started

This website or its third-party tools use cookies, which are necessary to its functioning and required to achieve the purposes illustrated in the cookie policy. By closing this banner, scrolling this page, clicking a link or continuing to browse otherwise, you agree to our Privacy Policy

EDUCBA

*Please provide your correct email id. Login details for this Free course will be emailed to you
EDUCBA
Free Data Science Course

Hadoop, Data Science, Statistics & others

*Please provide your correct email id. Login details for this Free course will be emailed to you

Special Offer - SQL Training Program (7 Courses, 8+ Projects) Learn More