docker安装mssql并还原数据库

首先需要拉取mssql的镜像,咱们先搜索一下。

docker search mssql
docker安装mssql并还原数据库_第1张图片
image.png

咱们来安装第一个镜像

docker pull microsoft/mssql-server-linux

然后查看下镜像

docker images
image.png

然后创建容器

docker run -e "ACCEPT_EULA=Y" -e "SA_PASSWORD=QWER1234" -p 1400:1433 --restart=always --name MSSQL_1400 -d microsoft/mssql-server-linux

接着登录到容器中

docker exec -it MSSQL_1400 /bin/bash

MSSQL_1400是刚才创建的容器的名字

image.png

接着连接到sqlcmd,用命令的方式还原数据库。

/opt/mssql-tools/bin/sqlcmd -S localhost -U sa -P 'QWER1234'

密码就输入刚才的密码,如果能正常登陆的话,会显示1>。


image.png

接下来首先把数据库的bak文件以及mdf,ldf文件拷贝到dcoker容器下面。新建一个终端输入

docker cp  mydb.bak MSSQL_1400:/var/opt/mssql/backup

参数说明:
1.mydb.bak:数据库备份文件
2.后面路径要先指定容器名
3.需要把bak,以及mdf,ldf,三个文件都拷贝过来

还原数据库命令,注意最后需要用go命令来执行,在第二行输入 go

RESTORE DATABASE MyDb FROM DISK=N'/var/opt/mssql/backup/MyDb .bak' WITH REPLACE , MOVE N'MyDb ' TO N'/var/opt/mssql/data/MyDb .mdf' , MOVE N'MyDb _log' TO N'/var/mssql/log/MyDb_0.ldf'

如果出现这个说明数据库还原成功


image.png

接下来可以打开Windows的SSMS管理功能连接看一下,服务器名称是centos 的ip地址加逗号在加容器的端口号


docker安装mssql并还原数据库_第2张图片
image.png

这里可以看到我们已经可以连上了,数据库也还原成功了。
docker安装mssql并还原数据库_第3张图片
image.png

你可能感兴趣的:(docker安装mssql并还原数据库)