克隆数据库linux 不能登录,DockerSQL2017Linux容器的数据库克隆

bc3f9276acf88283a0569b9b9ef9ee92.png

在线QQ客服:1922638

专业的SQL Server、MySQL数据库同步软件

Windocks在过去两年中已经从Docker的开源项目的独立端口发展到Windows,并提供了完整的SQL Server数据交付解决方案。Windocks支持克隆对象的创建。基于SQL Server备份或存储阵列的数据环境,并交付给Microsoft的SQL Server容器,实例和Kubernetes群集。在本文中,我们将研究如何在Linux容器上将数据库克隆交付到SQL Server 2017。

Linux容器中的SQL Server 2017引起了人们对容器速度和敏捷性以及数据库性能的关注。这里概述的方法对于升级测试以及一般的开发/测试使用应该特别有用。克隆使您可以在几秒钟内交付Terabyte数据库,并具有完整的读/写操作,同时占用最少的网络和存储空间。  

Dockerfile是纯文本配置文件,用于定义SQL Server容器,在Windocks 3.0中,可以在运行时应用。每个图像都可以包含数十个数据库,这些数据库具有适用于用户/组权限,数据屏蔽和其他需求的脚本。 

Windocks 3.0支持外部存储阵列和Windows文件系统数据库克隆。基于Windows的SQL Server映像是使用完全或差异备份或数据库文件构建的,每个备份都是数据库的完整字节副本。数据。创建映像后,映像就可以在几秒钟内创建和交付克隆,并提供完全的读/写支持,每个副本的交付量都不到40 MB。

此Dockerfile定义了一个映像,该映像将克隆的数据库传递到SQL Server 2017 Linux容器。

a6048fa0e2970522a1af1edc3733832e.png

ENVUSE_DOCKERFILE_TO_CREATE_CONTAINER确保在运行时将Dockerfile应用于每个容器/环境。使用显示的参数通过RUN TargetAttach_MSContainerSqlLinux完成向SQL Server 2017 Linux容器的交付。 SQL Server克隆是使用SETUPCLONING,Full,DIFF(差异)备份或RAW数据库文件构建的。  

对通过网络传送数据库克隆的支持基于SMB,在Windocks主机上创建的文件共享已映射到Linux主机(c:\\ windocks \\ data到/windocks/dataexternal为如上所示)。 Linux设置涉及安装SAMBA,并且将Docker守护程序配置为允许远程命令。  

一次构建会创建一个映像,该映像支持无限数量的克隆。下面的示例显示了将克隆复制到新的SQL 2017容器的构建过程,后面是命令。该映像中包含了所涉及的大多数参数,包括主机IP地址和目标SQL Server映像。创建容器只需要两个参数,包括目标端口和SQL SA密码。

8de6206b4072b286321502eef9412a82.png对合并环境的管理由Windocks容器处理。当需要刷新环境时,删除Windocks容器会删除Linux容器和相关的挂载。   

Windocks 3.0引入了对Windocks图像和容器的加密凭据支持。上述工作流程涉及明文SQL SA密码,这是在Linux上使用SQL Server 2017的当前做法。使用Windocks SQL Server容器时,可以使用以下方法保护凭据的安全: 

Windocks容器支持Windows身份验证。

Windocks Windows SQL Server容器是通过克隆配置为由Windocks服务使用的SQL Server实例来创建的。每个容器都继承在父实例上配置的SQL登录名,从而使用户拥有这些帐户。

Windocks还为每个创建的SQL容器包括可配置的SQL SA凭据,包括一个选项,该选项不包含SA密码,加密的SA密码或明文密码。在Windocks config文件夹的节点文件中配置了这三个选项。  SHOW_SA_PASSWORD = 0或1或2,分别表示没有密码,加密或明文。 Windocks配置。

Windocks加密基于Windows数据保护API(DPAPI)。要加密密码,请导航到\\ Windocks \\ bin并打开命令提示符,然后输入“encrypt”。程序会提示输入凭据字符串,并将哈希结果写入同一目录中的crypto.txt中。打开文本文件并将字符串复制到Dockerfile中,在此示例中,我们引用ArrayPassword参数的密码:

ArrayPassword | 1,0,0,0,0,208,140,157,223,1,21,209,17,140,122,0,192,79,194,1,0,。 。

通过在Dockerfile中直接包含加密密码,可以安全地保存和使用Dockerfile。凭据加密后,在对该凭据的任何引用中都需要使用哈希结果或环境变量。

配置为提供加密凭据时,Windocks SQL容器SA密码以标准Docker客户端返回字符串提供(如下图)。要取消加密凭据,请复制完整的字符串并另存为crypto.txt文件。 RDP到Windocks服务器,然后将加密的.txt复制到\\ windocks \\ bin目录中。打开命令提示符,然后输入”解密”。

8c6e0b42e0458200d549c4a644802248.png

程序会解密文本文件并显示密码:

7f1c9f9fc21ff0fbab99042af2d56dc7.png

用户可以通过使用运行时环境变量来使用映像中的数据库子集:SQL_DB_NAME_OVERRIDES = dbname1,dbname2

> docker create-e SQL_DB_NAME_OVERRIDES = dbname1,dbname2 < imagename>

Windocks网络用户界面简化了开发人员和其他用户的使用。打开Chrome或Firefox浏览器,然后指向Windocks服务器的IP地址(本地:  127.0.0.1)。显示的图像带有必需的参数,包括与所需数据库的子集一起使用的选项。面向Linux SQL容器的映像仅需要用户在目标端口上输入和SQL SA密码,并包括一个下拉选择器,用于处理映像中数据库的子集。

d4f492724e29f0ac7a0d2d9dbb2a4676.png

SQL Server 2017 Linux容器在这个日益拥抱Linux和开源技术的世界中引起了人们的广泛关注。无论使用哪种形式的SQL Server,数据库克隆都是实现有效的开发和测试工作流程的关键。通过Windocks数据库克隆,可以在新的SQL Server 2017 Linux容器上进行高效的升级测试并使用大型和复杂的数据环境。

您可以立即通过下载免费的Windocks社区版http://www.windocks.com/community-docker-windows

开始探索这些功能。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值