教學課程:使用 Azure 入口網站 設計 適用於 PostgreSQL 的 Azure 資料庫 - 單一伺服器
適用於:適用於 PostgreSQL 的 Azure 資料庫 - 單一伺服器
重要
適用於 PostgreSQL 的 Azure 資料庫 - 單一伺服器位於淘汰路徑上。 強烈建議您升級至 適用於 PostgreSQL 的 Azure 資料庫 - 彈性伺服器。 如需移轉至 適用於 PostgreSQL 的 Azure 資料庫 - 彈性伺服器的詳細資訊,請參閱單一伺服器 適用於 PostgreSQL 的 Azure 資料庫 發生什麼事?。
適用於 PostgreSQL 的 Azure 資料庫 是受控服務,可讓您在雲端中執行、管理及調整高可用性 PostgreSQL 資料庫。 使用 Azure 入口網站,您可以輕鬆管理伺服器和設計資料庫。
在本教學課程中,您會使用 Azure 入口網站 來瞭解如何:
- 建立適用於 PostgreSQL 的 Azure 資料庫伺服器
- 設定伺服器防火牆
- 使用 psql 公用程式建立資料庫
- 載入範例資料
- 查詢資料
- 更新資料
- 還原數據
必要條件
如果您沒有 Azure 訂用帳戶,請在開始前建立免費帳戶。
建立適用於 PostgreSQL 的 Azure 資料庫
系統會使用一組定義的計算和記憶體資源來建立 適用於 PostgreSQL 的 Azure 資料庫 伺服器。 伺服器會在 Azure 資源群組內建立。
請遵循下列步驟來建立 適用於 PostgreSQL 的 Azure 資料庫 伺服器:
選取 Azure 入口網站左上角的 [建立資源] 。
從 [新增] 頁面中選取 [資料庫],然後從 [資料庫] 頁面中選取 [適用於 PostgreSQL 的 Azure 資料庫]。
選取 [單一 伺服器 部署] 選項。
填寫 [基本] 窗體,其中包含下列資訊:
設定 建議的值 描述 訂用帳戶 您的訂用帳戶名稱 您想要用於伺服器的 Azure 訂用帳戶。 如果您有多個訂用帳戶,請選擇您針對資源計費的訂用帳戶。 資源群組 myresourcegroup 新的資源組名或您訂用帳戶的現有資源組名。 伺服器名稱 mydemoserver 可識別 Azure Database for PostgreSQL 伺服器的唯一名稱。 功能變數名稱 postgres.database.azure.com 會附加至您提供的伺服器名稱。 伺服器只能包含小寫字母、數字及連字號 (-) 字元。 它至少必須包含 3 到 63 個字元。 資料來源 None 選取 [無] 從頭開始建立新的伺服器。 (您會選取如果您要從現有 適用於 PostgreSQL 的 Azure 資料庫 伺服器的異地備份建立伺服器,請進行備份。 管理員使用者名稱 myadmin 當您連線到伺服器時,要使用的您自己的登入帳戶。 系統管理員登入名稱不能azure_superuser、azure_pg_admin、系統管理員、系統管理員、根、來賓或公用。 它不能從pg_開始。 密碼 您的密碼 伺服器管理員帳戶的新密碼。 它必須包含介於8到128個字元之間。 您的密碼必須包含下列三個類別中的字元:英文大寫字母、英文小寫字母、數位(0 到 9),以及非英數位元(!、$、#、% 等等)。 Location 最接近使用者的區域 最接近使用者的位置。 版本 最新的主要版本 除非您有特定需求,否則為最新的 PostgreSQL 主要版本。 計算 + 儲存體 一般用途、 Gen 5、 2 個虛擬核心、 5 GB、 7 天、 異地備援 新伺服器的計算、儲存體和備份設定。 選取 [ 設定伺服器]。 接下來,選取 [一般用途] 索引標籤。 第 5 代、4 個虛擬核心、100 GB 和 7 天是計算產生、虛擬核心、儲存體 和備份保留期限的預設值。 您可以保留這些滑桿,或加以調整。 若要在異地備援記憶體中啟用伺服器備份,請從 [備份備援選項] 中選取 [異地備援]。 若要儲存此定價層選取專案,請選取 [ 確定]。 下一個螢幕快照會擷取這些選取專案。 注意
如果您的工作負載只需要輕量計算和 I/O,請考慮使用基本定價層。 請注意,在基本定價層中建立的伺服器之後,無法調整為一般用途或記憶體優化。 如需詳細資訊, 請參閱定價頁面 。
提示
當您 接近已配置的限制時,啟用自動成長 時,您的伺服器會增加記憶體,而不會影響您的工作負載。
選取 [檢閱 + 建立] 以檢閱您的選項。 選取 [建立] 以佈建伺服器。 這項作業可能需要幾分鐘的時間。
在工具列上,選取 [通知 ] 圖示(鈴鐺),以監視部署程式。 部署完成後,您可以選取 [釘選到儀錶板],這會在 Azure 入口網站 儀錶板上建立此伺服器的圖格,作為伺服器 [概觀] 頁面的快捷方式。 選取 [移至資源 ] 會開啟伺服器的 [ 概觀 ] 頁面。
根據預設, postgres 資料庫會在您的伺服器下建立。 postgres 資料庫是預設資料庫,供使用者、公用程式和第三方應用程式使用。 (另一個預設資料庫是 azure_maintenance。其功能是將受控服務進程與用戶動作分開。您無法存取此資料庫。
設定伺服器層級防火牆規則
適用於 PostgreSQL 的 Azure 資料庫 服務會使用伺服器層級的防火牆。 根據預設,此防火牆會防止所有外部應用程式和工具聯機到伺服器和伺服器上的任何資料庫,除非建立防火牆規則來開啟特定IP位址範圍的防火牆。
部署完成之後,請從左側功能表中選取 [所有資源 ],然後輸入名稱 mydemoserver 來搜尋新建立的伺服器 。 選取搜尋結果中列出的伺服器名稱。 伺服器的 [概觀] 頁面隨即開啟,並提供可進行進一步設定的選項。
在伺服器頁面中,選取 [連線 安全性]。
在 [規則名稱] 下的 文字框中選取 , 然後新增防火牆規則以指定連線的IP範圍。 輸入您的IP範圍。 選取 [儲存]。
選取 [儲存],然後選取 X 以關閉 連線 安全性頁面。
注意
Azure PostgreSQL 伺服器會透過埠 5432 進行通訊。 如果您嘗試從公司網路內連線,網路防火牆可能不允許透過埠 5432 的輸出流量。 若是如此,除非 IT 部門開啟埠 5432,否則您無法連線到 Azure SQL 資料庫 伺服器。
取得連線資訊
當您建立 適用於 PostgreSQL 的 Azure 資料庫 伺服器時,也會建立預設 postgres 資料庫。 若要連線到資料庫伺服器,您必須提供主機資訊和存取認證。
從 Azure 入口網站 左側功能表中,選取 [所有資源],然後搜尋您剛才建立的伺服器。
選取伺服器名稱 mydemoserver。
選取伺服器的 [ 概觀 ] 頁面。 記下 [伺服器名稱 ] 和 [伺服器管理員登入名稱]。
使用 psql 連線 PostgreSQL 資料庫
如果您的用戶端電腦已安裝 PostgreSQL,您可以使用 psql 的本機實例或 Azure 雲端控制台來連線到 Azure PostgreSQL 伺服器。 現在,讓我們使用 psql 命令行公用程式連線到 適用於 PostgreSQL 的 Azure 資料庫 伺服器。
執行下列 psql 命令以連線到 適用於 PostgreSQL 的 Azure 資料庫 資料庫:
psql --host=<servername> --port=<port> --username=<user@servername> --dbname=<dbname>
例如,下列命令會使用存取認證,連線到 PostgreSQL 伺服器上名為 postgres 的預設資料庫 mydemoserver.postgres.database.azure.com。
<server_admin_password>
輸入您在系統提示您輸入密碼時所選擇的 。psql --host=mydemoserver.postgres.database.azure.com --port=5432 --username=myadmin@mydemoserver --dbname=postgres
提示
如果您想要使用 URL 路徑來連線到 Postgres,URL 會使用
%40
來編碼 @ 登入使用者名稱。 例如,psql 的 連接字串 為 ,psql postgresql://myadmin%40mydemoserver@mydemoserver.postgres.database.azure.com:5432/postgres
線上到伺服器之後,請在提示字元中建立空白資料庫:
CREATE DATABASE mypgsqldb;
在提示中,執行下列命令以將連線切換至新建立的資料庫 mypgsqldb:
\c mypgsqldb
在資料庫中建立資料表
既然您已瞭解如何連線到 適用於 PostgreSQL 的 Azure 資料庫,您可以完成一些基本工作:
首先,建立數據表,並使用某些數據加以載入。 讓我們建立一個數據表,以使用此 SQL 程式代碼追蹤清查資訊:
CREATE TABLE inventory (
id serial PRIMARY KEY,
name VARCHAR(50),
quantity INTEGER
);
您可以輸入下列命令,立即在資料表清單中看到新建立的數據表:
\dt
將資料載入到資料表
既然您已經有資料表,請在其中插入一些資料。 在開啟的命令提示字元視窗中,執行下列查詢以插入一些數據列。
INSERT INTO inventory (id, name, quantity) VALUES (1, 'banana', 150);
INSERT INTO inventory (id, name, quantity) VALUES (2, 'orange', 154);
您現在已將兩個範例數據列放入您稍早建立的清查數據表中。
查詢及更新資料表中的資料
執行下列查詢,從清查資料庫數據表擷取資訊。
SELECT * FROM inventory;
您也可以更新資料表中的資料。
UPDATE inventory SET quantity = 200 WHERE name = 'banana';
當您擷取資料時,可以看到更新的值。
SELECT * FROM inventory;
將數據還原至先前的時間點
假設您不小心刪除了此資料表。 這種情況是您無法輕易從中復原的情況。 適用於 PostgreSQL 的 Azure 資料庫 可讓您回到伺服器擁有備份的任何時間點(由您設定的備份保留期間決定),並將此時間點還原至新的伺服器。 您可以使用這個新伺服器來復原已刪除的數據。 下列步驟會將 mydemoserver 伺服器還原至加入清查數據表之前的時間點。
在伺服器的 [適用於 PostgreSQL 的 Azure 資料庫 概觀] 頁面上,選取工具列上的 [還原]。 [ 還原] 頁面隨即開啟。
填寫 [還原] 表單,其中包含必要的資訊:
- 還原點:選取伺服器變更前發生的時間點
- 目標伺服器:提供您想要還原的新伺服器名稱
- 位置:您無法選取區域,預設與來源伺服器相同
- 定價層:還原伺服器時,您無法變更此值。 它與來源伺服器相同。
選取 [確定] 將伺服器還原到刪除資料表之前的時間點。 將伺服器還原到不同的時間點時,會建立重複的新伺服器做為您指定的時間點,前提是該伺服器位於定價層的保留期間內。
清除資源
在前述步驟中,您在伺服器群組中建立了 Azure 資源。 如果您認為未來不需要這些資源,請刪除伺服器群組。 在伺服器群組的 [概觀] 頁面中按 [刪除] 按鈕。 當快顯頁面上出現提示時,請確認伺服器群組的名稱,並選取最後的 [刪除] 按鈕。
下一步
在本教學課程中,您已瞭解如何使用 Azure 入口網站 和其他公用程式來:
- 建立適用於 PostgreSQL 的 Azure 資料庫伺服器
- 設定伺服器防火牆
- 使用 psql 公用程式建立資料庫
- 載入範例資料
- 查詢資料
- 更新資料
- 還原數據