SQL Server
Kết nối Microsoft SQL Server 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 | 3 chế độ (mặc định encrypted_verify_certificate) |
| 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”- Máy chủ bật SQL Server authentication (tài khoản và mật khẩu). Chưa hỗ trợ Windows authentication.
- Máy chủ lắng nghe ở một cổng TCP cố định (mặc định 1433). Named instance cần có cổng tĩnh riêng: không nhận dạng
host\instancevà không dùng SQL Browser. - Một login có quyền tạo login và user để chạy Bước 1.
- Tên máy chủ, cổng và tên database.
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”Chạy bằng tài khoản quản trị, thay các giá trị trong ngoặc nhọn.
-- Trên máy chủ (master)CREATE LOGIN fresco_reader WITH PASSWORD = '<strong-password>';
-- Trong database cần đọcUSE <database>;CREATE USER fresco_reader FOR 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. Nếu muốn đọc mọi schema trong database:
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.
Tùy chọn: khi database cho phép snapshot isolation (
ALLOW_SNAPSHOT_ISOLATION ON), Fresco BI đọc mọi bảng của một lần tải tại cùng một thời điểm. Nếu không bật, từng bảng được đọc riêng.
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. Máy chủ phải truy cập được từ internet. Cho phép kết nối vào từ 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 1433 (hoặc cổng của bạn). Ví dụ thêm rule TCP inbound cho từng IP trong security group của AWS hoặc network security group của Azure; với Windows Firewall:
New-NetFirewallRule -DisplayName "Fresco BI" -Direction Inbound -Protocol TCP -LocalPort 1433 -RemoteAddress <frescobi-ip> -Action AllowSSH tunnel. Nếu database chỉ mở cho một máy bastion, bật SSH tunnel trong form. Fresco BI kết nối tới bastion bằng khóa SSH rồi tới database qua tunnel. 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). Với database nằm trong mạng nội bộ, 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 DNS hoặc IP public của máy chủ, không kèm
\instance. - Cổng: mặc định 1433.
- Database: database cần đọc.
- Tài khoản và Mật khẩu: login tạo ở Bước 1.
- Chế độ SSL: xem bảng bên dưới. Giữ mặc định trừ khi bắt buộc phải đổi.
- Chứng chỉ CA (PEM): hiện với
encrypted_verify_certificate. Dán chứng chỉ CA đã ký chứng chỉ máy chủ, hoặc chính chứng chỉ tự ký của máy chủ. Để trống thì dùng 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”| Chế độ | Ý nghĩa |
|---|---|
encrypted_verify_certificate (mặc định) |
Mã hóa, kiểm tra chứng chỉ và tên máy chủ |
encrypted_trust_server_certificate |
Mã hóa nhưng tin chứng chỉ không kiểm tra (chỉ để thử) |
unencrypted |
Không mã hóa |
Chỉ encrypted_verify_certificate hiện ô Chứng chỉ CA (PEM). Khi chưa cài chứng chỉ, SQL Server dùng chứng chỉ tự ký: dán chứng chỉ đó vào ô CA, hoặc cài chứng chỉ do CA tin cậy cấp.
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, mật khẩu, SQL Server authentication đã bật, và login không bị khóa hay hết hạn.
- Không phân giải được tên máy chủ (DNS). Kiểm tra lại ô Máy chủ. Dùng tên DNS public hoặc IP, không kèm
\instance. - Máy chủ từ chối kết nối ở cổng này: database không lắng nghe ở cổng đó hoặc firewall từ chối. Kiểm tra TCP/IP đã bật trong SQL Server Configuration Manager và cổng đúng.
- 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. 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 database.
- Địa chỉ máy chủ thuộc dải bị chặn (nội bộ, loopback hoặc metadata). Database trong mạng nội bộ cần kết nối On-premises qua Gateway. Chọn On-premises (qua Gateway).
- Chứng chỉ máy chủ không do CA tin cậy ký. Dán đúng chứng chỉ CA vào ô Chứng chỉ CA. Với chứng chỉ tự ký, dán chính chứng chỉ của máy chủ.
- 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 tên máy chủ có trong chứng chỉ.
- Máy chủ bắt buộc mã hóa nhưng chế độ đã chọn không mã hóa. Chọn một chế độ SSL có mã hóa. Máy chủ ép mã hóa: không dùng
unencrypted. - Không tìm thấy database hoặc đối tượng này trên máy chủ. Kiểm tra ô Database và user ở Bước 1 đã có trong database đó.
- Tài khoản không có quyền đọc đối tượng này. Cấp
SELECTtrên schema (Bước 1).

