SQLServer On Linux 备份还原|学习笔记

本文涉及的产品
云数据库 RDS SQL Server,基础系列 2核4GB
简介: 快速学习 SQLServer On Linux 备份还原

开发者学堂课程【SQL Server on Linux入门教程 SQLServer On Linux备份还原】学习笔记,与课程紧密联系,让用户快速学习知识

课程地址:https://developer.aliyun.com/learning/course/386/detail/4845


SQLServer On Linux 备份还原


MSSQL on Linux Backup & Restore

1、PARTI: BACKUP

(1)Create Table1 FULL BACKUP 首先创建 Table1 FULL BACKUP

(2)Create Table2 DIFFERENTIAL BACKUP 创建 Table2 differential 的 BACKUP(3)Create Table3 LOG BACKUP 创建 Table3 的 LOG BACKUP

在还原过程中最开始做一个 FULL BACKUP 的还原接着做一

differential BACKUP 的还原最后做一个 LOG BACKUP 还原最终的效果是这三张表在最后都要呈现在 restore 上传的数据库里面

(4)首先 terminal 已经连接到虚拟机用 ssms 连过去首先创建一个数据库再创建 Table1做 full backup创建 Table2,DIFFERENTIAL backup再创建Table3,做 log backup这就是整个三种类型的 backup执行

具体代码如下

USE masterGO--If not exists, create testing database

IF DB_ ID('TestDB' ) IS NULLCREATE DATABASE TestDB;GO--create the lst tableUSE TestDBGOIF OBJECT_ ID(' dbo. Table1', 'U') IS N0T NULLDROP TABLE dbo. Table1GOCREATE TABLE dbo. Table1 (RowID INTGO--make a full backupBACKUP DATABASE [TestDB]TO DISK = N' C: \var\opt\mssql\data\TestDB_ full. bak' WITH NOFORMAT, NOINIT,NAME = N' TestDB- -Full Database Backup' , SKIP,NOREWIND, NOUNLOAD, STATS = 10GO--create the second tableIF OBJECT_ID(' dbo. Table2', 'U') IS N0T NULLDROP TABLE dbo. Table2 GO

CREATE TABLE dbo. Table2 (

RowID INT

GO--take a diff backupBACKUP DATABASE [TestDB]TO DISK = N'C: \var\opt\mssql\data\TestDB_diff.bak'

WITH DIFFERENTIAL , N0FORMAT, NOINIT,NAME = N'Tes,DB-Differential Database Backup' , SKIP,NOREWIND, NOUNLOAD,STATS=10GO--create the third tableIF OBJECT ID('dbo.Table3','U') IS NOT NULL

DROP TABLE dbo. Table3GOCREATE TABLE dbo, Table3 (RowID INTGO-- take transaction log backupBACKUP L0G [TestDB]TO DISK = N' C:varlopt mssqldataTestDB_ log. bak' WITH NOFORMAT, NOINIT,NAME = N' TestDB- Transaction Log Backup' , SKIP,

NORFWTND NOINIOAD STATS=10

GO

再输入[root@localhost ~]# ls /var/opt/mssql/data/ I grep bak

检查文件

TestDB_ diff.bak

TestDB_ fùll, bak

TestDB_ log. Bak

2、PARTII: RESTORE

RESTORE FULL BACKUP RESTORE DIFF BACKUP RESTORE LOGBACKUP

进行还原的步骤如果这个数据库已经存在先把它删掉做一个 restore 动作做 full backup 的 restore再对 differential backup 做 restore 动作最后做log backup 的 restore,最后看到的结果跟现在是一样的有三个表先删掉数据库再去还原具体代码如下

USE master

GO

--drop database if exists for testing

IF DB_ ID('TestDB' ) IS NOT NULL

DROP DATABASE TestDB ;

GO

- - restore full database backup

RESTORE DATABASE [TestDB]

FROM DISK = ' C:varlopt mssq1dataTestDB_ full. bak' WITH FILE = 1,

MOVE N' TestDB' TO N' c: varlopt mssq1 datalTestDB. mdf'

MOVE N' TestDB_ 1og TO N' C: varlopt 'mssql dataTestDB_ log. 1df'

NORECOVERY,

NOUNLOAD ,

REPLACE,

STATS = 10

GO

--restore the diff backup

RESTORE DATABASE [TestDB]

FROM DISK = N' C: varlopt mssqldataTestDB_ diff. bak' WITH FILE = 1

NORECOVERY,

NOUNLOAD,

STATS = 10

GO

- - restore the transaction log backup

RESTORE L0G [TestDB]

FROM DISK = N' C:var opt mssql dataTestDB_ log. bak' WITH FILE = 1

NOUNLOAD, STATS = 10

GO

相关文章
|
8月前
|
安全 Unix Linux
Veritas NetBackup 11 for Linux & Windows - 领先的企业备份和恢复解决方案
Veritas NetBackup 11 for Linux & Windows - 领先的企业备份和恢复解决方案
264 0
Veritas NetBackup 11 for Linux & Windows - 领先的企业备份和恢复解决方案
|
7月前
|
关系型数据库 MySQL Linux
在Linux环境下备份Docker中的MySQL数据并传输到其他服务器以实现数据级别的容灾
以上就是在Linux环境下备份Docker中的MySQL数据并传输到其他服务器以实现数据级别的容灾的步骤。这个过程就像是一场接力赛,数据从MySQL数据库中接力棒一样传递到备份文件,再从备份文件传递到其他服务器,最后再传递回MySQL数据库。这样,即使在灾难发生时,我们也可以快速恢复数据,保证业务的正常运行。
325 28
|
Shell Linux
Linux shell编程学习笔记30:打造彩色的选项菜单
Linux shell编程学习笔记30:打造彩色的选项菜单
|
12月前
|
关系型数据库 MySQL Linux
Linux环境下MySQL数据库自动定时备份实践
数据库备份是确保数据安全的重要措施。在Linux环境下,实现MySQL数据库的自动定时备份可以通过多种方式完成。本文将介绍如何使用`cron`定时任务和`mysqldump`工具来实现MySQL数据库的每日自动备份。
695 3
|
12月前
|
监控 关系型数据库 MySQL
Linux环境下MySQL数据库自动定时备份策略
在Linux环境下,MySQL数据库的自动定时备份是确保数据安全和可靠性的重要措施。通过设置定时任务,我们可以每天自动执行数据库备份,从而减少人为错误和提高数据恢复的效率。本文将详细介绍如何在Linux下实现MySQL数据库的自动定时备份。
336 3
|
并行计算 Ubuntu Linux
Ubuntu学习笔记(三):Linux下操作指令大全
Ubuntu学习笔记,介绍了Linux操作系统中常用的命令和操作,如文件管理、系统信息查看、软件安装等。
203 3
|
Shell Linux
Linux shell编程学习笔记82:w命令——一览无余
Linux shell编程学习笔记82:w命令——一览无余
|
存储 Linux 数据库
在Linux中,什么是快照备份?
在Linux中,什么是快照备份?
|
存储 Linux 数据安全/隐私保护
在Linux中,如何创建文件系统的备份?
在Linux中,如何创建文件系统的备份?
|
Linux 数据库
在Linux中,什么是冷备份和热备份?
在Linux中,什么是冷备份和热备份?

热门文章

最新文章