SQL on Linux Docker 迁移|学习笔记

简介: 快速学习 SQL on Linux Docker 迁移

开发者学堂课程【SQL Server on Linux入门教程SQL on Linux Docker 迁移】学习笔记,与课程紧密联系,让用户快速学习知识

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


SQL on Linux Docker 迁移


一、在 Windows SQL Server 上创建数据测试

二、给 Docker Volume 复制文档

三、给 SQL on Linux for Docker 储存数据

四、 给 SQL on Linux for Docker 调用数据

五、二次检查


如何把数据库迁移到 Docker 版的 SQL server 里面比如 windows 系统里SQL server 的数据库需要迁移到 SQL on Linux base on Docker Migration这里涉及到两种方法第一种方法是传统的 Backup restore 方式第二种Attach Database 的方式为了测试这两种方法首先去创建两个数据库在 windows版的 SQL server 里接下来要把备份的文件以及 Mdf & ldf 文件 copy 到 Docker里面把数据库还原到 SQL on Linux Docker 进行 attach Database 的动作最后一步做 Double Check看测试有没有成功这就是整体的一个步骤


一、在Windows SQL Server 上创建数据测试

1、Create Testing objects

2、Backup

3、Stop SQL Service

分别创建了 tb 加 test并且插入了两条数据最后 TestAttach
TestBackRestore 的一个动作并且把 TestAttach 数据库设置为 offline因为要拷贝 Mdf ldf 文件
代码如下:
IF DB_ ID('TestAttacb')IS NULL CREATE DATABASE TestAttach;GOUSE TestAttachGOIF OBJECT_ID('dbo.th Test','U')IS NOT NULL

DROP TABLE dbo.tb, Test GOCREATE TABLE dbo.tb_Test(RowID INT IDENTITY(1,1) NOT NULL PRIMARY KEY

Name VARCHAR(36) NOT NULL);INSERT INTO dbo.th, Test(SELECT NEWID() UNION ALL SELECT 'NEWID();SELECT * FROM dbo tb. Test;IF DB_ ID('TestBackRestose') IS NULL

CREATE DATABASE TestBackRestore;

GOUSE IestBackBestoreGOIF OBJECT_ID('dbo,tb..Test', 'U')IS NOT NULL

DROP TABLE dbo.th.TestGOCREATE TABLE dbo.th.Test(RowID INT IDENTITY(1,1) NOT NULL PRIMARY KEY

执行结果如下backupBestore 数据库的两条数据最下面是这个数据所在的目录

图片2.png


二、给 Docker Volume 复制文档

Backup file

Mdf & ldf

Mdf & ldf copy docker 里面还有一个 bak 文件也 copy 到这个目录下面把以下三个文件传到 docker 容器里面docker cp ~/Downloads/TestBackRestore.mdf linuxsql41433:/xar/opt/mssg/data/estBackRestoremddocker çp ~/Downloads/TestBackRestore, Jog.ldf linuxsql41433:/xar/opt/mssaJ/data/TestBackRestore Jog.ldfdocker çp ~/Downloads/TestBackRestore_ full, _201702 10.bak linuxsql41433:/var/opt/mssa/data/TestBackRestore_ full_ 20170210.bakcopy成功之后去容器里面看一下

 

三、给 SQL on Linux for Docker 储存数据

首先测试的是还原的动作还原之前检查一下备份文件是不是一致性有问题接着做还原的测试

USE master

Go--Verify backup fileRESTORE FILELISTONLYFROM DISK . N'C:Lxar'optmssqldataTestBackRestore_ _full_ 20170210.bak';

RESTORE VERIFYONLYFROM DISK . N'C:' xar'optmssaldatalTestBackRestore _full_ 20170210.bak';

-- Restore DatabaseUSE masterGORESTORE DATABASE [TestBackRestare]FROM DISK = N'C:xarlopt'mssaldataTestBackRestore _full_ _201 70210.bak'WITH MOVE NTestBackBestore TO N'C; watloptoossaldataTestBackBestremndf' ,MOVE N'TestBackRestore, log' TO N'C:luarloptmssaldataTestBackRestoe Jog.Jdf ,STATS= 2GO

 

四、给SQL on Linux for Docker 调用数据

做一个 attach 动作还原动作结束

-- Create database via attachCREATE DATABASE[ TestAttach]ON ( FILENAME = N'C:xar'optmssaldataTestAttacb.md'),( FILENAME = N'C:xar'opt'massadataTestAttach.log.d');

For attachGO


五、二次检查

检查这两条数据,在数据库里面对比一下,先查看第一条数据。

SELECT * FROM TestBackRestore dbo.tbTest;

图片3.png

SELECT * FROM TestAttach, dba tb Test;

图片4.png

这两种方法都是可行的非常的平滑它是完全可以通用的windows 的文件放到SQL server 是完全可用的

相关文章
|
24天前
|
存储 缓存 Docker
docker: No space left on device处理与迁移目录
通过以上方法,可以有效地管理 Docker 的磁盘使用情况,并确保 Docker 运行环境的稳定性和效率。
112 34
|
2月前
|
安全 大数据 Linux
云上体验最佳的服务器操作系统 - Alibaba Cloud Linux | 飞天技术沙龙-CentOS 迁移替换专场
本次方案的主题是云上体验最佳的服务器操作系统 - Alibaba Cloud Linux ,从 Alibaba Cloud Linux 的产生背景、产品优势以及云上用户使用它享受的技术红利等方面详细进行了介绍。同时,通过国内某社交平台、某快递企业、某手机客户大数据业务 3 大案例,成功助力客户实现弹性扩容能力提升、性能提升、降本增效。 1. 背景介绍 2. 产品介绍 3. 案例分享
|
7月前
|
Kubernetes Ubuntu Linux
docker学习笔记
docker学习笔记
73 0
|
3月前
|
SQL 运维 监控
南大通用GBase 8a MPP Cluster Linux端SQL进程监控工具
南大通用GBase 8a MPP Cluster Linux端SQL进程监控工具
|
5月前
|
Linux Docker 容器
Centos安装docker(linux安装docker)——超详细小白可操作手把手教程,包好用!!!
本篇博客重在讲解Centos安装docker,经博主多次在不同服务器上测试,极其的稳定,尤其是阿里的服务器,一路复制命令畅通无阻。
5239 4
Centos安装docker(linux安装docker)——超详细小白可操作手把手教程,包好用!!!
|
5月前
|
安全 网络安全 开发者
Docker学习笔记(一):Docker命令总结
本文介绍了Docker的基本概念、优点以及常用命令。Docker是一个开源的应用容器引擎,它通过容器打包应用程序及其依赖项,实现快速部署和迁移。主要优点包括轻量级、可移植性、易于管理、安全性和开源性。文章还区分了镜像和容器的概念,并提供了构建镜像、查看容器、运行容器、停止和删除容器等常用Docker命令的示例。
193 0
|
5月前
|
弹性计算 Linux 数据库
阿里云国际版如何迁移Linux云服务器系统盘中的数据
阿里云国际版如何迁移Linux云服务器系统盘中的数据
|
6月前
|
Docker Windows Python
Windows-Docker学习笔记(一)
本文介绍了Windows环境下Docker的安装与使用方法。首先通过链接下载Windows版本的Docker,然后按步骤配置:启用Windows功能、设置默认WSL版本为2,并检查Docker及其组件是否正常工作。接着详细列出了Docker的基础命令及其用法,包括搜索、下载镜像、管理容器等。同时介绍了Dockerfile的编写方法及其构建过程,以及docker-compose.yml文件的用途。最后提供了运行和管理容器的具体示例。
Windows-Docker学习笔记(一)
|
6月前
|
存储 Docker 容器
Docker工作目录迁移
Docker工作目录迁移
|
5月前
|
SQL 分布式计算 关系型数据库
Hadoop-24 Sqoop迁移 MySQL到Hive 与 Hive到MySQL SQL生成数据 HDFS集群 Sqoop import jdbc ETL MapReduce
Hadoop-24 Sqoop迁移 MySQL到Hive 与 Hive到MySQL SQL生成数据 HDFS集群 Sqoop import jdbc ETL MapReduce
174 0