(開頭閑淡)項目需要必須安裝SQL的,查了很久,斷斷續續用了各種方法,今天終於用了正確的姿(xia)勢(mo)弄成了。 最開始用的方法是調用Win的API模擬滑鼠操作安裝的,嗯,雖然勉強可以,就是有些狗屎。 大概可以放到GitHub 上丟人現眼了 今天搜資料庫創建的問題看到"無人值守安裝sql",才 ...
(開頭閑淡)項目需要必須安裝SQL的,查了很久,斷斷續續用了各種方法,今天終於用了正確的姿(xia)勢(mo)弄成了。
最開始用的方法是調用Win的API模擬滑鼠操作安裝的,嗯,雖然勉強可以,就是有些狗屎。
大概可以放到GitHub 上丟人現眼了
今天搜資料庫創建的問題看到"無人值守安裝sql",才知道以前一直搜索的關鍵詞錯了,以前都是搜“sql 後臺安裝”的什麼鬼的。
兩個參考的:
利用應答文件自動安裝sql server:http://blog.51cto.com/softicelee/365513
SQL SERVER 2005 無人值守安裝過程:http://blog.csdn.net/andkylee/article/details/5813029
執行方式也有兩個(至少),一個是命令提示符直接執行,一個是建個install.bat和setup.ini install執行配置文件setup來安裝。
我用的是命令提示符直接執行,比較簡單
測試圖,最後一個終於執行成功了。
最主要的問題是參數多,不同版本還參數不一樣,導致網上案例難複製經驗,想到SQL Server Management圖形界面執行可以導出操作腳本,那sql安裝應該會生成或者有日誌看。
摸索幾下,在安裝完成有個摘要日誌界面終於找到了,點擊“摘要日誌”會打開一個文本。
安裝完成後的界面
點擊“摘要日誌”打開的文本,其中最後一個Microsoft SQL Server 2005 Express Edition 就是資料庫安裝的日誌信息
打開Microsoft SQL Server 2005 Express Edition的日誌文件目錄C:\Program Files (x86)\Microsoft SQL Server\90\Setup Bootstrap\LOG\Files\SQLSetup0021_DESKTOP-3NSUJI1_SQL.log,搜索 “Command Line”(命令行模式)就找到了你安裝所執行的命令行了。
可以結合網上或sql安裝幫助(安裝程式目錄里)修改自己要用的命令行
USERNAME開始前加上Start /wait setup.exe /qb,刪掉多餘的再把文件目錄加上雙引號“” 執行就會跟你之前安裝的一樣了,安裝命令行參數那些網上自己查咯。
//日誌里的
USERNAME=user INSTALLSQLSHAREDDIR=C:\Program Files (x86)\Microsoft SQL Server\ INSTANCENAME=MSSQLSERVER INSTALLSQLDIR=C:\Program Files (x86)\Microsoft SQL Server\ INSTALLSQLDATADIR=C:\Program Files (x86)\Microsoft SQL Server\ SECURITYMODE=SQL SQLCOLLATION=Chinese_PRC_CI_AS SQLACCOUNT=NT AUTHORITY\SYSTEM SQLAUTOSTART=1 SQLBROWSERACCOUNT=NT AUTHORITY\SYSTEM SQLBROWSERAUTOSTART=0 ENABLERANU=1 STPSETUPTHREADID=9924 STPSETUPPROCESSID=10580 EXTERNALCONTROL=1 ADDLOCAL=SQL_Engine,SQL_Data_Files,SQL_SharedTools TRANSFORMS=:SqlRun01.mst;:InstID01.mst;:InstName01.mst MSINEWINSTANCE=1 REBOOT=ReallySuppress CURRENTDIRECTORY=C:\Program Files (x86)\Microsoft SQL Server\90\Setup Bootstrap CLIENTUILEVEL=3 MSICLIENTUSESEXTERNALUI=1 CLIENTPROCESSID=10580
//修改後:(所有參數包含空格的必須加雙引號,刪除不明參數 【TRANSFORMS=:SqlRun01.mst;:InstID01.mst;:InstName01.mst】、 【Bootstrap CLIENTUILEVEL=3】 ),win10 LTSB 2016已測試通過
Start /wait setup.exe /qb USERNAME=user INSTALLSQLSHAREDDIR="C:\Program Files (x86)\Microsoft SQL Server\" INSTANCENAME=MSSQLSERVER INSTALLSQLDIR="C:\Program Files (x86)\Microsoft SQL Server\" INSTALLSQLDATADIR="C:\Program Files (x86)\Microsoft SQL Server\" SECURITYMODE=SQL SQLCOLLATION=Chinese_PRC_CI_AS SQLACCOUNT="NT AUTHORITY\SYSTEM" SQLAUTOSTART=1 SQLBROWSERACCOUNT="NT AUTHORITY\SYSTEM" SQLBROWSERAUTOSTART=0 ENABLERANU=1 STPSETUPTHREADID=9924 STPSETUPPROCESSID=10580 EXTERNALCONTROL=1 ADDLOCAL=SQL_Engine,SQL_Data_Files,SQL_SharedTools MSINEWINSTANCE=1 REBOOT=ReallySuppress CURRENTDIRECTORY="C:\Program Files (x86)\Microsoft SQL Server\90\Setup" MSICLIENTUSESEXTERNALUI=1 CLIENTPROCESSID=10580
註意事項:
- 若安裝包為一個exe可執行文件要先解壓,我用的是“cn_sql_server_2005_express_edition_service_pack_4_x64.exe” MSDN下載的 2005精簡版的,記憶體小,裝個資料庫就夠了,解壓有時有問題時可以直接執行exe會解壓到別的盤,找到目錄再複製就行了,可以看最開始解壓到哪。(解壓縮一般問題都是目錄太長,可以吧exe安裝包複製到硬碟根目錄再解壓)
- 命令行執行時Start /wait setup.exe /qb 必須cd進setup.exe所在目錄( cd /d X:\安裝目錄),完整的setup.exe目錄似乎不行。
最後祝大家都順利安裝,雖然可視化安裝都一大堆問題。