2009年12月18日 星期五

SQL Server 在 Windows 2008 R2 連線設定(防火牆)

每次灌好新的 SQL Server 常會碰到連不上的情況

錯誤訊息如下

建立連接至 SQL Server 時,發生網路相關或執行個體特定的錯誤。找不到或無法存取伺服器。確認執行個名稱是否正確,以及 SQL Server 是否設定為允許遠端連線。 (provider: SQL 網路介面, error: 26 - 搜尋指定的伺服器/執行個體時發生錯誤) (.Net SqlClient Data Provider)

按以下步驟處理即可

1.請確認已經透過位於「Microsoft SQL Server 2008」、「組態工具」中的「SQL Server 組態管理員」,將 SQL Server 網路組態中的 TCP/IP 通訊協定予以啟用
2.開啟 SQL Server Management Studio 在「物件總管」窗格中,於要設定的執行個體上,按下滑鼠右鍵,選擇「Facet」指令
3.此時會開啟「檢視 Facet」對話方塊,從右側「Facet(F)」下拉式清單中,選擇「伺服器組態」項目
4. 將「Facet 屬性」中的「RemoteAccessEnabled」設定為 True

以上內容轉載microsoft technet

如果還是有無法連線的情況,請注意防火牆設定,

可以試試看把防火牆關掉,其他台電腦應該就可以連了,這表示防火牆還需要再做設定

開始→控制台→檢查防火牆狀態


允許程式或功能通過 windows 防火牆,如要使用更多更細部的設定可以利用進階設定。


允許其他程式


瀏覽我們要允許的程式


因為我們要允許的程式,是一個windows 服務,所以我們透過以下步驟來了解該服務的執行檔在哪個位置

按開始,鍵入services.msc直接開啟服務管理


我們這次要允許的就是以下兩個服務,缺一不可,對他們使用右鍵→內容


紅框處就是他們執行檔的位置,我的這兩個服務在不同的資料夾





回到瀏覽我們要允許的程式


選擇sqlbrowser.exe


選擇sqlservr.exe


設定完成,可以用其他電腦測試SQL Server 的連線囉


-------------------

參考這篇後有可能會發現netsh firewall這個指令已經不適用了
現在已經改成 netsh advfirewall firewall

對照修改法可參考以下連結

各服務所對應的port

------------------
可用指令設定(已確認適用 2008 R2)

直接在cmd輸入即可進行設定

本次的防火牆設定也可以執行以下兩段

netsh advfirewall firewall add rule name="sqlservr" dir=in action=allow program="C:\Program Files\Microsoft SQL Server\MSSQL10.AFCSQLSERVER\MSSQL\Binn\sqlservr.exe" enable=yes

netsh advfirewall firewall add rule name="sqlbrowser" dir=in action=allow program="C:\Program Files (x86)\Microsoft SQL Server\90\Shared\sqlbrowser.exe" enable=yes

也就是命令提示字元︰開始→鍵入cmd.exe後執行

如需要開port可以使用以下指令
netsh advfirewall firewall add rule name="SQLServer" dir=in action=allow protocol=TCP localport=1433

netsh advfirewall firewall add rule name="SQL Admin Connection" dir=in action=allow protocol=TCP localport=1434

netsh advfirewall firewall add rule name="SQL Service Broker" dir=in action=allow protocol=TCP localport=4022

netsh advfirewall firewall add rule name="SQL Debugger/RPC" dir=in action=allow protocol=TCP localport=135

netsh advfirewall firewall add rule name="Analysis Services" dir=in action=allow protocol=TCP localport=2383

netsh advfirewall firewall add rule name="SQL Browser" dir=in action=allow protocol=TCP localport=2382

允許各種服務
netsh advfirewall firewall add rule name="fdlauncher" dir=in action=allow program="C:\Program Files\Microsoft SQL Server\MSSQL10.AFCSQLSERVER\MSSQL\Binn\fdlauncher.exe" enable=yes

netsh advfirewall firewall add rule name="sqlservr" dir=in action=allow program="C:\Program Files\Microsoft SQL Server\MSSQL10.AFCSQLSERVER\MSSQL\Binn\sqlservr.exe" enable=yes

netsh advfirewall firewall add rule name="SQLAGENT" dir=in action=allow program="C:\Program Files\Microsoft SQL Server\MSSQL10.AFCSQLSERVER\MSSQL\Binn\SQLAGENT.EXE" enable=yes

netsh advfirewall firewall add rule name="sqlbrowser" dir=in action=allow program="C:\Program Files (x86)\Microsoft SQL Server\90\Shared\sqlbrowser.exe" enable=yes

netsh advfirewall firewall add rule name="sqlwriter" dir=in action=allow program="C:\Program Files\Microsoft SQL Server\90\Shared\sqlwriter.exe" enable=yes

-------------------
以下僅供參考,可略過不看

在測試的過程中

發現一個奇怪的現象

假設A是SERVER,B是CLIENT

現在B停留再SQL Server Management Studio(SSMS)

A的防火牆設定,先把對B的IP的連線開啟(允許192.168.2.69)的任何連線

此時B已經可以連線到A的SQL SERVER了

再將A的防火牆,把剛剛B的IP連線規則關閉,再允許 SQL SERVER 程式通過防火牆

注意,這時候,B的 SSMS 仍然可以連線

但若關掉對 SQL SERVER程式允許,會馬上影響B的SQL的連線
或是將B的 SSMS 重開後,就無法連線了

感覺 SSMS 暫存了一開始的B電腦IP連線規則,關掉SSMS後就消失

2009年12月16日 星期三

Google Doc 使用心得

線上簡易版的office

其中我最關注的是form這個檔案類型,可以製作問卷,並呈現在excel中

可惜無法確保問卷的內容有效性,也就是說可以填寫假資料,也可以重複填寫

但是就一個民眾工具來說,真的是很方便的功能

很厲害

word 切換英文大小寫

shift + f3 可以切換全大寫、字首大寫、全小寫

就是常用→字形→Aa的圖示

2009年12月10日 星期四

UAC相關設定

如果在UAC的設定上有什麼困擾的,可以參考這個官方說明

http://technet.microsoft.com/zh-tw/library/cc772207(WS.10).aspx

使用secpol.msc便可以進行設定

可以設定成擁有管理權限的帳號關閉UAC,但一般帳號仍啟用UAC

2009年12月7日 星期一

Oracle SQL Developer 的bug,鍵盤delete、backspace、貼上無效、

Oracle 版本是 10g

這是個鳥鳥的bug,狀況發生時,鍵盤的delete、backspace都不能用,也不能貼上

只要照工具列上面這樣設定完即可修復,鍵盤真的比較方便
Tools -> Preferences -> Accelerators -> Load Preset -> Default -> OK

參考文章如下
http://decoding.wordpress.com/2008/01/09/oracle-sql-developer-problem-backspace-delete-button-not-working-quick-fix/