none
SQL 2008 Express Default Instance問題 RRS feed

  • 問題

  • 最近在測試SQL 2008 Express,在安裝時選擇Default Instance但安裝完後都會變成Named Instance,用SSMS去連接時都須要在電腦名稱後再加上SQLExpress(電腦名稱\SQLExpress)才可連得上,不曉得大家有遇到這個問題嗎?小弟目前開發的軟體只能用Default Instance,請大家協助,謝謝!

    2008年10月29日 上午 04:00

解答

  •  jackchou 寫信:
    依照SQL2005(非Express)或SQL2008(非Express)如果選擇「預設的執行個體」那麼再安裝完SQL後,用SSMS去連的時候只需要用IP或電腦名稱即可連上,但在SQL 2008 Express同樣的安裝方式,用SSMS去連卻需要在IP或電腦名稱後再加上SQLExpress才可以連得上,但在SQL 2005 Express SP2卻是可以的,所以我才會說這應該是SQL 2008 Express的BUG。

     阿寶 寫信:
    SQL 2005 Express 剛出版時也是一樣的狀況,但SP2之後就沒這個問題了(且更方便好設),所以我同jackchou的想法!

    不知是否哪位先進還有新的解法呢!?

    請參考 BOL 的說明:使用具名執行個體

    至於是否為 bug,請參考:Selecting the "Default Instance" option in SQL Server 2008 Express RTM has no effect,裡面有微軟官方的說明

    如果一定要讓 Express 的執行個體名稱是 MSSQLServer,就像我先前回覆所提到的,不能已經存在 MSSQLServer 的執行個體,然後在具名執行個體名稱填入 MSSQLServer,詳細的文圖操作步驟可以參考另外一位 MVP Andrea Montanari 的文章: Installing SQL Server Express 2008
    2008年11月4日 上午 06:18
    版主

所有回覆

  • 在安裝 SQL Server 2005 Express 時,就不能指定具名執行個體為 Default 或是 MSSQLServer,這個限制在 SQL Server 2008 應該也沒改變(因為尚未看到相關文件有提及) 

    2008年10月29日 上午 04:24
    版主
  • Alex Chou您好,感謝您的回答,但我試過SQL 2005 Express是可以選擇預設執行個體哦,只要在打使用者及公司名稱下將隱藏進階選項的勾拿掉(預設是打勾的),然後就可以指定使用預設執行個哦,您可以試試看!

    而SQL 2008 Express是可以選擇是否要用預設執行個體,只是指定後沒有用,會自動改回具名執行個體,我覺得這應該是一個BUG。

     

    2008年10月29日 上午 05:59
  • hi ~我跟大家一樣遇到此問題,目前也是還沒有解決SQL 2008 Express 的問題呢:(至於Standard 目前還沒有發現這類的問題)

     

    《SQL 2005 Express》

    SQL 2005 Express With SP1 跟With SP2 的這個包裝後來微軟都有重新修改過了,所以可用「預設的執行個體」,就不用再加\SQLExpress 嚕!

    ◎註:之前SQL 2005 Express No Service pack(剛發行時)也有同樣的問題!

     

    《SQL 2008 Express》

    它共出了三個版本:professional , WithTools , Advance 我都一個個試過,的確在選「使用預設的執行個體」時沒用,還是自動強制使用了"\SQLExpress"

     

    我也覺得這個是個bug ,因為之前SQL 2005 Express 剛發行時,也是一樣的狀況!

    且我還有去設定SQL 2008 Express 的「動態通訊埠」(關閉),變成固定埠= 1433,結果SQL 2008 Express 也仍不允許遠端使用"IP\SQLExpress "的方式登入,只能在「本機」使用".\SQLExpress"登入!

     

    ◎註:以上設定完後均有 restart service來測試

    ◎註:以上測試時都有把firewall 給disable 掉

    ◎註:以上使用的環境是Windows XP Professional With SP3 + hotfix 到2008/10/29

    2008年10月29日 上午 10:16
  •  jackchou 寫信:
    我試過SQL 2005 Express是可以選擇預設執行個體哦,只要在打使用者及公司名稱下將隱藏進階選項的勾拿掉(預設是打勾的),然後就可以指定使用預設執行個哦,您可以試試看!
    可能解說的不夠清楚,造成誤解!

    所謂的「在安裝 SQL Server 2005 Express 時,就不能指定具名執行個體為 Default 或是 MSSQLServer」是指:
  • 如果使用 Default 當作具名執行個體的名稱,安裝程式會出現錯誤提示對話方塊


  • 如果使用 MSSQLServer 當作具名執行個體的名稱,必須先確定沒有其他執行個體已經使用這個名稱
2008年11月3日 下午 12:42
版主
  •  阿寶 寫信:
    我還有去設定SQL 2008 Express 的「動態通訊埠」(關閉),變成固定埠= 1433,結果SQL 2008 Express 也仍不允許遠端使用"IP\SQLExpress "的方式登入,只能在「本機」使用".\SQLExpress"登入!
    關於 SQL Server 2008 Express 如何設定遠端連線,請參考先前的討論:sql server 2008 無法遠端連線,詳見內文
    2008年11月3日 下午 12:45
    版主
  • Alex您好,我想您還是誤會我的意思了,我指的是在你貼的畫面上選擇「預設的執行個體」,而不是選擇「具名執行個體」然後名稱再給「Default」,依照SQL2005(非Express)或SQL2008(非Express)如果選擇「預設的執行個體」那麼再安裝完SQL後,用SSMS去連的時候只需要用IP或電腦名稱即可連上,但在SQL 2008 Express同樣的安裝方式,用SSMS去連卻需要在IP或電腦名稱後再加上SQLExpress才可以連得上,但在SQL 2005 Express SP2卻是可以的,所以我才會說這應該是SQL 2008 Express的BUG。

     

     

    2008年11月4日 上午 03:23
  •  jackchou 寫信:

    Alex您好,我想您還是誤會我的意思了,我指的是在你貼的畫面上選擇「預設的執行個體」,而不是選擇「具名執行個體」然後名稱再給「Default」,依照SQL2005(非Express)或SQL2008(非Express)如果選擇「預設的執行個體」那麼再安裝完SQL後,用SSMS去連的時候只需要用IP或電腦名稱即可連上,但在SQL 2008 Express同樣的安裝方式,用SSMS去連卻需要在IP或電腦名稱後再加上SQLExpress才可以連得上,但在SQL 2005 Express SP2卻是可以的,所以我才會說這應該是SQL 2008 Express的BUG。

     

     

     

     

    hi ~我也同 jackchou 說法~剛好我剛用了6台電腦同時跑完了SQL 2008的「預設的執行個體」問題,如下是我測試的結果跟大家分享討論一下:

     

    (1)SQL 2008 MOLP STD改選「免費的=Express」 共3個版本,均選「預設的執行個體」,但裝完後用ssms或services.msc去查,都是強制變成「預設的執行個體」

    (2)SQL 2008 MSDN STD改選「免費的Express」,答案同上

    (3)從微軟Download center 下載下來的SQL 2008 Express 共3個版本的狀況也同上!

     

    另外我剛測試SQL 2008 Express 的這個答案:關於 SQL Server 2008 Express 如何設定遠端連線,請參考先前的討論:sql server 2008 無法遠端連線,詳見內文
    發現對「免費的」Express 2008是沒有用的(我有記得restart SQL services + Firewall 設定正確),只有對SQL 2008 STD時才有用!

     

    SQL 2005 Express 剛出版時也是一樣的狀況,但SP2之後就沒這個問題了(且更方便好設),所以我同jackchou的想法!

    不知是否哪位先進還有新的解法呢!?

    2008年11月4日 上午 03:31
  •  jackchou 寫信:
    依照SQL2005(非Express)或SQL2008(非Express)如果選擇「預設的執行個體」那麼再安裝完SQL後,用SSMS去連的時候只需要用IP或電腦名稱即可連上,但在SQL 2008 Express同樣的安裝方式,用SSMS去連卻需要在IP或電腦名稱後再加上SQLExpress才可以連得上,但在SQL 2005 Express SP2卻是可以的,所以我才會說這應該是SQL 2008 Express的BUG。

     阿寶 寫信:
    SQL 2005 Express 剛出版時也是一樣的狀況,但SP2之後就沒這個問題了(且更方便好設),所以我同jackchou的想法!

    不知是否哪位先進還有新的解法呢!?

    請參考 BOL 的說明:使用具名執行個體

    至於是否為 bug,請參考:Selecting the "Default Instance" option in SQL Server 2008 Express RTM has no effect,裡面有微軟官方的說明

    如果一定要讓 Express 的執行個體名稱是 MSSQLServer,就像我先前回覆所提到的,不能已經存在 MSSQLServer 的執行個體,然後在具名執行個體名稱填入 MSSQLServer,詳細的文圖操作步驟可以參考另外一位 MVP Andrea Montanari 的文章: Installing SQL Server Express 2008
    2008年11月4日 上午 06:18
    版主
  • Alex您好,依照你提供的資訊,我重新安裝SQL 2008 Express,可以達到我要的目的了,也就是連線時可以不用指定Instance Name。

    以下列出安裝及設定的步驟供參考:

    ²         在安裝SQL Server 2008 Express時選擇「具名執行個體」名稱給「MSSQLSERVER」。

    ²         安裝完後,開啟「SQL Server組態管理員」,在「SQL Server網路組態 \ MSSQLSERVER的通訊協定」將TCP/IP啟用,並重新啟動SQL Server服務。

    感謝您的協助,希望對大家有用處,謝謝!

    2008年11月4日 上午 09:38
  •  jackchou 寫信:

    Alex您好,依照你提供的資訊,我重新安裝SQL 2008 Express,可以達到我要的目的了,也就是連線時可以不用指定Instance Name。

    以下列出安裝及設定的步驟供參考:

    ²         在安裝SQL Server 2008 Express時選擇「具名執行個體」名稱給「MSSQLSERVER」。

    ²         安裝完後,開啟「SQL Server組態管理員」,在「SQL Server網路組態 \ MSSQLSERVER的通訊協定」將TCP/IP啟用,並重新啟動SQL Server服務。

    感謝您的協助,希望對大家有用處,謝謝!

     

    哈~jackchou 我上傳文的速度比您慢了哩!(我才還在key in就收到您的『通知』了)

    我跟您一樣的答案與結果!不過...覺得跟過去得SQL 2005 Express SP2的作法有點不同,仍覺得怪怪的!

     

    另,我用二台再測二種方式,若Express設定為「使用預設具名管道」時,即使在「預設具名管道」手動key in 「MSSQLSERVER」,安裝完後,它的具名管道還是「SQLExpress」呢!

     

    總之SQL 2008 Express 用Alex 所述的資訊 + jackchou 就可達到目的!

    非常感謝大家的幫忙!

    2008年11月4日 上午 09:48
  • 雖然依照Alex給的資訊設定可以達到目的,但我還是覺得這應該是sql 2008 express的bug,希望下一版本能夠修正。

     

    2008年11月6日 上午 07:25