1 of 75

台北科技大學,經管系,陳擎文

在Azure雲端平台

建立mySQL資料庫

2 of 75

建立『mySQL資料庫』

資料源

3 of 75

正確做法:+建立資源

4 of 75

錯誤做法:選擇,SQL資料庫�因為:這個是微軟的產品:SQLServer

5 of 75

6 of 75

7 of 75

建立mySQL伺服器

『基本』設定

8 of 75

先設定訂用帳戶(Subscription)與資源群組

  • 訂用帳戶(Subscription)這個是你 Azure 的訂閱
    • Azure 訂用帳戶中的所有資源皆會一併計費。可以選 Free trial,或是貴公司的訂閱
    • Azure Subscrition 1
  • 資源群組(Resource Group):資源群組是資源的集合
    • 用以分群及管理你的資源。可以把專案相關的資源都放在同一個資源群組裡。新建(Create)

9 of 75

新增『資源群組』

10 of 75

如果是免費版,還沒有訂閱帳號

要先去『訂閱區』先建立一個訂閱帳號

11 of 75

12 of 75

微軟是按照這個訂閱的權限來收費的

13 of 75

14 of 75

建立mySQL伺服器�『基本』設定

  • 伺服器名稱:database 的伺服器名稱
    • 會是之後連線的 domain 一部分
    • 例如:john-mysql0605
    • 不可與別人使用過的伺服器名稱同名
  • 區域(Region):是指你的資源所在的地區,
    • 如果要離台灣近的話可以選: East Asia(這個的機房在香港)
  • 版本:MySQL 的版本,最新版8.0
  • 計算 + 儲存體:設定機器的規格

15 of 75

16 of 75

設定驗證方法

自訂登入的資料庫

管理帳戶密碼

17 of 75

自訂登入的資料庫�管理帳戶密碼

  • 管理使用者名稱:設定最大權限的管理員帳號
    • azure 限制管理員帳號名稱不可以是以下任何一個: ‘azure_superuser’、‘admin’、‘administrator’、‘root’、‘guest’ 或 ‘public’。
  • 密碼與確認密碼:管理員帳號的密碼
    • 密碼的長度必須為至少 8 個字元,最多 128 個字元。
    • 您的密碼必須包含下列三個類別的字元 - 英文大寫字母、英文小寫字母、數字 (0-9) 和非英數字元 (!、$、#、% 等)。
    • 您的密碼不能包含全部或部份登入名稱。部份登入名稱定義為 3 個 (含) 以上連續英數字元

18 of 75

19 of 75

建立mySQL伺服器�『基本』設定

  • 資料來源
    • [無] 表示建立空白的資料庫,
    • [備份] 則是能從備份檔案中把資料庫還原回來
  • 管理使用者名稱:設定最大權限的管理員帳號,
    • azure 限制管理員帳號名稱不可以是以下任何一個: ‘azure_superuser’、‘admin’、‘administrator’、‘root’、‘guest’ 或 ‘public’。
  • 密碼與確認密碼:管理員帳號的密碼

20 of 75

21 of 75

下一步

設定網路

22 of 75

『網路』設定

  • 網路連線
    • 勾選Public access (allowed IP addresses) and Private endpoint
  • 防火牆規則
    • 勾選允許來自 Azure 內的任何 Azure 服務可公用存取此伺服器

23 of 75

24 of 75

若只是測試,而且自己在家裡,在學校都可以連線上,就允許任何的IP都可以登入mySQL

25 of 75

開放防火牆設定:�IP:0.0.0.0~255.255.255.255

26 of 75

設定是否要加密的路線SSL

  • 若只是測試,
    • 可以不用加入SSL加密連線
    • 但是預設會設定SSL連線模式
    • 只能夠之後再修改

27 of 75

下一步

『安全性』設定

不用修改

28 of 75

下一步

『標籤』設定

不用修改

29 of 75

檢閱,並『建立』

30 of 75

  • 伺服器名稱:nnmysql
  • 伺服器系統管理員登入名稱:nn
  • 位置:East US
  • 可用性區域:無喜好設定
  • 高可用性:未啟用
  • MySQL 版本:8.0
  • 計算 + 儲存體:可高載, B1s、1 個虛擬核心、1 GiB RAM、20 儲存空間、自動縮放 IOPS
  • 備份保留期間 (天):7 天
  • 儲存體自動成長:已啟用
  • 異地備援:未啟用
  • 網路 (變更)
  • 連線方法:Public access (allowed IP addresses) and Private endpoint
  • Allow public access to this resource through the internet using a public IP address:是
  • 允許來自 Azure 內的任何 Azure 服務可公用存取此伺服器:是
  • 防火牆規則:1
  • SSL/TLS:強制執行 SSL 且 TLS 版本為 1.2。可以在建立伺服器後變更它。

31 of 75

按『建立』後,等待5分鐘

32 of 75

33 of 75

如何設定

不要使用SSL加密連線

34 of 75

如何設定不要使用SSL加密連線

35 of 75

如何設定不要使用SSL加密連線

36 of 75

如何設定不要使用SSL加密連線

  • 方法:伺服器參數🡪
    • require_secure_trans=OFF

37 of 75

最後要儲存,才會設定

38 of 75

如何讓任何IP都可以存取Azure的mySQL

39 of 75

設定1:設定『網路』🡪 允許來自 Azure 內的任何 Azure 服務可公用存取此伺服器

  • 設定『網路』🡪 允許來自 Azure 內的任何 Azure 服務可公用存取此伺服器

40 of 75

設定2:開放防火牆設定:�IP:0.0.0.0~255.255.255.255

41 of 75

最後要儲存,才會設定

42 of 75

如何找到你剛剛建立的MySQL資料庫

43 of 75

如何找到建立好的MySQL資料庫

  • 點按:左上角的menu

44 of 75

如何找到建立好的MySQL資料庫

  • 點按:所有服務(all the service)

45 of 75

如何找到建立好的MySQL資料庫

  • 在『篩選服務』輸入:MySQL
    • 選擇:MySQL彈性資料庫

46 of 75

如何找到建立好的MySQL資料庫

  • 選擇你剛剛建立的MySQL資料庫與server:
    • 選擇:xxx-mySQL

47 of 75

建立資源,虛擬主機後

一旦測試完,就要停止

否則會一直計算金額

48 of 75

建立資源後,若沒有使用就要馬上停止,否則會一直計費

  • 停止資源方法:
    • Menu🡪所有資源

49 of 75

建立資源後,若沒有使用就要馬上停止,否則會一直計費

  • 停止資源方法:
    • 挑選一個資源來停止

50 of 75

建立資源後,若沒有使用就要馬上停止,否則會一直計費

  • 停止資源方法:
    • 挑選一個資源來停止(虛擬機)/或刪除(資料庫)

51 of 75

如何知道你目前的費用是多少金額?

52 of 75

如何知道你目前的費用是�多少金額?

  • Menu🡪成本管理,計費

53 of 75

如何知道你目前的費用是�多少金額?

54 of 75

查閱個人剛剛建立好MySQL資料庫基本資訊

55 of 75

如何由外連線到MySQL資料庫的資訊

  • 注意:伺服器名稱xxx..mysql.database.azure.com

56 of 75

如何查詢Azure MySQL資料庫

三種方法

57 of 75

第1種方法

安裝Azure Data Studio

連線到Azure雲端(不實作)

58 of 75

如何讀取Azure MySQL資料庫�方法1:Azure Data Studio

  • 錯誤方法:它沒有像SQL資料庫的『查詢編輯器
  • 解決方法1:
    • 可以使用 Azure Data Studio 來連線到 MySQL 伺服器,
    • 並使用 SQL 陳述式來插入和查詢資料庫中的資料。
  • Azure Data Studio:
    • 是一個跨平台的資料庫管理工具,支援多種資料庫系統,包括 MySQL
    • 您可以在 Azure Data Studio 中建立查詢編輯器,並執行 SQL 查詢,並查看查詢結果和執行計畫。

59 of 75

如何讀取Azure MySQL資料庫�方法1:Azure Data Studio

  • 解決方法1:先到chrome下載『 Azure Data Studio

60 of 75

如何讀取Azure MySQL資料庫�方法1:Azure Data Studio

61 of 75

第2種方法

MySQL WorkBench

連線Azure雲端

62 of 75

第2種方法:MySQL WorkBench�連線Azure雲端

63 of 75

第2種方法:MySQL WorkBench�連線Azure雲端

  • 主機connection name
  • Username
    • 要到Azure mysql的概觀裡面,查詢

64 of 75

第2種方法:MySQL WorkBench�連線Azure雲端

  • 連線…,若是出現下面錯誤訊息,
  • 表示要設定Azure mySQL的『網路設定與安全性設定』

65 of 75

設定1:設定『網路』🡪 允許來自 Azure 內的任何 Azure 服務可公用存取此伺服器

  • 設定『網路』🡪 允許來自 Azure 內的任何 Azure 服務可公用存取此伺服器

66 of 75

設定2:開放防火牆設定(這個最重要)�IP:0.0.0.0~255.255.255.255

67 of 75

設定2:開放防火牆設定(這個最重要)�IP:0.0.0.0~255.255.255.255

  • 你也可以新增目前該用戶IP位址
    • 但是換電腦(IP不同),每次連線,都要新增新的IP位址

68 of 75

觀念:專業的雲端主機,會針對個別IP,開放特定防火牆設定

  • 若是在企業,要連線,必須新增特定的IP位址
    • 新增特定IP位址
  • 現在只是學生開發階段,為了省事
    • 開放全部的IP
    • IP:0.0.0.0~255.255.255.255

69 of 75

最後要儲存,才會設定

70 of 75

設定後,用WorkBench連線Azure

  • 主機connection name
  • Username
    • 要到Azure mysql的概觀裡面,查詢

71 of 75

連線成功,WorkBench連線Azure

72 of 75

從WorkBench

匯入1個資料庫

到Azure雲端

73 of 75

74 of 75

練習題:匯入firstdb資料庫�https://acupun.site/lecture/sql/example/sql/firstdb.zip

  • 1. 匯入資料庫firstdb
  • 2.查詢:顯示經管2A學生的『姓名,數學』
  • 3.顯示books的『書名,價格』
  • 4.修改資料表『經管2A』🡪 『經管3A』

75 of 75

第3種方法

用google colab

寫python程式

連線Azure雲端