熱點推薦:
您现在的位置: 電腦知識網 >> 編程 >> SQL Server >> 正文

SQL Server的有效安裝[2]

2022-06-13   來源: SQL Server 

       排序規則

       接下來你需要選擇排序規則設置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 時選擇的排序規則決定了系統數據庫的排序規則設置要在安裝後更該系統數據庫的排序規則設置你需要腳本化所有你的系統對象(比如登錄消息工作)並且運行rebuildmexe它用新的排序規則重建了所有的系統數據庫然而你不必先導出用戶數據庫中的所有數據再在運行完rebuildmexe後把他們再導入——就像你再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 LayerSSL)來對所有網絡庫強制加密這樣一來加密因素不再決定網絡庫的選擇同樣在SQL Server 多協議不支持命名實例方案(服務器名\實例名)這樣的話當你使用命名實例時多協議也不是個好的選擇SQL Server 中最通用的網絡庫大概是TCP/IP套接字吧它提供了良好的性能允許Windows身份驗證而且你可以在需要時對它進行強制SSL加密

       大多數使用SQL Server早期版本的用戶知道SQL Server的默認TCP端口是端口當使用默認端口時客戶機連接除了服務器名或者IP地址不需要提供端口號然而SQL Server 支持多個實例這無法統統使用同樣的端口號所以當你安裝一個命名實例時安裝程序建議把作為端口號端口號為意味著當SQL Server第一次啟動時它動態地選擇一個空閒的端口號並且把它永久保留或者直到你稍後手工修改它為止那麼客戶機連接如何繼續通過僅僅提供服務器名稱/IP地址+實例名而不用指定端口號找到SQL Server呢?SQL Server 中的一個監聽器服務監聽端口上的客戶機請求然後通過檢測請求中的實例名並把它和實例的端口號匹配再把該請求重定向到適當的實例

       無人值守和遠程安裝

       現在我們的標准安裝已經完成讓我們討論一下無人值守安裝Setupsqlexe程序讓你記錄下一個應答文件它包括了你在安裝程序對話框中常選的對於各種安裝選項的所有回答稍後你能夠通過調用以該應答文件作為參數的setupsqlexe命令來運行一個安裝這種無需任何用戶干預的安裝類型被稱為無人值守安裝

       要准備應答文件先啟動安裝程序在安裝選擇對話框中選擇高級選項在對話框中選擇選取記錄無人值守ISS文件安裝程序會指導你完成常規的安裝對話框其中你可以填入所有你想要記錄的選項當你完成後安裝程序在\WINNT文件夾下創建一個名為setupiss的文件

       要啟動一個無人值守安裝運行setupsqlexe程序s作為執行安靜安裝的參數fl參數指定一個應答文件例如要啟動一個安靜的無人值守的安裝——安裝完成後不通知你你可以使用以下命令

       <path> etupsqlexe –s –fl <path> etupiss

       如果你想在安裝完成時得到通知從命令行執行如下setupsqlexe程序或者把它寫入一個批處理文件中

       start /wait <path> etupsqlexe s –fl <path> etupiss

       直到安裝結束控制才會傳遞到下一條命令當你從批處理文件啟動安裝而這個文件又包括其他依賴於安裝的行為時使用start /wait選項是特別重要的例如假設你要為一個名為INST的命名實例執行無人值守安裝來創建批處理文件然後啟動SQL Server服務再運行一個用來創建數據庫及其對象(如存儲過程)的sql腳本這個批處理文件看起來可能像這樣

       start /wait D:\X etup etupsqlexe –s –fl C:\WINNT etupiss

       net start MSSQL$INST

       OSQL /E /I c:\data cripts\createappdbsql

       如果你不使用start /wait選項控制從安裝一開始就移到了批處理文件的第二條命令而這條NET START命令試圖啟動一個還不存在的服務

       對一個無人值守安裝進行故障排除要比對待標准安裝的故障排除更需要慎重對待標准安裝往往在安裝程序遇到問題時通過顯示一個包含出錯信息的對話框(並伴有響亮的警告聲)來通知你而無人值守安裝只是簡單地終止且沒有交互的通知

       要了解如何對無人值守安裝進行故障排除讓我們來看一組我遇到過的問題假設你已經在服務器上完成了另一個產品的安裝然後你試圖執行一個SQL Server的無人值守安裝安裝程序檢測到在前一個安裝結束後服務器尚未重啟於是放棄安裝同時沒有任何信息提示如果你保持任務管理器窗口打開你會注意到setupsqlexe 程序不活動所以SQL Server沒有被安裝你也應該檢查日志文件一旦安裝成功\WINNT etuplog文件應該顯示作為出錯代碼然而在我描述的情景中他很可能顯示這表示一個基本錯誤你也應該看一下出錯信息

       當執行無人值守安裝時我遇到過多次的另一個錯誤是對話框次序紊亂在我調用安裝程序後不久我就意識到這一問題的存在——那是在我打開任務管理器並看到setupsqlexe雖然在運行但是沒有像正常的無人值守安裝那樣調用和釋放進程同時安裝程序通常在\Program Files\Microsoft SQL Server下創建的文件夾也沒有被創建Setupsqlexe程序看來並沒有占用CPU或者I/O資源只是在大約分鐘後消失了Setuplog文件顯示一個的錯誤代碼而sqlstplog文件顯示沒有錯誤——實際上它看來還未完成Sqlstp包含了不完整的注意事項只是一條消息——Begin ActionDialogShow<dialogname>BOL顯示了以下有關錯誤代碼的信息對話框次序紊亂這是一個常見錯誤由在安裝初始化文件(Setupiss)文件中的一個對話框次序紊亂所引起這是由於Setupiss文件創建過程中的系統問題所產生足以確認在我重新對Setupiss文件排序後無人值守安裝成功完成

       除了完全安裝你還可以執行SQL Server 服務包的無人值守安裝要把服務包應用到默認實例上從服務包的安裝目錄調用setupsqlexe程序指明應答文件為位於服務包安裝目錄根目錄下的sqlkdefiss例如如果服務包安裝文件位於c: qlksq執行入下命令

       start /wait c: qlksp\x etup etupsqlexe –s –fl c: qlksp qlkdefiss

要把服務包應用到命名實例上使用sqlknmiss應答文件但是首先修改文件中的下列兩行來對應正確的命名實例

       InstanceName = INSTANCE_NAME

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

       另一個高級選項——遠程安裝——讓你在一台遠程的電腦上安裝SQL Server 你可以從一台本地的電腦上手工記錄下一個setupiss文件把它復制到遠程電腦上在激活setupsqlexe程序和在遠程電腦上的setupiss文件然而你可以替自己省些麻煩——通過在本地電腦上運行setupsqlexe程序在電腦名對話框中選擇遠程電腦指明你想要安裝到的電腦名當你點擊下一步時遠程安裝信息對話框會顯示出來

       首先你要提供帳號細節(用戶密碼域)到目標文件夾的UNC路徑和源安裝文件的UNC路徑接下來安裝程序將指引你完成常規安裝對話框並根據你的選擇記錄下setupiss文件接著程序復制setupiss文件到目標電腦的\WINNT文件夾下再用復制的setupiss文件來激活setupsqlexe

       如果你在目標電腦上打開任務管理器你會看到setupsqlexe進程在安裝過程中調用和釋放其他進程在本地電腦上安裝程序顯示遠程安裝正在進行中並且會在完成時通知你

       最後的話

       雖然基本安裝看來簡單你仍需隊與你所選擇的安裝選項給予密切注意並且完全理解它們良好的安裝選擇為運行和管理SQL Server提供了一個堅實的基礎而如果你認為執行無人值守安裝和遠程安裝聽起來復雜的話我希望這篇文章有助於你對它們加深了解

[]  []  


From:http://tw.wingwit.com/Article/program/SQLServer/201311/22413.html
    推薦文章
    Copyright © 2005-2022 電腦知識網 Computer Knowledge   All rights reserved.