若要为 Microsoft Windows 客户端创建 DSN,您必须执行以下任务:
为 Windows 客户端创建 ODBC DSN
1 - 设置 ODBC DSN
数据源名称 (DSN) 是 ODBC 逻辑名称,用来表示驱动程序和访问数据源中的数据所需的其他信息。此名称由 Internet 信息服务 (Internet Information Services, IIS) 用于与 ODBC 数据源的连接。
此部分介绍如何使用 Vertica ODBC 驱动程序设置 ODBC DSN。本主题假设您已按照在 Windows 中安装客户端驱动程序中所述安装了驱动程序。
设置 DSN
-
打开 ODBC 管理器。例如,可以导航到“开始 > 控制面板 > 管理工具 (Administration Tools) > 数据源 (ODBC)”。
注意
用于打开 ODBC 管理器的方法取决于 Windows 版本。Windows 版本之间的差异和开始菜单 自定义可能要求执行不同的操作以打开 ODBC 管理器。 -
确定是否希望客户端系统上的所有用户都能访问 Vertica 数据库的 DSN。
-
如果想让所有用户都可访问,则单击系统 DSN (System DSN) 选项卡。
-
否则,单击用户 DSN 选项卡以创建仅供您的 Windows 用户帐户使用的 DSN。
-
-
单击添加 (Add) 以创建用于连接到 Vertica 数据库的新的 DSN。
-
滚动浏览“创建新数据源 (Create a New Data Source)”对话框中的驱动程序列表以查找 Vertica 驱动程序。选择该驱动程序,然后单击完成。
注意
如果在 Windows 客户端系统上安装了多个版本的 Vertica 客户端驱动程序,您可能会在此列表中看到该驱动程序的多个版本。选择您知道与客户端应用程序和 Vertica 分析数据库服务器兼容的版本。如果不确定,可以使用最新版本的驱动程序。此时将显示 Vertica ODBC DSN 配置对话框。
-
单击更多 >>> (More >>>) 按钮,以查看正在编辑的字段和由 DSN 定义的连接字符串的描述。
-
输入 DSN 的信息。以下字段是必填的:
-
DSN 名称 — DSN 的名称。客户端使用此名称来标识要连接到的 DSN。DSN 名称必须满足以下要求:
-
最大长度为 32 个字符。
-
它由 ASCII 字符组成,但以下字符除外: { } , ; ? * = ! @ \
-
它不包含空格。
-
-
服务器 — 要连接到的 Vertica 服务器的主机名或 IP 地址。如果 Vertica 已安装在同一台计算机上,则使用 localhost。
您可以提供 IPv4 地址、IPv6 地址或主机名。
在 IPv4/IPv6 混合网络中,DNS 服务器配置决定了哪个 IP 版本地址最先发送。可使用
PreferredAddressFamily
选项来强制连接使用 IPv4 或 IPv6。PreferredAddressFamily
选项在“客户端设置”选项卡上可用。 -
备份服务器 — 用于在“服务器”字段中指定的服务器已关闭时连接到的主机名或 IP 地址的逗号分隔列表。可选。
-
数据库 — Vertica 数据库的名称。
-
用户名 — 在连接到数据库时使用的用户帐户的名称。在连接到 DSN 时,如果应用程序不提供自己的用户名,则会使用此帐户名称登录到数据库。
其余字段是可选的。有关可以定义的 DSN 参数的详细信息,请参阅 DSN 参数。
-
-
如果要测试连接,请执行下列操作:
-
至少输入有效的 DSN 名称、服务器名称、数据库,并输入用户名 或选择 Windows 身份验证。
-
如果未选择 Windows 身份验证,您可以在密码 框中输入密码。或者,您也可以选择密码提示,以让驱动程序在连接时提示您输入密码。
-
单击测试连接。
-
-
完成编辑和测试 DSN 后,单击确定。Vertica ODBC DSN 配置窗口将关闭,并且新的 DSN 会在“ODBC 数据源管理器”窗口中列出。
-
单击确定 (OK) 以关闭 ODBC 数据源管理器。
创建 DSN 后,您可以使用 Microsoft Excel 2007 进行测试。
在 64 位版本的 Microsoft Windows 上设置 32 位 DSN
在 64 位版本的 Windows 上,ODBC 数据源管理器在默认情况下会创建并编辑与 64 位 Vertica ODBC 库关联的 DSN。
尝试将这些 64 位 DSN 与 32 位客户端应用程序结合使用会生成架构不匹配错误。相反,您必须通过运行 32 位 ODBC 管理器为 32 位客户端创建特定的 32 位 DSN,该管理器通常位于以下位置:
c:\Windows\SysWOW64\odbcad32.exe
此管理器窗口可用于编辑与 32 位 ODBC 库关联的一组 DSN。使用此版本的 ODBC 管理器创建的 DSN 可与 32 位客户端应用程序结合使用。
2 - ODBC DSN 的密码加密
当您安装 ODBC 驱动程序并创建数据源名称 (DSN) 时,DSN 设置(其中包括)将存储在注册表中。ODBC DSN 的密码加密仅适用于 Windows 系统。
对 ODBC 数据源名称 (DSN) 的密码进行加密,可防止未经授权的数据库访问。密码默认不加密,以纯文本形式存储。
注意
在 Vertica ≤8.0.x 中创建的 ODBC DSN 密码升级到更高版本时不会加密,无论加密设置如何均是如此。启用密码加密
使用 EncryptPassword 参数,可为 ODBC DSN 启用或禁用密码加密:
-
EncryptPassword = true
启用密码加密 -
EncryptPassword = false
(默认)禁用密码加密
在 Windows 注册表中设置 EncryptPassword
- HKEY_LOCAL_MACHINE > Software > Vertica > ODBC > Driver EncryptPassword=<true/false>
。
注意
对于在 64 位 windows 上运行的 32 位驱动程序,请在此处验证密码加密:
HKEY_LOCAL_MACHINE > Software > Wow6432Node > Vertica > ODBC >
Driver > EncryptPassword=<true/false>
加密密码在以下注册表位置更新:
对于用户 DSN:
HKEY_CURRENT_USER-> Software -> ODBC -> ODBC.INI -> DSNNAME -> PWD
对于系统 DSN:
HKEY_LOCAL_MACHINE-> Software -> ODBC -> ODBC.INI -> DSNNAME -> PWD
验证密码加密
使用 Windows 注册表编辑器,根据 EncryptPassword 的值确定是否已启用密码加密。根据您安装的 DSN 类型,检查以下内容:
对于用户 DSN: HKEY_CURRENT_USER > Software > ODBC > ODBC.INI > dsn name > isPasswordEncrypted=<1/0>
对于系统 DSN: HKEY_LOCAL_MACHINE > Software > ODBC > ODBC.INI > dsn name > isPasswordEncrypted=<1/0>
对于每个 DSN,isPasswordEncrypted
参数值表示密码加密的状态。其中,1
表示密码已加密,0
表示密码未加密。
3 - 使用 Excel 测试 ODBC DSN
可以使用 Microsoft Excel 验证应用程序是否能够连接到 ODBC 数据源或其他 ODBC 应用程序。
-
打开 Microsoft Excel,然后选择数据 (Data) > 获取外部数据 (Get External Data) > 来自其他来源 (From Other Sources) > 来自 Microsoft Query (From Microsoft Query)。
-
当“选择数据源 (Choose Data Source)”对话框打开之后:
-
请选择新建数据源 (New Data Source),然后单击确定 (OK)。
-
输入数据源的名称。
-
选择 Vertica 驱动程序。
-
单击连接。
-
-
-
当“Vertica 连接对话框 (Vertica Connection Dialog)”打开之后,输入 DSN 的连接信息,然后单击确定 (OK)。
-
在“创建新数据源”对话框上单击确定,以返回到“选择数据源”对话框。
-
选择“VMart_Schema*”,并验证是否已取消选中“使用查询向导 (Use the Query Wizard)”复选框。单击确定 (OK)。
-
当“添加表”对话框打开后,单击关闭。
-
当“Microsoft 查询 (Microsoft Query)”窗口打开之后,单击 SQL 按钮。
-
在“SQL”窗口中,编写任意简单查询以测试连接。例如:
SELECT DISTINCT calendar_year FROM date_dimension;
-
*如果您看到提醒“SQL Query 无法以图形表示。是否继续?(SQL Query can't be represented graphically. Continue anyway?)”,请单击**确定 (OK)**。 *数据值 2003、2004、2005、2006、2007 表示已成功连接到 ODBC,并通过 ODBC 执行了查询。
-
选择文件 (File) > 将数据返回到 Microsoft Office Excel (Return Data to Microsoft Office Excel)。
-
在“导入数据”对话框中,单击确定。
数据当前在 Excel 工作表中可用。