如何使用SQL服务器数据库还原Docker容器

我正在使用Linux的mssql docker文件的最新版本的MacOS Sierra。

我build立了一个数据库,增长到69 GB的大小。 我开始收到错误“由于文件组中的磁盘空间不足,无法为数据库分配新的页面” 。 我试图通过运行这个代码来解决这个问题:

USE [master] GO ALTER DATABASE [db] MODIFY FILE ( NAME = N'db', FILEGROWTH = 512MB ) GO ALTER DATABASE [db] MODIFY FILE (NAME = N'db_log', FILEGROWTH = 256MB ) GO 

这样做后,我不能再启动mssql容器。 然后,我手动replace了Mac OS中称为“com.docker.docker”的容器文件夹的备份副本,其中包含数据库的以前的工作版本。

在这样做之后,我提到出现以下错误: “扩展事件引擎已被启动选项禁用,依赖于扩展事件的function可能无法启动。

在这一点上,我使用本文提到的过程重新安装了Docker容器。 我使用的命令是:

 docker create -v /var/opt/mssql --name mssql microsoft/mssql-server-linux /bin/true docker run -e 'ACCEPT_EULA=Y' -e 'SA_PASSWORD=Test@123' -p 1433:1433 --volumes-from mssql -d --name sql-server microsoft/mssql-server-linux 

虽然现在我可以用新的容器启动服务器,但是我想还原原始的SQL服务器数据库(〜69 GB)。 我试图通过再次手动将名为“Docker.qcow2”的文件复制到泊坞窗容器文件夹中。 这显然不起作用。

我怎样才能恢复我的数据库?