使用Docker部署SQL Server并导入.mdb文件的完整指南

 更新时间:2026年02月04日 08:36:22   作者:修己xj  
最近在项目中遇到一个需求,需要从 .mdb 文件中提取特定数据并导入到现有系统数据库中,于是,我重新查阅资料,整理了以下关于如何使用 Docker 部署 SQL Server 并导入 .mdb 文件的步骤,需要的朋友可以参考下

最近在项目中遇到一个需求,需要从 .mdb 文件中提取特定数据并导入到现有系统数据库中。当现场同事将 .mdb 文件发给我后,我首先尝试在本地打开以查看数据结构,但试了多种方法都未能成功——原生的 Microsoft Access 需要付费激活,其他各类工具也均告失败。后来在网上看到有网友建议可以将 .mdb 文件导入 SQL Server 数据库后再进行操作,于是灵机一动:部署一个 SQL Server 岂不是更直接?我便翻出之前 Docker 部署 SQL Server 的文档,结果发现相关镜像已不存在。于是,我重新查阅资料,整理了以下关于如何使用 Docker 部署 SQL Server 并导入 .mdb 文件的步骤。

什么是.mdb文件?

.mdb文件是Microsoft Access数据库文件,它是微软公司开发的一种专有数据库格式,主要用于其桌面关系数据库管理系统(RDBMS)——Microsoft Access。

主要用途:

  • 桌面数据库应用:适用于中小型业务的数据管理(如库存、客户信息)。
  • 原型开发:快速构建数据库应用程序原型。
  • 报表生成:创建和管理自定义报表。
  • 与其他Office集成:可与Excel、Word等无缝连接。

Docker部署sql server数据库

创建docker-compose.yml 文件

首先创建一个部署目录sqlserver,在该目录下创建docker-compose.yml文件,内容如下:

services:
  sqlserver:
    image: mcr.microsoft.com/mssql/server:2025-latest
    container_name: mssql-server
    restart: always
    environment:
      #接受最终用户许可协议
      - ACCEPT_EULA=Y
      #SA用户密码,密码长度必须至少为8个字符,并且包含以下四组中的三组字符:大写字母、小写字母、数字和符号。
      - SA_PASSWORD=Abcd1234
    ports:
      - 1433:1433
    volumes:
      - ./mssql:/var/opt/mssql

创建挂载目录并授权

在docker-compose.yml同级目录下创建数据挂载目录mssql并授权

# 创建挂载目录
mkdir mssql
# 赋权限
chmod -R 777  mssql

启动服务

在docker-compose.yml同级目录下执行以下命令启动服务

docker-compose up -d 

如果启动过程中有报权限文档的错误Access denied errno = 0xD(13) Permission denied]时,给挂载目录赋权限之后再重新启动容器即可。

连接数据库

我连接数据库使用的时navicat,我记得旧版本还需要再安装目录下安装qlncli,但是新版本的navicat不用,直接连接即可.

将.mdb文件导入sql server数据库

连接到sql server 数据库之后新建数据库,再上右击导入向导,选择MS Access数据库,点击下一步,选择需要导入的表,将数据导入到sql server 中,然后按照正常的数据表就可以查看了。如果需要修改,则修改完之后再导出文件即可。

总结

通过 Docker 部署 SQL Server 并结合 Navicat 等工具,可以高效、灵活地处理 .mdb 文件,既避免了本地安装 Microsoft Access 的成本与限制,也便于在开发环境中进行数据迁移与转换。这种方法尤其适合需要临时或频繁处理 Access 数据的开发与运维场景,具备良好的可复现性与环境隔离性。

以上就是使用Docker部署SQL Server并导入.mdb文件的完整指南的详细内容,更多关于Docker部署SQL Server并导入.mdb的资料请关注脚本之家其它相关文章!

相关文章

  • SQL查询中需要使用别名问题

    SQL查询中需要使用别名问题

    今天写MySQL时遇到使用表别名的问题,这里重新总结一下,需要的朋友可以参考下
    2017-02-02
  • SQLServer导入数据图文方法

    SQLServer导入数据图文方法

    有时需要将别的数据库的内容,导入到当前数据库中,就需要导入数据即可。下面是详细的图文方法。
    2010-07-07
  • 分享Sql Server 存储过程使用方法

    分享Sql Server 存储过程使用方法

    这篇文章主要介绍了分享Sql Server 存储过程使用方法的相关资料,需要的朋友可以参考下
    2022-09-09
  • SQL Server数据库自动备份完整配置详细指南

    SQL Server数据库自动备份完整配置详细指南

    数据库备份是任何业务连续性和灾难恢复策略的基本组成部分,因为数据库备份可以帮助保护数据免遭损坏或删除,这篇文章主要介绍了SQL Server数据库自动备份完整配置的相关资料,需要的朋友可以参考下
    2025-10-10
  • SQL Server修改数据的几种语句详解

    SQL Server修改数据的几种语句详解

    在SQL中的基本操作就是增删改查,查询语句不会对数据库中的数据进行修改,下面这篇文章主要给大家介绍了关于SQL Server修改数据的几种语句,需要的朋友可以参考下
    2022-10-10
  • 详解SQL Server 2016快照代理过程

    详解SQL Server 2016快照代理过程

    给大家详细分析了SQL Server 2016 快照代理过程,并实例分析了其中需要注意的地方,跟着小编一下学习下吧。
    2017-12-12
  • NetBeans连接SQL server数据库教程

    NetBeans连接SQL server数据库教程

    这篇文章主要介绍了NetBeans连接SQL server数据库教程,本文通过图文并茂的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2023-06-06
  • SqlServer应用之sys.dm_os_waiting_tasks 引发的疑问(上)

    SqlServer应用之sys.dm_os_waiting_tasks 引发的疑问(上)

    很多人在查看SQL语句等待的时候都是通过sys.dm_exec_requests查看,等待类型也是通过wait_type得出,sys.dm_os_waiting_tasks也可以看到session的等待那么有什么区别呢....,这篇文章给大家介绍SqlServer应用之sys.dm_os_waiting_tasks 引发的疑问(上),需要的朋友参考下
    2015-12-12
  • SQL Server误区30日谈 第17天 有关页校验和的误区

    SQL Server误区30日谈 第17天 有关页校验和的误区

    从旧的实例升级上来的数据库不会自动开启页校验和,除非你显式使用ALTER DATABASE databasename SET PAGE_VERIFY CHECKSUM进行开启。而在SQL Server 2005或2008新建的数据库页校验和是默认开启的
    2013-01-01
  • 教你编写SQLMap的Tamper脚本过狗

    教你编写SQLMap的Tamper脚本过狗

    安全狗其实是比较好绕的WAF,绕过方法很多,但这里我们就用一种:注释混淆,这篇文章主要介绍了教你编写SQLMap的Tamper脚本过狗,需要的朋友可以参考下
    2023-02-02

最新评论