[Azure]讓Azure網站與本地端資料庫連線(SQL Server)

[Azure]讓Azure網站與本地端資料庫連線

摘要

 

說到Azure WebSite 我們都知道可以直接在上面架設網站,然後幾分鐘就好了,

不過今天我要把資料庫放在本地端該如何做到呢?

 

實作

 

1. 先在您的Windows Server上安裝SQL Server (這邊使用SQL Server 2012示範)。

 

Image 1

Image 2

Image 3

 

這邊選擇預設值。

 

Image 4

Image 5

Image 6

 

這邊我們使用混和模式並輸入密碼與新增目前使用者。

 

Image 8

Image 9

 

2. 開啟Sql Server Configuration Manager確認TCP/IP是否Enabled。

 

Image 10

 

3. 開啟SQL Server Managerment Studio 登入後創建新的Database。

 

Image 11

Image 12

Image 13

Image 14

 

4. 再來我們開啟Azure的新portal並創建一個WebSite。

 

Image 15

Image 16

Image 17

Image 18

 

5. 回到WebSite頁面並往下捲動,找到 "Hybrid-Connection"。

 

Image 19

Image 20

Image 21

 

下面的

 

Name 可以自己取名

 

Hostname 輸入您SQL Server電腦的名稱

 

Port 預設為1433

 

然後新增一個BIZTALK SERVICE

 

Image 22

Image 23

Image 24

Image 25

 

6. 這時我們有發現他是還沒連接到本地端的,所以我們要來安裝一個連線。

 

點選您的Hybrid Connections

 

Image 26

 

選擇Listener Setup。

 

Image 27

 

選擇Install。

 

Image 28

 

下載檔案後點擊執行。

 

Image 29

Image 30

 

如果要輸入Connection String 請到剛剛的頁面複製PRIMARY ON-PREMISES GATEWAY CONNECTION STRING。

 

Image 31

Image 32

 

接著我們會發現已經連接上了。

 

Image 33

 

7. 部屬ASP.NET MVP範例網頁並測試是否有寫入本地端SQL Server

 

Image 34

Image 35

Image 36

 

改成您的設定值

Server=ServerName

Database=DatabaseName

User ID=SQL loging ID

Password=your password

 

 

Image 37

 

測試

 

Image 38

Image 39

Image 40

Image 41

 

再來至您的Azure下載發行設定檔

 

Image 42

Image 43

Image 44

 

選擇剛剛下載的設定檔

 

Image 45

 

選擇發布

 

Image 46

 

這時候直接到Azure WebSite頁面開啟網頁並登入

 

Image 47

Image 48

Image 49

 

然後我們可以看到本地資料庫中會出現我們的信箱

 

Image 50

Image 51

 

8. 那如果今天是用PHP網頁的話可以利用FTP的方式部屬至Azure上面。

 

Image 52

 

複製FTP HOST NAME並貼到資料夾上。

 

Image 53

Image 54

Image 55

 

這邊寫一個簡單的測試網頁 index.php 然後上傳到wwwroot資料夾中

 

$serverName = "WIN-K9QFCO5G63D,1433"; //serverName\instanceName
$connectionInfo = array( "Database"=>"TestDB", "UID"=>"sa", "PWD"=>"P@ssw0rd");
  $conn = sqlsrv_connect( $serverName, $connectionInfo);
  
  
  if( $conn ) {echo "Connection established.<br />";
  }else{echo "Connection could not be established.<br />";
  die( print_r( sqlsrv_errors(), true));
  }?>

 

Image 56

 

接著到Azure WebSite頁面選擇瀏覽。

 

Image 57

 

就會看到連線已建立的網頁了。

 

Image 58

 

 

 

如有錯誤請不吝指教 謝謝 ^_^

 

 

參考資料:

 

Connect an Azure website to an on-premises resource using Hybrid Connections