Azure Synapse Analytics
Azure Synapse Analytics dùng hướng dẫn Azure SQL Database bên dưới. Điểm khác với SQL pool của Synapse:
- Chỉ Import: Synapse không hỗ trợ DirectQuery.
- Máy chủ: dedicated pool là
<workspace>.sql.azuresynapse.net(hoặc<server>.database.windows.netkiểu cũ); serverless pool là<workspace>-ondemand.sql.azuresynapse.net. Cổng 1433. - SSL cố định: luôn mã hóa và kiểm tra chứng chỉ. Có SSH tunnel và On-premises (qua Gateway).
- External table của serverless pool được liệt kê như bảng.
- Synapse không có snapshot isolation: từng bảng được đọc riêng, không cùng một thời điểm. Không hiện ước lượng số dòng và khóa ngoại.
- Dedicated pool đang tạm dừng sẽ báo Không mở được kết nối tới máy chủ và cổng này. Kiểm tra máy chủ, cổng, và firewall đã cho phép IP của Fresco BI chưa. Resume pool rồi kiểm tra lại.
- Với serverless pool, tài khoản còn cần quyền đọc các tệp đứng sau external table; nếu không sẽ báo Tài khoản không có quyền đọc đối tượng này.
- Thêm firewall rule cho các địa chỉ IP đi ra của Fresco BI (hướng dẫn bên cạnh form nguồn dữ liệu có liệt kê) trong trang Networking của Synapse workspace.
Kết nối Azure SQL Database hoặc Azure SQL Managed Instance với Fresco BI. Fresco BI chỉ đọc bảng và view: import vào một bảng dữ liệu (Data Table), hoặc truy vấn trực tiếp bằng DirectQuery.
| Tính năng | Hỗ trợ |
|---|---|
| Import | Có |
| DirectQuery | Có |
| SSL/TLS | Luôn bật và kiểm tra chứng chỉ |
| SSH tunnel | Có |
| Cloud | Có |
| On-premises (qua Gateway) | Có |
Điều kiện cần
Phần tiêu đề “Điều kiện cần”- Dùng SQL authentication (tài khoản và mật khẩu). Chưa hỗ trợ đăng nhập Microsoft Entra ID.
- Tên server, ví dụ
<server>.database.windows.net, và tên database. - Một tài khoản quản trị trên server (server admin hoặc Microsoft Entra admin) để chạy Bước 1.
Bước 1: Tạo tài khoản chỉ đọc
Phần tiêu đề “Bước 1: Tạo tài khoản chỉ đọc”Cách A: contained database user (nên dùng). Kết nối thẳng vào database cần đọc, không phải master, rồi chạy:
CREATE USER fresco_reader WITH PASSWORD = '<strong-password>';GRANT SELECT ON SCHEMA::<schema> TO fresco_reader;Cách B: login cấp server. Kết nối vào master:
CREATE LOGIN fresco_reader WITH PASSWORD = '<strong-password>';Sau đó kết nối vào database cần đọc:
CREATE USER fresco_reader FROM LOGIN fresco_reader;GRANT SELECT ON SCHEMA::<schema> TO fresco_reader;Quyền cấp trên schema áp dụng luôn cho bảng và view tạo sau này trong schema đó. Lặp lại GRANT cho từng schema, hoặc cho đọc mọi schema:
ALTER ROLE db_datareader ADD MEMBER fresco_reader;Không cấp quyền ghi hay db_owner cho tài khoản này. Fresco BI chỉ chạy SELECT.
Bước 2: Cho phép truy cập mạng
Phần tiêu đề “Bước 2: Cho phép truy cập mạng”Cloud. Trong Azure portal, mở logical SQL server, vào Networking. Ở phần public access, thêm một firewall rule cho từng địa chỉ trong các địa chỉ IP đi ra của Fresco BI (hướng dẫn bên cạnh form nguồn dữ liệu có liệt kê). Azure SQL Database dùng cổng 1433. Public endpoint của Managed Instance dùng cổng 3342: nhập cổng này vào ô Cổng.
Có thể thêm rule bằng Azure CLI:
az sql server firewall-rule create --resource-group <resource-group> --server <server> --name frescobi --start-ip-address <frescobi-ip> --end-ip-address <frescobi-ip>SSH tunnel. Nếu database chỉ truy cập được từ một VM bastion, bật SSH tunnel trong form. Cho phép các địa chỉ IP đi ra của Fresco BI (hướng dẫn bên cạnh form nguồn dữ liệu có liệt kê) ở cổng SSH của bastion.
On-premises (qua Gateway). Nếu database chỉ truy cập được từ mạng riêng (ví dụ qua private endpoint), chọn kiểu kết nối On-premises (qua Gateway). Khung này sẽ chuyển sang hướng dẫn Gateway.
Bước 3: Điền form
Phần tiêu đề “Bước 3: Điền form”- Kiểu kết nối: Cloud, hoặc On-premises (qua Gateway) rồi chọn Cụm gateway.
- Tên hiển thị: tên hiện trong Fresco BI.
- Máy chủ: tên server, ví dụ
<server>.database.windows.net. - Cổng: mặc định 1433 (3342 với public endpoint của Managed Instance).
- Database: database cần đọc.
- Tài khoản và Mật khẩu: user tạo ở Bước 1.
- Chế độ SSL: cố định. Nguồn này luôn mã hóa kết nối và kiểm tra chứng chỉ máy chủ.
- Chứng chỉ CA (PEM): để trống. Chứng chỉ của Azure do CA public ký, đã có trong kho chứng chỉ hệ thống.
- Kết nối qua SSH tunnel (bastion): điền Máy chủ SSH, Cổng SSH, Tài khoản SSH, Khóa riêng SSH (OpenSSH hoặc PEM) và Mật khẩu của khóa (nếu có). Lần kiểm tra đầu, so khóa hiện ra với vân tay do quản trị bastion cung cấp rồi bấm Tin khóa này.
Bấm Kiểm tra kết nối. Kết quả hiện phiên bản máy chủ và trạng thái Bảo mật của kết nối.
Chế độ SSL
Phần tiêu đề “Chế độ SSL”Kết nối Azure SQL luôn được mã hóa và kiểm tra chứng chỉ (encrypted_verify_certificate); không đổi được chế độ.
Xử lý sự cố
Phần tiêu đề “Xử lý sự cố”- Máy chủ từ chối tài khoản hoặc mật khẩu. Kiểm tra tài khoản và mật khẩu. Với contained user, ô Database phải là database nơi đã tạo user.
- Tài khoản không có quyền đọc đối tượng này. Nếu gặp khi kiểm tra kết nối, thường là firewall của server chưa cho phép IP của Fresco BI: thêm các địa chỉ IP đi ra của Fresco BI (hướng dẫn bên cạnh form nguồn dữ liệu có liệt kê) trong Networking. Nếu gặp khi đọc bảng, cấp
SELECTtrên schema (Bước 1). - Không mở được kết nối tới máy chủ và cổng này. Kiểm tra máy chủ, cổng, và firewall đã cho phép IP của Fresco BI chưa. Database serverless có thể đang tạm dừng hoặc đang khởi động lại: đợi một phút rồi thử lại.
- Máy chủ không phản hồi kịp. Thường do firewall chặn im lặng hoặc sai máy chủ, cổng. Kiểm tra cổng (1433, hoặc 3342 với Managed Instance) và firewall rule.
- Không phân giải được tên máy chủ (DNS). Kiểm tra lại ô Máy chủ. Nhập đầy đủ tên server có đuôi
.database.windows.net. - Không thiết lập được kết nối SSL với chế độ đã chọn. Kiểm tra chế độ SSL và chứng chỉ CA. Nếu dùng tên DNS riêng, chứng chỉ sẽ không khớp: dùng tên thật của server.
- Chứng chỉ máy chủ không cấp cho tên máy chủ đã nhập. Nhập đúng tên trong chứng chỉ hoặc chọn chế độ chỉ kiểm tra CA. Nhập
<server>.database.windows.net, không dùng alias hay IP. - Không tìm thấy database hoặc đối tượng này trên máy chủ. Kiểm tra lại ô Database.
- Vượt giới hạn kích thước hoặc số kết nối đồng thời. Database đã chạm giới hạn tài nguyên: thử lại sau hoặc nâng service tier.

