前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >SQL Server示例数据库AdventureWorks的安装使用

SQL Server示例数据库AdventureWorks的安装使用

作者头像
AiDBA宝典
发布2024-01-26 13:41:33
发布2024-01-26 13:41:33
81900
代码可运行
举报
运行总次数:0
代码可运行

方法1:使用备份还原

下载备份文件

使用下面的链接下载适用于你的场景的适当示例数据库。

  • OLTP 数据适用于大多数典型的联机事务处理工作负载。
  • 数据仓库 (DW) 数据适用于数据仓库工作负载。
  • 轻型 (LT) 数据是 OLTP 示例的轻量级精简版本。

如果你不确定需要哪种数据库,可以从与 SQL Server 版本匹配的 OLTP 版本开始。

OLTP

数据仓库

轻型

AdventureWorks2022.bak

AdventureWorksDW2022.bak

AdventureWorksLT2022.bak

AdventureWorks2019.bak

AdventureWorksDW2019.bak

AdventureWorksLT2019.bak

AdventureWorks2017.bak

AdventureWorksDW2017.bak

AdventureWorksLT2017.bak

AdventureWorks2016.bak

AdventureWorksDW2016.bak

AdventureWorksLT2016.bak

AdventureWorks2016_EXT.bak

AdventureWorksDW2016_EXT.bak

空值

AdventureWorks2014.bak

AdventureWorksDW2014.bak

AdventureWorksLT2014.bak

AdventureWorks2012.bak

AdventureWorksDW2012.bak

AdventureWorksLT2012.bak

AdventureWorks2008R2.bak

AdventureWorksDW2008R2.bak

空值

可以直接在 GitHub 上找到其他文件:

  • SQL Server 2014 - 2022
  • SQL Server 2012
  • SQL Server 2008 和 2008R2

还原到 SQL Server

可以使用 .bak 文件将示例数据库还原到 SQL Server 实例。为此,可以使用 RESTORE (Transact-SQL) 命令,或使用 SQL Server Management Studio (SSMS) 或 Azure Data Studio 中的图形界面 (GUI) 。

SSMS还原

如果你是刚开始使用 SQL Server Management Studio (SSMS),可以参阅连接和查询开始入门操作。

若要在 SSMS 中还原数据库,请执行以下步骤:

  1. 从下载备份文件部分提供的链接之一下载适当的 .bak 文件。
  2. .bak 文件移动到 SQL Server 备份位置。根据安装位置、实例名称和 SQL Server 版本,此位置会有所不同。例如,SQL Server 2019 (15.x) 的默认实例的默认位置为: C:\Program Files\Microsoft SQL Server\MSSQL15.MSSQLSERVER\MSSQL\Backup.
  3. 打开 SSMS 并连接到 SQL Server 实例。
  4. 右键单击“对象资源管理器”>“还原数据库…”中的“数据库”以启动“还原数据库”向导。

屏幕截图显示如何通过右键单击“对象资源管理器”中的数据库,然后选择“还原数据库”来选择还原数据库。

  1. 选择“设备”,然后选择省略号 (…) 以选择设备。
  2. 选择“添加”,然后选择最近移动到备份位置的 .bak 文件。如果将文件移动到此位置,但在向导中看不到该文件,这通常表示存在权限问题 - SQL Server或登录到SQL Server的用户没有此文件夹中此文件的权限。
  3. 选择“确定”以确认数据库备份选择,并关闭“选择备份设备”窗口。
  4. 选中“文件”选项卡,确认“还原为”位置和文件名与“还原数据库”向导中的预期位置和文件名一致。
  5. 选择“确定”以还原数据库。

有关还原 SQL Server 数据库的详细信息,请参阅使用 SSMS 还原数据库备份。

SQL还原

可以使用 Transact-SQL (T-SQL) 还原示例数据库。

下面提供了一个还原 AdventureWorks2022 示例,但数据库名称和安装文件路径可能因环境而异。

若要在 Windows 上还原AdventureWorks2022,请根据环境修改值,然后运行以下 Transact-SQL (T-SQL) 命令:

代码语言:javascript
代码运行次数:0
运行
复制
USE [master];
GO
RESTORE DATABASE [AdventureWorks2022]
FROM DISK = N'C:\Program Files\Microsoft SQL Server\MSSQL16.MSSQLSERVER\MSSQL\Backup\AdventureWorks2022.bak'
WITH
    FILE = 1,
    NOUNLOAD,
    STATS = 5;
GO

若要在 Linux 上还原AdventureWorks2022,请将 Windows 文件系统路径更改为 Linux,然后运行以下 Transact-SQL (T-SQL) 命令:

代码语言:javascript
代码运行次数:0
运行
复制
USE [master];
GO
RESTORE DATABASE [AdventureWorks2022]
FROM DISK = '/var/opt/mssql/backup/AdventureWorks2022.bak'
WITH
    MOVE 'AdventureWorks2022' TO '/var/opt/mssql/data/AdventureWorks2022.mdf',
    MOVE 'AdventureWorks2022_log' TO '/var/opt/mssql/data/AdventureWorks2022_log.ldf',
    FILE = 1,
    NOUNLOAD,
    STATS = 5;
GO

方法2:使用创建脚本安装示例数据库

或者,可以使用脚本创建 AdventureWorks 数据库,而不考虑版本。

以下脚本可用于创建整个 AdventureWorks 数据库:

  • AdventureWorks OLTP 脚本 Zip
  • AdventureWorks DW 脚本 Zip

有关使用脚本的更多信息,可以在 GitHub 上找到。

Windows服务器导入

1、下载备份文件.zip文件到数据库服务器上,解压到D:\scripts文件夹

2、使用SSMS工具打开instawdbdw.sql文件,在查询菜单中,启用SQLCMD模式

3、修改第39行如下路径:C:\Samples\AdventureWorksDW\ 为 D:\scripts\

4、注意:对于olap的库,需要修改为如下内容,添加MAXERRORS = 20000,否则导入会报错:

代码语言:javascript
代码运行次数:0
运行
复制
BULK INSERT [Person].[Address] FROM '$(SqlSamplesSourceDataPath)Address.csv'
WITH (
 CHECK_CONSTRAINTS,
 CODEPAGE='ACP',
 DATAFILETYPE = 'char',
 FIELDTERMINATOR= '\t',
 ROWTERMINATOR = '\n',
 KEEPIDENTITY,
 TABLOCK,
 MAXERRORS = 20000
);

请参考:https://www.xmmup.com/mssqldaorushilishujukuadventureworksbaocuo-chuxiandarongliangjiazaishujuzhuanhuancuowuleixingbupia.html

5、最后执行脚本即可。

Linux服务器平台导入

1、下载备份文件.zip文件到Linux数据库服务器上,解压到/soft/文件夹

2、使用SSMS工具打开instawdbdw.sql文件,在查询菜单中,启用SQLCMD模式

3、修改第39行如下路径:C:\Samples\AdventureWorksDW\ 为 /soft/AdventureWorks-oltp-install-script/

4、若数据库在Linux服务器上,则需要修改instawdbdw.sql和instawdb.sql文件,注释掉如下内容,否则会报错:Keyword or statement option 'CODEPAGE' is not supported on the 'Linux' platform.

代码语言:javascript
代码运行次数:0
运行
复制
CODEPAGE='ACP',

批量替换为
-- CODEPAGE='ACP',

5、注意:对于olap的库,需要修改为如下内容,添加MAXERRORS = 20000,否则导入会报错:

代码语言:javascript
代码运行次数:0
运行
复制
BULK INSERT [Person].[Address] FROM '$(SqlSamplesSourceDataPath)Address.csv'
WITH (
 CHECK_CONSTRAINTS,
 CODEPAGE='ACP',
 DATAFILETYPE = 'char',
 FIELDTERMINATOR= '\t',
 ROWTERMINATOR = '\n',
 KEEPIDENTITY,
 TABLOCK,
 MAXERRORS = 20000
);

请参考:https://www.xmmup.com/mssqldaorushilishujukuadventureworksbaocuo-chuxiandarongliangjiazaishujuzhuanhuancuowuleixingbupia.html

6、最后执行脚本即可。

总结

1、推荐备份还原方式创建,直接使用2008的备份文件,可以还原到最高2022版本(已测试)

2、oltp库大概230MB,而OLAP大概160MB

3、压缩包文件必须放在数据库服务器上

4、若不开启全文搜索服务,则导入会有部分报错,但是不影响表数据量

参考

https://learn.microsoft.com/zh-cn/sql/samples/adventureworks-install-configure?view=sql-server-ver16&tabs=ssms

https://github.com/Microsoft/sql-server-samples

https://github.com/Microsoft/sql-server-samples/releases/tag/adventureworks

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2024-01-25,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 DB宝 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 方法1:使用备份还原
    • 下载备份文件
    • 还原到 SQL Server
      • SSMS还原
      • SQL还原
  • 方法2:使用创建脚本安装示例数据库
    • Windows服务器导入
    • Linux服务器平台导入
  • 总结
  • 参考
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档