You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Ubuntu 16.04上安装Adventure Works示例数据库?

当然没问题!你完全可以在Ubuntu 16.04 LTS上的SQL Server 2017 Express里部署AdventureWorks或者WideWorldImporters示例库,用来练习SQL查询。下面我给你一步步拆解具体操作:

准备工作

首先确保你的SQL Server服务处于运行状态:

  • 检查服务状态:sudo systemctl status mssql-server
  • 如果服务未启动,执行启动命令:sudo systemctl start mssql-server
推荐安装:WideWorldImporters(新版示例库)

这是微软推出的新一代示例库,包含更丰富的业务场景数据,更适合练习复杂查询:

  1. 获取备份文件:你可以从微软官方的SQL Server示例资源渠道获取WideWorldImporters-Full.bak备份包,在终端里用wget命令就能直接下载。
  2. 复制到SQL Server备份目录:SQL Server在Linux上的默认备份目录是/var/opt/mssql/data/,执行命令把备份文件移过去:
    sudo cp WideWorldImporters-Full.bak /var/opt/mssql/data/
  3. 修改文件权限:让SQL Server系统用户能访问这个备份文件:
    sudo chown mssql:mssql /var/opt/mssql/data/WideWorldImporters-Full.bak
  4. 恢复数据库:
    • 用sqlcmd连接到SQL Server:sqlcmd -S localhost -U SA -P 你的SA登录密码
    • 执行恢复SQL语句(复制粘贴到命令行即可):
      RESTORE DATABASE WideWorldImporters
      FROM DISK = '/var/opt/mssql/data/WideWorldImporters-Full.bak'
      WITH MOVE 'WWI_Primary' TO '/var/opt/mssql/data/WideWorldImporters.mdf',
      MOVE 'WWI_UserData' TO '/var/opt/mssql/data/WideWorldImporters_UserData.ndf',
      MOVE 'WWI_Log' TO '/var/opt/mssql/data/WideWorldImporters.ldf',
      MOVE 'WWI_InMemory_Data_1' TO '/var/opt/mssql/data/WideWorldImporters_InMemory_Data_1';
      GO
      
    • 验证恢复结果:执行SELECT name FROM sys.databases WHERE name = 'WideWorldImporters'; GO,如果返回库名就说明成功了。
可选安装:AdventureWorks(经典示例库)

如果你更习惯经典的AdventureWorks场景,也可以按照以下步骤安装:

  1. 获取备份文件:获取对应版本的备份包(比如AdventureWorks2017.bak),同样用wget下载到本地。
  2. 复制并修改权限:
    sudo cp AdventureWorks2017.bak /var/opt/mssql/data/
    sudo chown mssql:mssql /var/opt/mssql/data/AdventureWorks2017.bak
  3. 恢复数据库:
    • 连接SQL Server后,执行恢复语句:
      RESTORE DATABASE AdventureWorks2017
      FROM DISK = '/var/opt/mssql/data/AdventureWorks2017.bak'
      WITH MOVE 'AdventureWorks2017' TO '/var/opt/mssql/data/AdventureWorks2017.mdf',
      MOVE 'AdventureWorks2017_log' TO '/var/opt/mssql/data/AdventureWorks2017_log.ldf';
      GO
      
    • 同样用SELECT name FROM sys.databases WHERE name = 'AdventureWorks2017'; GO验证是否成功。
一些注意事项
  • 确保你的SA密码符合SQL Server的复杂度要求(比如包含大小写字母、数字和特殊字符),不然会连接失败。
  • 如果下载备份文件速度慢,也可以在浏览器里下载后通过SFTP等工具传到Ubuntu机器上。
  • 恢复时如果提示文件路径冲突,检查/var/opt/mssql/data/目录里是否有同名的.mdf或.ldf文件,先删除或者修改恢复语句里的目标文件名即可。

内容的提问来源于stack exchange,提问作者viskop-kapenaar

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.19 10:13:32