SQL Server的有效安装[2]

 我来答
机器1718
2022-11-12 · TA获得超过6826个赞
知道小有建树答主
回答量:2805
采纳率:99%
帮助的人:160万
展开全部
       排序规则

       接下来 你需要选择排序规则设置 SQL Server 中的排序规则(Collation)设置用来管理和语言相关的行为 对象名称和列的值的唯一性 以及排序规则(sorting rules) 在排序规则设置对话框里 你说明排序规则并在SQL Server排序规则和Windows排序规则两者之间选择其一 如果你需要和以前SQL Server版本的向后兼容性 选择SQL Server排序规则——比如 如果你打算在一个早期版本的SQL Server和SQL Server 之间使用复制 否则 选择Windows排序规则 SQL Server 的排序规则设置 不管是Windows或是SQL Server 合并了在先前版本中的 个独立的设置 字符集 排序次序和Unicode排序规则 除了整合旧的 个设置到一起外 SQL Server 在排序规则中还提供了比以前版本更为强大的灵活性

       在你安装SQL Server 时选择的排序规则决定了系统数据库的排序规则设猛如置 要在安装后更该系统数据库的排序规则设置 你需要脚本化所有你的系统对象(比如 登录 消息 工作)并且运行rebuildm exe 它用新的排序规则重建了所有的系统数据库 然而 你不必先导出用户数据库中的所有数据再在运行完rebuildm exe后把他们再导入——就像你再SQL Server 中所作的那样 你只须重新连接用户数据库到SQL Server 你可以用不同于默认服务器的排序规则(这是模板系袜卜统数据库的)的排序规则配置你的用户数据库 或者甚至用不同于服务器设置的排序规则连接或恢复一个数据库 你可以以后修改用户数据库的默认排序规则 对于特定的一列 你可以指定不同于默认的数据库排序规则的一种排序规则 你甚至可以稍后修改列的排序规则——如果该列上没有创建索引的话

       虽然在排序规则方面SQL Server 是灵活的 不要低估了你在安装时作的选择 正如我前面所言 服务器的排序规则应用到所有的系统数据库并且决定了记录在系统数据库中所有对象(如登录名 数据库名)的排序规则 进一步而言 tempdb的排序规则也是你在安装过程中选择的服务器排序规则 当你创建一个临时表 表的列使用tempdb的排序规则——除非你在每列的定义里指明COLLATE 数据库默认

       网络库

       在说明了排序规则设置后 你来到了网络库对话框 网络库是客户机应用程序用来和SQL Server通讯的协议 客户机和SQL Server都必须有至少一个匹配的网络库 通过它两者可以通讯 在网络库对话框中 你设置SQL Server将会用来和客户机通讯的网络库

       在SQL Server 中 只有命名管道和多协议允许Windows身份验证 所有其他网络库只允许SQL Server身份验证 这样一来 对于SQL Server 来说 你想要支持的登录类型时你选择网络库的一个因素 进一步来说 只有多协议允许数据加密 所以如果你SQL Server 支持数据加密 你就不得不选择这个网络库 在SQL Server 中 所有网络库支持Windows身份验证 在这个意义上你就更加灵活 但是多协议仍然是唯一允许数据加密的网络库

       在SQL Server 里 你可以通过使用SQL Server 网络工具和SQL Server客户机网络工具的安全套接字层(Secure Socket Layer SSL)来对所有网络库强制加密 这样一来 加密因素不再决定网络库的选择 同样 在SQL Server 里 多协议不支持命名实例方案(服务器名\实例名) 这样的话 当你使用命名实例时 多协议也不是个好的选择 SQL Server 中最通用的网络库大概是TCP/IP套接字吧 它提供了良好的性能 允许Windows身份验证 而且你可以在需要时对它进行强制SSL加密

       大多数使用SQL Server早期版本的用户知道SQL Server的默认TCP端口是端口 当使用默认端口时 客户机连接除了服务器名或者IP地址不需要提供端口号 然而 SQL Server 支持多个实例 这无法统统使用同样的端口号 所以当你安装一个命名实例时 安告知穗装程序建议把 作为端口号 端口号为 意味着当SQL Server第一次启动时 它动态地选择一个空闲的端口号并且把它永久保留或者直到你稍后手工修改它为止 那么客户机连接如何继续通过仅仅提供服务器名称/IP地址+实例名而不用指定端口号找到SQL Server呢?SQL Server 中的一个监听器服务监听端口 上的客户机请求 然后通过检测请求中的实例名并把它和实例的端口号匹配 再把该请求重定向到适当的实例

       无人值守和远程安装

       现在我们的标准安装已经完成 让我们讨论一下无人值守安装 Setupsql exe程序让你记录下一个应答文件 它包括了你在安装程序对话框中常选的对于各种安装选项的所有回答 稍后 你能够通过调用以该应答文件作为参数的setupsql exe命令来运行一个安装 这种无需任何用户干预的安装类型被称为无人值守安装

       要准备应答文件 先启动安装程序 在安装选择对话框中选择高级选项 在对话框中选择选取 记录无人值守 ISS文件 安装程序会指导你完成常规的安装对话框 其中你可以填入所有你想要记录的选项 当你完成后 安装程序在\WINNT文件夹下创建一个名为setup iss的文件

       要启动一个无人值守安装 运行setupsql exe程序 用 s作为执行安静安装的参数 fl参数指定一个应答文件 例如 要启动一个安静的 无人值守的安装——安装完成后不通知你 你可以使用以下命令

       <path> etupsql exe –s –fl <path> etup iss

       如果你想在安装完成时得到通知 从命令行执行如下setupsql exe程序 或者把它写入一个批处理文件中

       start /wait <path> etupsql exe s –fl <path> etup iss

       直到安装结束 控制才会传递到下一条命令 当你从批处理文件启动安装 而这个文件又包括其他依赖于安装的行为时 使用start /wait选项是特别重要的 例如 假设你要为一个名为INST 的命名实例执行无人值守安装来创建批处理文件 然后启动SQL Server服务 再运行一个用来创建数据库及其对象(如 表 存储过程)的sql脚本 这个批处理文件看起来可能像这样

       start /wait D:\X etup etupsql exe –s –fl C:\WINNT etup iss

       net start MSSQL$INST

       OSQL /E /I c:\data cripts\createappdb sql

       如果你不使用start /wait选项 控制从安装一开始就移到了批处理文件的第二条命令 而这条NET START命令试图启动一个还不存在的服务

       对一个无人值守安装进行故障排除要比对待标准安装的故障排除更需要慎重对待 标准安装往往在安装程序遇到问题时通过显示一个包含出错信息的对话框(并伴有响亮的警告声)来通知你 而无人值守安装只是简单地终止 且没有交互的通知

       要了解如何对无人值守安装进行故障排除 让我们来看一组我遇到过的问题 假设你已经在服务器上完成了另一个产品的安装 然后你试图执行一个SQL Server的无人值守安装 安装程序检测到在前一个安装结束后服务器尚未重启 于是放弃安装 同时没有任何信息提示 如果你保持任务管理器窗口打开 你会注意到setupsql exe 程序不活动 所以SQL Server没有被安装 你也应该检查日志文件 一旦安装成功 \WINNT etup log文件应该显示 作为出错代码 然而 在我描述的情景中 他很可能显示 这表示一个基本错误 你也应该看一下出错信息

       当执行无人值守安装时 我遇到过多次的另一个错误是 对话框次序紊乱 在我调用安装程序后不久我就意识到这一问题的存在——那是在我打开任务管理器并看到setupsql exe虽然在运行但是没有像正常的无人值守安装那样调用和释放进程 同时 安装程序通常在\Program Files\Microsoft SQL Server下创建的文件夹也没有被创建 Setupsql exe程序看来并没有占用CPU或者I/O资源 只是在大约 分钟后消失了 Setup log文件显示一个 的错误代码而sqlstp log文件显示没有错误——实际上 它看来还未完成 Sqlstp包含了不完整的注意事项 只是一条消息——Begin Action DialogShow<dialogname> BOL显示了以下有关错误代码 的信息 对话框次序紊乱 这是一个常见错误 由在安装初始化文件(Setup iss)文件中的一个对话框次序紊乱所引起 这是由于Setup iss文件创建过程中的系统问题所产生 足以确认 在我重新对Setup iss文件排序后 无人值守安装成功完成

       除了完全安装 你还可以执行SQL Server 服务包的无人值守安装 要把服务包应用到默认实例上 从服务包的安装目录调用setupsql exe程序 指明应答文件为位于服务包安装目录根目录下的sql kdef iss 例如 如果服务包安装文件位于c: ql ksq 下 执行入下命令

       start /wait c: ql ksp \x etup etupsql exe –s –fl c: ql ksp ql kdef iss

要把服务包应用到命名实例上 使用sql knm iss应答文件 但是首先修改文件中的下列两行来对应正确的命名实例

       InstanceName = INSTANCE_NAME

       NMPPipeName=\\ \pipe\MSSQL$INSTANCE_NAME ql\query

       另一个高级选项——远程安装——让你在一台远程的电脑上安装SQL Server 你可以从一台本地的电脑上手工记录下一个setup iss文件 把它复制到远程电脑上 在激活setupsql exe程序和在远程电脑上的setup iss文件 然而 你可以替自己省些麻烦——通过在本地电脑上运行setupsql exe程序 在电脑名对话框中选择远程电脑 指明你想要安装到的电脑名 当你点击下一步时 远程安装信息对话框会显示出来

       首先你要提供帐号细节(用户 密码 域) 到目标文件夹的UNC路径和源安装文件的UNC路径 接下来 安装程序将指引你完成常规安装对话框并根据你的选择记录下setup iss文件 接着 程序复制setup iss文件到目标电脑的\WINNT文件夹下 再用复制的setup iss文件来激活setupsql exe

       如果你在目标电脑上打开任务管理器 你会看到setupsql exe进程在安装过程中调用和释放其他进程 在本地电脑上 安装程序显示远程安装正在进行中 并且会在完成时通知你

       最后的话

       虽然基本安装看来简单 你仍需队与你所选择的安装选项给予密切注意 并且完全理解它们 良好的安装选择为运行和管理SQL Server提供了一个坚实的基础 而如果你认为执行无人值守安装和远程安装听起来复杂的话 我希望这篇文章有助于你对它们加深了解

lishixinzhi/Article/program/SQLServer/201311/22413

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式