Day 26 Azure - SQL Database 建立第一個SQL Server與資料庫 (下)

Day 26 Azure - SQL Database 建立第一個SQL Server與資料庫 (下)

前言

        在Day 25的文章中,已經建立好AZURE SQL Server與資料庫了,今天我們就要來介紹,防火牆的相關設定,

以及如何使用SSMS來做連結的動作,並讓Web Apps站台,可以與資料庫做連接的動作。現在,我們馬上開始吧。

 

操作細節

 

1. 首先登入AZURE後台,點選左邊選單的SQL Server,並點選建立好的資料庫

 

2. 看到資料庫的相關資訊與概觀,接者我們點選『顯示資料庫連接字串』

 

3. 我們可以在視窗中看到連線字串,先將相關連線資訊記錄起來

 

4. 接者我們打開SSMS,並利用剛剛的連線資訊來做連接,出現出現無法登入的視窗

 

5. 此時我們有兩種做法,一個是登錄AZURE的帳號,另外一個是將防火牆新增IP,本文中採用第二個作法,首先我們回到AZURE後台資料庫的視窗中,點選『設定伺服器防火牆』

 

6. 我們直接點選上方的『加入用戶端IP』,即可將現在的IP加入防火牆的規則內,預設會開啟『允許存取AZURE服務』,設定好規則後,按下『儲存』

  • 『允許存取AZURE服務』如果開啟,則AZURE相關服務都可以直接存取DB,這樣可以藉由AZURE的虛擬機器來當作一個跳板,就可以直接存取DB,不然就要登入AZURE帳戶
  • 如果不想開啟『允許存取AZURE服務』,但是又想要鎖定固定IP,如果是VM可以設定他的外部IP,
  • 如果是Web Apps站台想設定固定IP,可以參考Day 24的文章,來查詢設備的IP,參考這項資訊,就可以設定防火牆了

7. 此時,我們再次打開SSMS連結建立好的資料庫,發現已經可以直接連接Azure Database了,並且也不用做登入AZURE帳戶的動作

 

8. 接者我們建立一張測試的資料表,並輸入一些測試資料,讀者們可以直接執行語法,來產生測試資料

 

產生語法:

CREATE TABLE [dbo].[member](
	[id] [int] IDENTITY(1,1) NOT NULL,
	[name] [nvarchar](50) NOT NULL,
	[age] [int] NOT NULL,
	[time] [datetime] NOT NULL,
 CONSTRAINT [PK_member] PRIMARY KEY CLUSTERED 
(
	[id] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]

GO
SET IDENTITY_INSERT [dbo].[member] ON 

GO
INSERT [dbo].[member] ([id], [name], [age], [time]) VALUES (1, N'mike', 18, CAST(N'2017-01-07T01:13:41.823' AS DateTime))
GO
SET IDENTITY_INSERT [dbo].[member] OFF
GO
ALTER TABLE [dbo].[member] ADD  CONSTRAINT [DF_member_time]  DEFAULT (getdate()) FOR [time]
GO

 

9. 接者我們從Web Apps站台,將已經寫好的程式上傳到FTP上,並從網址實際瀏覽看看,是否可以正確連接 Azure Database,正確的話,會有一筆測試資料

 


 

總結

今天的文章裡我們介紹了如何設定Azure Database的防火牆相關設定,除了可以讓AZURE存取以外,也可以設定固定IP。

並且實際透過SSMS來做連接測試,也寫了一些小測試上傳到Web Apss站台上,來與Azure Database做連接。

如果不想開啟Azure服務存取這項設定的話,可以考慮通通都鎖定固定IP,Web Apps的設備IP,也可以從先前的文章中查看。以上是今天的介紹,感謝您的觀看。