使用 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文件,内容如下:

yaml 复制代码
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并授权

shell 复制代码
# 创建挂载目录
mkdir mssql
# 赋权限
chmod -R 777  mssql

📚启动服务

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

shell 复制代码
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 数据的开发与运维场景,具备良好的可复现性与环境隔离性。

相关推荐
蝎子莱莱爱打怪1 天前
Centos7中一键安装K8s集群以及Rancher安装记录
运维·后端·kubernetes
崔小汤呀1 天前
Docker部署Nacos
docker·容器
缓解AI焦虑1 天前
Docker + K8s 部署大模型推理服务:资源划分与多实例调度
docker·容器
1candobetter2 天前
Docker Compose Build 与 Up 的区别:什么时候必须重建镜像
docker·容器·eureka
DianSan_ERP2 天前
电商API接口全链路监控:构建坚不可摧的线上运维防线
大数据·运维·网络·人工智能·git·servlet
シ風箏2 天前
MySQL【部署 04】Docker部署 MySQL8.0.32 版本(网盘镜像及启动命令分享)
数据库·mysql·docker
呉師傅2 天前
火狐浏览器报错配置文件缺失如何解决#操作技巧#
运维·网络·windows·电脑
不是二师兄的八戒2 天前
Linux服务器挂载OSS存储的完整实践指南
linux·运维·服务器
zhangfeng11332 天前
趋动云 如何ssh登录 服务区 项目server
运维·人工智能·ssh
BugShare2 天前
继《小爱音响》详细说下怎么部署,尤其是关于Docker部分
docker·nas·xiaomusic