Tải bản đầy đủ (.docx) (87 trang)

Làm quen với các công cụ SQL Server

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.46 MB, 87 trang )

<span class="text_page_counter">Trang 1</span><div class="page_container" data-page="1">

<b>Chapter 1. Làm quen với các cơng cụ SQL Server</b>

<b>Cài đặt SQL Server</b>

Bạn có thể cài đặt SQL Server 2022 trên Windows và Linux.Tất cả các bộ chứa SQL Server đều dựa trên SQL Server trên cáctệp ảnh Linux từ Ubuntu hoặc Red Hat. Những tệp ảnh này có thểđược triển khai cho các máy tính để bàn bằng Docker hoặcKubernetes cho dù bạn đang chạy Windows, macOS hay Linuxcho mục đích phát triển. Để hỗ trợ sản phẩm, bạn chỉ có thể triểnkhai các bộ chứa đó cho máy Linux chạy Docker hoặc Kubernetesvới sự hỗ trợ đầy đủ. Phần sau đây đề cập đến việc cài đặt SQLServer nguyên bản trên Microsoft Windows

Cài đặt SQL Server với Installation Center

SQL Server Installation Center là ứng dụng bạn sử dụng đểcài đặt và thêm các tính năng vào một phiên bản của SQL Server.Nếu bạn đang cài đặt SQL Server theo cách thủ cơng, thì đây làứng dụng sẽ mở ra khi bạn chạy tệp Setup.exe cho SQL Server.Như được minh họa trong Hình 1-1, nó cũng có thể đóng vai trị làđiểm khởi chạy để tải xuống các gói cài đặt cho Data MigrationAssistant (đã thay thế SQL Server Upgrade Advisor), SQL ServerManagement Tools, SQL Server Reporting Services, và SQL ServerData Tools .

</div><span class="text_page_counter">Trang 2</span><div class="page_container" data-page="2">

<b>Figure 1-1 Installation Center components.</b>

Điều này có vẻ hơi khó hiểu nhưng trên tab Cài đặt, trình càiđặt cho SQL Server Reporting Services, SQL Server ManagementTools, and SQL Server Data Tools chỉ là các liên kết chuyển hướngđến một vị trí tải xuống trên trang web của Microsoft cho từng tậptin cài đặt của từng thành phần này. Bạn cũng có thể tải xuống vàcài đặt các công cụ một cách độc lập mà không cần sử dụngInstallation Center. Các liên kết này có sẵn dưới dạng tùy chọntương thích ngược. Trước SQL Server 2017, các trình cài đặt nàyđã được đưa vào Installation Center.

Cách tốt nhất là bạn chỉ nên cài đặt SQL Server ManagementStudio và Data Tools trên máy khách chứ không phải phải tất cả.Điều này giúp cho việc giảm công tác theo dõi và cài đặt trên máychủ. Do đó, việc sử dụng Installation Center trên các máy khách làkhông phổ biến.

Làm cách nào để bạn cài đặt SQL Server 2022 trên Linux?:SQL Server được hỗ trợ đầy đủ trên Red Hat Enterprise Linux(RHEL), SUSE Linux Enterprise Server (SLES) và Ubuntu, sử dụng

</div><span class="text_page_counter">Trang 3</span><div class="page_container" data-page="3">

trình quản lý gói tích hợp sẵn cho mỗi bản phân phối. Tính năngcài đặt SQL Server chính là Database engine. Bạn có thể cài đặtcác cơng cụ dòng lệnh, SQL Server Agent, Full-Text Search, andSQL Server Integration Services (SSIS) dưới dạng các gói tùy chọn.Để biết thêm thông tin về cách cài đặt SQL Server trên Linux, truycập Microsoft Docs tại

<b>Kế hoạch trước khi nâng cấp hoặc cài đặt</b>

Khi bạn khởi động Installation Center máy chủ SQL lần đầutiên, nó sẽ mở ra với tab Planning được chọn trước. Tab này có haicơng cụ mà bạn có thể thấy hữu ích trước khi cài đặt hoặc nângcấp phiên bản SQL Server lên SQL Server 2022: ConfigurationChecker and Data Migration Assistant.

Configuration Checker

Công cụ Configuration Checker kiểm tra các điều kiện có thểngăn q trình cài đặt SQL Server 2022 thành cơng. Khi bạn chọnConfiguration Checker, trình hướng dẫn sẽ chạy trên máy chủ cụcbộ. Khơng có tùy chọn để chọn một vị trí máy tính thay thế. Trìnhhướng dẫn trả về một báo cáo HTML liệt kê tất cả các quy tắc yêucầu cài đặt (các khía cạnh) và kết quả của từng thử nghiệm. Hầuhết các quy tắc này đều phổ biến đối với tất cả các cấu hìnhWindows và bạn có thể dễ dàng khắc phục hầu hết chúng.

<b>- AclPermissionsFacet. Kiểm tra xem các khóa đăng ký SQL</b>

Server có nhất qn khơng. Cần có một số khóa đăng ký nhấtđịnh để cài đặt SQL Server và một số giá trị khóa đăng ký phải

</div><span class="text_page_counter">Trang 4</span><div class="page_container" data-page="4">

khớp. Nếu các giá trị phù hợp này không xuất hiện và nhất quán,SQL Server sẽ không được cài đặt hoặc nâng cấp thành công.

<b>- FacetDomainControllerCheck. Chúng tôi khuyên bạn không</b>

nên cài đặt SQL Server 2022 trên bộ điều khiển miền vì hai lý do.Đầu tiên, nó có thể làm tổn hại đến tính bảo mật của cả ActiveDirectory và phiên bản SQL Server. Thứ hai, nó có thể gây ra sựtranh chấp tài nguyên giữa hai dịch vụ. Microsoft cũng khuyênbạn không nên cài đặt SQL Server trên bộ điều khiển miền. Đểbiết thêm thông tin, hãy xem IsDotNetInstalled. Quy tắc này xác định xem Microsoft .NET</b>

Framework 4.7.2 trở lên có được cài đặt trên hệ thống hay không.

<b>- MediaPathLength. Đường dẫn cho vị trí cài đặt SQL Server</b>

2022 phải có độ dài ít hơn 260 ký tự.

<b>- RebootRequiredCheck. Khơng có khởi động lại cài đặt nào có</b>

thể đang chờ xử lý.

<b>- SetupCompatibilityCheck. Không thể cài đặt các phiên bản</b>

SQL Server khơng tương thích tiếp theo trên máy tính.

<b>- ThreadHasAdminPrivilegeCheck. Tài khoản đang chạy SQL</b>

Server phải có quyền quản trị trên máy tính.

<b>- WmiServiceStateCheck. Thao tác này sẽ kiểm tra xem dịch vụ</b>

Windows Management Instrumentation (WMI) có được khởi độngvà chạy trên máy tính hay khơng.

Lưu ý: Phiên bản tối thiểu của Windows Server dành cho SQLServer 2022 là Windows Server 2016.

</div><span class="text_page_counter">Trang 5</span><div class="page_container" data-page="5">

Data Migration Assistant (DMA)

Có một liên kết trên tab Planning trong Installation Center đểtải xuống gói cài đặt Data Migration Assistant.

• Đánh giá mức độ sẵn sàng nâng cấp hoặc di chuyển

• Di chuyển dữ liệu giữa các phiên bản của SQL Server và/hoặcAzure SQL Database

Đối với loại dự án đánh giá, máy chủ nguồn có thể là phiênbản SQL Server hoặc Amazon Web Services (AWS) RelationalDatabase Service (RDS) cho phiên bản SQL Server. Đối với loại dựán di chuyển, máy chủ nguồn phải là phiên bản SQL Server. Cáclựa chọn máy chủ mục tiêu sau phù hợp với cả đánh giá và dichuyển:

 Azure SQL Database

 Azure SQL Managed Instance

 SQL Server on Azure Virtual Machines SQL Server

Loại dự án đánh giá của Data Migration Assistant phát hiệncác sự cố tương thích dành riêng cho cơ sở dữ liệu giữa các phiênbản SQL Server gốc và đích trong quá trình khám phá trước khi

</div><span class="text_page_counter">Trang 6</span><div class="page_container" data-page="6">

nâng cấp. Thơng thường giữa các phiên bản sẽ có sự khơng dùngnữa và sự khác biệt về tính năng và điều này đặc biệt đúng nếuloại máy chủ đích là Cơ sở dữ liệu Azure SQL. Nếu không được giảiquyết, một số mục này có thể ảnh hưởng đến chức năng cơ sở dữliệu trong hoặc sau khi nâng cấp. Công cụ này phác thảo ngắngọn tất cả các phát hiện và đưa ra khuyến nghị.

Dự án đánh giá kiểm tra các khía cạnh nâng cấp hoặc dichuyển SQL Server sau đây:

- So sánh đặc tính: Dự án đánh giá cung cấp một bộ đề xuất toàndiện, các phương pháp thay thế có sẵn trong Azure và các bướcgiảm thiểu.

- Những vấn đề tương thích. Dự án đánh giá cung cấp các tínhnăng được hỗ trợ hoặc khơng được hỗ trợ một phần sẽ chặn quátrình di chuyển. Các vấn đề về khả năng tương thích được phânloại thành thay đổi vi phạm, thay đổi hành vi hoặc tính năngkhơng dùng nữa.

Ghi chú: Bạn có thể tìm thấy danh sách các điểm khác biệtvề T-SQL giữa Máy chủ SQL và Cơ sở dữ liệu Azure SQL tại cách sử dụng loại dự án di chuyển của Data MigrationAssistant, quản trị viên có thể di chuyển lược đồ, dữ liệu và cácđối tượng khác của cơ sở dữ liệu, chẳng hạn như vai trò cơ sở dữliệu từ máy chủ nguồn sang máy chủ đích. Trình hướng dẫn đượcliên kết với tính năng này hoạt động bằng cách cung cấp cho

</div><span class="text_page_counter">Trang 7</span><div class="page_container" data-page="7">

người dùng tùy chọn để chọn máy chủ nguồn và đích cũng nhưchọn một hoặc nhiều cơ sở dữ liệu để di chuyển.

Cài đặt Migration Scope cho phép bạn chọn nội dung cần dichuyển. Bạn có thể chọn giữa chỉ lược đồ cơ sở dữ liệu, chỉ dữ liệuhoặc cả lược đồ và dữ liệu.

<i>Di chuyển đến máy chủ SQL</i>

Đối với quá trình di chuyển Máy chủ SQL, phải có một vị trídự phịng mà cả máy chủ nguồn và máy chủ đích đều có thể truycập—thường là đường dẫn UNC, chẳng hạn như \\server01\folder\subfolder\. Nếu đây là một vị trí mạng, thì dịch vụ chạy phiên bảnSQL Server nguồn phải có quyền ghi đối với thư mục. Ngoài ra, tàikhoản dịch vụ đang chạy phiên bản SQL Server đích phải cóquyền đọc đối với cùng một vị trí mạng.

Nếu điều này đặt ra một thách thức, thì có một hộp kiểm“Copy The Database Backups To A Other Location That TheTarget Server Can Read And Restore From” mà bạn có thể chọnđể chia nhỏ quy trình thành các bước và sử dụng (hy vọng) cácquyền được nâng cao của quản trị viên chạy trình hướng dẫn.

Khi bạn chọn tùy chọn này, các đặc quyền bảo mật của tàikhoản của cá nhân đang chạy Data Migration Assistant được sửdụng để thực hiện sao chép tệp từ vị trí sao lưu sang vị trí khơiphục. Người dùng phải có quyền truy cập vào từng vị trí này vớiquyền đọc và ghi cần thiết để bước này thành cơng. Trình hướngdẫn cũng cung cấp cho người dùng tùy chọn chỉ định vị trí để khơiphục các tệp dữ liệu và tệp nhật ký trên máy chủ đích.

</div><span class="text_page_counter">Trang 8</span><div class="page_container" data-page="8">

Ở bước cuối cùng, trình hướng dẫn sẽ hiển thị cho ngườidùng một danh sách các thông tin đăng nhập để xem xét dichuyển, với các tên đăng nhập xung đột hoặc các thơng tin đăngnhập đã được xác định. Nếu có thể, trình hướng dẫn sẽ cố gắngánh xạ các thơng tin đăng nhập đơn lẻ và căn chỉnh các ID bảomật đăng nhập (SID).

<i>Di chuyển đến cơ sở dữ liệu Azure SQL</i>

Công cụ The Data Migration Assistant thực hiện di chuyển Cơsở dữ liệu Azure SQL theo hai giai đoạn:

1. Lược đồ. Đầu tiên, nó tạo tập lệnh của lược đồ cơ sở dữ liệu(bạn có thể lưu tập lệnh này trước khi triển khai cho mục đích lưutrữ và thử nghiệm), mà bạn triển khai tới cơ sở dữ liệu đích.

2. Dữ liệu. Nếu bạn chọn di chuyển dữ liệu, một bước khác sẽđược thêm vào sau khi tạo bảng trên cơ sở dữ liệu đích. Điều nàymang đến cho bạn cơ hội để xác minh rằng tất cả các bảng đềutồn tại trong cơ sở dữ liệu đích sau khi di chuyển lược đồ ban đầu.Di chuyển dữ liệu sử dụng Bulk Copy Program (BCP) để thực hiệnviệc di chuyển dữ liệu. Mọi ràng buộc đáng tin cậy từ cơ sở dữ liệunguồn phải được tin cậy trong cơ sở dữ liệu sau khi dữ liệu đượcsao chép, nhưng cách tốt nhất là xác thực rằng các ràng buộckhông trở nên khơng đáng tin cậy trong q trình sao chép.

Việc di chuyển lược đồ là bắt buộc; việc di chuyển dữ liệu là tùychọn.

<i>Cài đặt hoặc nâng cấp SQL Server</i>

Khi nói đến các cơng cụ quản trị và phát triển được sử dụngđể làm việc với SQL Server, tab quan trọng khác trong Installation

</div><span class="text_page_counter">Trang 9</span><div class="page_container" data-page="9">

Center là tab Installation . Tab này chứa một liên kết để cài đặtDatabase Engine (dịch vụ SQL Server). Một số tiện ích được thảoluận trong chương này chỉ được cài đặt dưới dạng tùy chọn trongquá trình cài đặt Database Engine đầy đủ và không thể tải xuốngvà cài đặt độc lập.

Trong quá trình nâng cấp tại chỗ của phiên bản SQL Serverhiện có, bạn khơng thể thêm hoặc xóa các thành phần. Quá trìnhnày sẽ đơn giản là nâng cấp các thành phần hiện có.

Thận trọng: Bản nâng cấp tại chỗ lên SQL Server 2022 sẽ gỡcài đặt SQL Server Reporting Services nếu dịch vụ này được càiđặt. Nếu bạn đã cài đặt nhiều phiên bản trên cùng một máy chủ(xếp chồng phiên bản), một số cấu phần dùng chung sẽ đượcnâng cấp tự động, bao gồm SQL Server Browser và SQL ServerVSS Writer. Bạn có thể đọc thêm về nhiều phiên bản và phiên bản

<b> công cụ và dịch vụ được cài đặt với Database Engine</b>

SQL Server 2022 cung cấp các công cụ và dịch vụ tùy chọnmà bạn có thể chọn trong quá trình cài đặt. Chúng ta sẽ xem xétmột số cơng cụ trong các phần tiếp theo. (Lưu ý rằng danh sáchnày không đầy đủ và một số thành phần này có thể khơng có sẵntrong SQL Server 2022 trên Linux.)

</div><span class="text_page_counter">Trang 10</span><div class="page_container" data-page="10">

Dịch vụ máy học

Bắt đầu với SQL Server 2016, Microsoft đã tạo một khung mởrộng để thực thi mã bên ngoài trên SQL Server. Dịch vụ máy họchiện hỗ trợ các ngơn ngữ bên ngồi sau:

• R (được giới thiệu trong SQL Server 2016)

• Python (được giới thiệu trong SQL Server 2017)• Java (được giới thiệu trong SQL Server 2019)

Dịch vụ máy học có sẵn cho cả Windows và Linux.

Một phiên bản Database Engine là bắt buộc đối với Dịch vụmáy học trong SQL Server 2022. Hỗ trợ cho Máy chủ máy học độclập có sẵn trước đây, hỗ trợ R và Python, đã kết thúc vào ngày 1tháng 7 năm 2022.

Bắt đầu với SQL Server 2022, runtimes cho R, Python và Javakhơng cịn được cài đặt với Thiết lập SQL nữa. Bạn phải chạy Trìnhhướng dẫn thiết lập SQL để cài đặt Dịch vụ máy học và Tiện íchmở rộng ngơn ngữ. Sau đó, bạn phải cài đặt (các) gói và runtimeschạy R, Python hoặc Java mong muốn.

Ghi chú: Sau khi cài đặt (các) runtimes mong muốn của bạn,hãy đảm bảo bật tính năng tập lệnh bên ngoài bằng cách sử dụnglệnh TSQL sau:

EXEC sp_configure 'bật tập lệnh bên ngồi';Sau đó khởi động lại dịch vụ SQL Server.

Có các bài viết riêng về Microsoft Docs để cài đặt Dịch vụMachine Learning trên SQL Server 2019 trở về trước và cho SQLServer 2022.

</div><span class="text_page_counter">Trang 11</span><div class="page_container" data-page="11">

Để cài đặt SQL Server 2022 trên Windows, hãy xem cài đặt/sql-machine-learning services-windows-install-sql-2022. Để biết thôngtin về cách cài đặt Dịch vụ máy học cho SQL Server 2022 trênLinux, hãy xem 2022.

Dịch vụ chất lượng dữ liệu

Chuẩn hóa, làm sạch và nâng cao dữ liệu là rất quan trọngđối với tính hợp lệ khi thực hiện nghiên cứu phân tích. SQL ServerData Quality Services cho phép cả bộ dữ liệu cơ sở tri thức tại chỗvà dịch vụ dữ liệu tham chiếu dựa trên đám mây của các nhàcung cấp bên thứ ba.

Data Quality Services là một sản phẩm hỗ trợ các nhiệm vụquan trọng về chất lượng dữ liệu, bao gồm:

• Hiệu chỉnh dựa trên cơ sở tri thức• Khử trùng lặp

• Làm phong phú thêm siêu dữ liệu

Data Quality Services có hai phần: Data Quality Server vàData Quality Client. Data Quality Server có sự phụ thuộc vàoDatabase Engine. Ngoài ra, bạn có thể cài đặt hai thành phần nàytrên cùng một máy tính hoặc trên các máy tính khác nhau. Cáccơng cụ hồn tồn độc lập và bạn có thể cài đặt chúng theo bấtkỳ thứ tự nào. (Nói cách khác, bạn cài cái nào trước không quantrọng.)

Để hoạt động, Data Quality Client chỉ cần có khả năng kếtnối với Data Quality Server. Ngồi ra, có một số thao tác nhất

</div><span class="text_page_counter">Trang 12</span><div class="page_container" data-page="12">

định mà Data Quality Client có thể thực hiện yêu cầu cài đặtMicrosoft Excel cục bộ cho cài đặt máy khách. Thơng thường cóData Quality Client trên một hoặc nhiều máy trạm, nhưng khơngphải máy tính chạy SQL Serve

<i>Data Quality Server</i>

Để cài đặt Data Quality Server, trước tiên bạn phải chọn hộpkiểm của nó trong q trình thiết lập SQL Server 2022. Thao tácnày sao chép tệp trình cài đặt vào ổ đĩa bạn chỉ định. Sau khi càiđặt SQL Server 2022, bạn có thể cài đặt Data Quality Server. Đểbắt đầu, trong menu Windows Start , hãy mở rộng Microsoft SQLServer 2022, sau đó chọn SQL Server 2022 Data Quality ServerInstaller. Thao tác này sẽ chạy tệp DQSInstaller.exe. Quá trình càiđặt yêu cầu bạn nhập và xác nhận mật khẩu khóa chính của cơ sởdữ liệu. Sau đó, nó tạo ba cơ sở dữ liệu mới trong phiên bản SQLServer được chọn làm máy chủ lưu trữ: DQS_Main, DQS_Projectsvà DQS_Staging_Data

<i>Data Quality Client</i>

Data Quality Client là một ứng dụng được sử dụng cùng vớiquản lý dữ liệu chính (đừng nhầm với Master Data Services), lưutrữ dữ liệu hoặc chỉ làm sạch dữ liệu đơn thuần. Nó thường đượcsử dụng bởi người quản lý dữ liệu có hiểu biết sâu sắc về doanhnghiệp và kiến thức về chính dữ liệu đó. Bạn có thể sử dụng cơngcụ này để tạo cơ sở kiến thức xung quanh các quy tắc, chuyển đổivà ánh xạ của phần tử dữ liệu nhằm giúp quản lý và căn chỉnh cácphần tử dữ liệu. Bạn cũng có thể sử dụng nó để tạo và chạy các

</div><span class="text_page_counter">Trang 13</span><div class="page_container" data-page="13">

dự án chất lượng dữ liệu cũng như để thực hiện các tác vụ quảntrị.

Để đăng nhập vào Data Quality Server bằng công cụ DataQuality Client, bạn phải là thành viên của vai trò máy chủsysadmin hoặc của một trong ba vai trò sau trong cơ sở dữ liệuDQS_Main:

• dqs_administrator• dqs_kb_editor• dqs_kb_operatorGiao diện dịng lệnh

Bạn có thể sử dụng và quản trị SQL Server từ dòng lệnh.Điều này đặc biệt phù hợp với Linux là một hệ điều hành (HĐH) hỗtrợ cho SQL Server. Các tiện ích như SQLCMD và BCP chạy trênWindows, Linux và macOS, với một số khác biệt nhỏ.

Tiện ích SQLCMD được sử dụng để chạy các câu lệnh T-SQL,các thủ tục được lưu trữ hoặc tệp tập lệnh, sử dụng kết nối ODBCvới phiên bản SQL Server.

ODBC có nghĩa là gì?

ODBC là viết tắt của Open Database Connectivity (Kết nối cơsở dữ liệu mở), là giao diện lập trình ứng dụng (API) tiêu chuẩn mởđể liên lạc từ mọi hệ điều hành được hỗ trợ đến bất kỳ Công cụ cơsở dữ liệu được hỗ trợ nào.

Mặc dù một số người có thể coi tiện ích SQLCMD là “cổ điển”vì nó đã xuất hiện từ SQL Server 2005, nhưng nó vẫn rất phổ biến

</div><span class="text_page_counter">Trang 14</span><div class="page_container" data-page="14">

vì tiện ích của nó trong việc tự động hóa các tập lệnh. Bạn có thểgọi SQLCMD từ bất kỳ cách nào sau đây:

• Dịng lệnh Windows, Linux hoặc macOS• Tệp tập lệnh Windows, Linux hoặc macOS• Bước cơng việc của SQL Server Agent• Sử dụng PowerShell bằng dòng lệnhGhi chú

Cả SQL Server Management Studio và Azure Data Studio đềucó thể gọi chế độ SQLCMD, điều này giúp thực hiện được một sốchức năng rất hữu ích. Mặc dù về mặt kỹ thuật nó là một phầncủa SQLCMD nhưng nó khơng hẳn là một cơng cụ dịng lệnh. Bạn

là gì?

mssql-cli là tiện ích dòng lệnh tương tác để truy vấn SQLServer chạy trên Windows, macOS và Linux. Nó cung cấp nhữngcải tiến đáng kể so với SQLCMD; tuy nhiên, nó khơng được cài đặtvới SQL Server theo mặc định.

Các tính năng của mssql-cli bao gồm:• IntelliSense cho T-SQL

• Đánh dấu cú pháp• Chỉnh sửa nhiều dịng• Hỗ trợ các tập tin cấu hình

mssql-cli được cài đặt trên Windows và macOS bằng pip(trình quản lý gói cho các gói Python). Trên Linux, kho lưu trữ của

</div><span class="text_page_counter">Trang 15</span><div class="page_container" data-page="15">

Microsoft phải được đăng ký trước khi sử dụng trình quản lý gói đểcài đặt mssql-cli. Bạn có thể đọc thêm về mssql-cli tại bạn cho rằng SQLCMD là “trường phái cũ”, hãy giữ vữnglập trường của mình. Chương trình sao chép hàng loạt (Bulk CopyProgram-BCP), được giới thiệu vào năm 1992 cùng với việc pháthành phiên bản đầu tiên của SQL Server, khiến SQLCMD trônggiống như một đứa trẻ mới vào nghề.

Đó là một minh chứng khá rõ ràng rằng cho đến ngày nay,BCP vẫn là một cách thiết thực để làm việc với SQL Server đểchèn hoặc xuất số lượng lớn dữ liệu. Nó sử dụng các kỹ thuật ghinhật ký tối thiểu và luồng dữ liệu số lượng lớn để tạo lợi thế chonó.

Nếu điều này làm bạn nhớ đến SQL Server IntegrationServices, hãy lưu ý rằng BCP gần như không mạnh bằng. Bạn sửdụng BCP để di chuyển dữ liệu giữa các tệp dữ liệu (văn bản, đượcphân cách bằng dấu phẩy hoặc các định dạng khác) và bảng SQLServer.

Bạn có thể sử dụng BCP để nhập tệp vào bảng SQL Serverhoặc xuất dữ liệu từ bảng SQL Server sang tệp dữ liệu. BCP yêucầu sử dụng file định dạng để chỉ định cấu trúc của bảng nhận vàcác kiểu dữ liệu được phép trong mỗi cột. May mắn thay, BCP giúpbạn tạo file định dạng này khá dễ dàng.

Có một số điều về BCP mà bạn phải hiểu và thực hiện đểcông cụ hoạt động tối ưu:

</div><span class="text_page_counter">Trang 16</span><div class="page_container" data-page="16">

• Đưa cơ sở dữ liệu vào mơ hình khơi phục đơn giản hoặc được ghinhật ký hàng loạt.

• Thả bất kỳ chỉ mục khơng được nhóm nào vào bảng đích.

• Chèn dữ liệu đã sắp xếp và sử dụng tùy chọnsort_data nếu tồntại một chỉ mục được nhóm.

• Chạy BCP trên cùng một máy với SQL Server.

• Đặt các tập tin nguồn và đích trên các ổ đĩa vật lý riêng biệt.• Phát triển trước các tệp dữ liệu SQL theo cách thủ cơng nếu dựkiến sẽ có sự tăng trưởng.

• Tận dụng khả năng khởi tạo tập tin ngay lập tức.

• Sử dụng sp_tableoption để đặt khóa bảng khi tải số lượng lớn(TABLOCK) thành BẬT.

• Để biết thêm thông tin, hãy truy cập cách nào để tải xuống các cơng cụ dịng lệnh mới nhất?

Các phiên bản SQLCMD và BCP được cài đặt cùng với SQLServer 2022 trên Windows được cập nhật thơng qua gói riêng cótên Line Utilities for SQL Server, có tại với các tính năng như Always Encrypted và xác thựcAzure Active Directory, SQLCMD yêu cầu phiên bản tối thiểu 13.1.Hoàn tồn có thể (và có khả năng) cài đặt nhiều phiên bảnSQLCMD trên một máy chủ, vì vậy hãy đảm bảo kiểm tra xem bạncó đang sử dụng đúng phiên bản hay không bằng cách chạysqlcmd -?.

</div><span class="text_page_counter">Trang 17</span><div class="page_container" data-page="17">

Các trình cài đặt riêng biệt dành cho phiên bản Linux vàmacOS của các cơng cụ dịng lệnh này đều có sẵn và được cậpnhật thường xuyên.

<i>SQL Server PowerShell Provider</i>

Nếu bạn thích sử dụng dòng lệnh hoặc nếu bạn đã bắt đầusử dụng PowerShell để giúp quản lý và bảo trì Máy chủ SQL củamình, Microsoft cung cấp PowerShell Provider for SQL Server. Nócó thể được cài đặt với Windows PowerShell và PowerShell 7.

Ghi chú: Có hai mơ-đun PowerShell cho SQL Server: SQLPSvà SQLServer. SQLPS là một mơ-đun cũ hơn có trong SQL Serverđể tương thích ngược nhưng khơng cịn được cập nhật. Bạn nên sửdụng mô-đun SqlServer, được cài đặt riêng thông qua PowerShellGallery và được cập nhật thường xuyên. SqlServer cũng cung cấpchức năng để chạy các tập lệnh SQLCMD bằng cách sử dụng lệnhinvoke-sqlcmd cmdlet.

The SQL Server PowerShell Provider sử dụng Đối tượng quảnlý máy chủ SQL (SQL Server Management Objects-SMO), được càivào khi bạn cài đặt mô-đun SqlServer PowerShell. Các đối tượngnày được Microsoft thiết kế để cung cấp khả năng quản lý SQLServer theo chương trình. Có nhiều cách mà nhà phát triển vàquản trị viên có thể sử dụng PowerShell để tự động hóa cơng việccủa họ trong SQL Server, đặc biệt khi làm việc với nhiều môitrường máy chủ.

Để tìm hiểu thêm về tự động hóa trong SQL Server bằngPowerShell.

</div><span class="text_page_counter">Trang 18</span><div class="page_container" data-page="18">

SQL Server Configuration Manager

Trình quản lý cấu hình máy chủ SQL là một cơng cụ sử dụngMicrosoft Management Console làm shell. Để khởi chạy Trìnhquản lý cấu hình máy chủ SQL, hãy tìm SQL Server 2022Configuration Manager trên menu Start của Windows trong Appshoặc tìm kiếm SQLServerManager16.msc.

Ghi chú: SQL Server trên Linux có bộ cơng cụ cấu hình riêngmà bạn có thể đọc trong Chương 5.

Quản trị viên sử dụng Trình quản lý cấu hình máy chủ SQL đểquản lý các dịch vụ SQL Server. Các dịch vụ này bao gồmDatabase Engine, the SQL Server Agent, SQL Server IntegrationServices, the PolyBase Engine và các dịch vụ khác. Trình quản lýcấu hình máy chủ SQL cung cấp giao diện người dùng đồ họa(GUI) để thực hiện các tác vụ sau được liên kết với các dịch vụ liênquan đến SQL Server:

• Bắt đầu hoặc dừng một dịch vụ

• Thay đổi chế độ khởi động (thủ cơng, tự động, tắt)

• Thay đổi các tham số khởi động, bao gồm cả cờ theo dõi• Tạo bí danh máy chủ

• Thay đổi dịch vụ Đăng nhập bằng tài khoản

• Quản lý các giao thức máy khách, bao gồm cổng mặc địnhTCP/IP, duy trì hoạt động và cài đặt khoảng thời gian

• Quản lý hành vi FILESTREAM

Bạn có thể quản lý các dịch vụ SQL Server từ WindowsServices Managerkhông? Mặc dù bạn có thể thực hiện hầu hết cáctác vụ tương tự này bằng Windows Services Manager (Control

</div><span class="text_page_counter">Trang 19</span><div class="page_container" data-page="19">

Panel > Administrative Tools > Services), chúng tôi khuyên bạnkhông nên làm như vậy.

Trình quản lý dịch vụ Windows (services.msc) khơng cungcấp tất cả các tùy chọn cấu hình khác nhau có trong Trình quản lýcấu hình máy chủ SQL. Quan trọng hơn, nó bỏ qua việc điều chỉnhcác cài đặt đăng ký quan trọng cần thay đổi, điều này sẽ ảnhhưởng đến tính ổn định của mơi trường SQL Server của bạn. Bạnphải luôn thay đổi dịch vụ SQL Server bằng Trình quản lý cấu hìnhmáy chủ SQL. Điều này đặc biệt đúng đối với việc quản lý tàikhoản dịch vụ SQL Server.

<b>Công cụ giám sát hiệu suất và độ tin cậy</b>

Các công cụ Database Engine Tuning Advisor, ExtendedEvents, and Profiler được cài đặt cùng với Database Engine vàkhông yêu cầu các bước cài đặt bổ sung. Phần này khám phá từngcông cụ này một cách chi tiết hơn.

<b>Database Engine Tuning Advisor</b>

Trong số nhiều công cụ quản trị mà Microsoft cung cấp đểlàm việc với SQL Server là Trình cố vấn điều chỉnh cơng cụ cơ sởdữ liệu. Bạn có thể khởi động nó từ menu Start hoặc từ trong SQLServer Management Studio (SSMS) bằng cách chọn Tools >Database Engine Tuning Advisor. Bằng cách sử dụng công cụ này,bạn có thể phân tích dấu vết phía máy chủ được SQL ServerProfiler ghi lại. Nó phân tích mọi câu lệnh đi qua SQL Server vàđưa ra nhiều tùy chọn khác nhau để có thể cải thiện hiệu suất.Ghi chú

</div><span class="text_page_counter">Trang 20</span><div class="page_container" data-page="20">

Trình cố vấn điều chỉnh công cụ cơ sở dữ liệu không được hỗtrợ trên Azure SQL Database hoặc Azure SQL Managed Instance.

Các đề xuất do Trình cố vấn điều chỉnh cơng cụ cơ sở dữ liệuđưa ra chỉ tập trung vào các chiến lược lập chỉ mục, thống kê vàphân vùng. Trình cố vấn điều chỉnh cơng cụ cơ sở dữ liệu đơn giảnhóa việc triển khai mọi thay đổi được quản trị viên phê duyệt mànó đề xuất. Bạn cần xem xét kỹ lưỡng những thay đổi này để đảmbảo rằng chúng sẽ không ảnh hưởng tiêu cực đến phiên bản.

Thận trọng

Bạn khơng nên chạy Trình cố vấn điều chỉnh công cụ cơ sởdữ liệu trực tiếp trên máy chủ sản xuất vì nó có thể để lại các chỉmục và số liệu thống kê giả định có thể tồn tại mà DBA khôngbiết. Những điều này sẽ yêu cầu nguồn lực bổ sung để duy trì. Sửdụng cột is_hypothetical trong chế độ xem hệ thống sys.indexesđể tìm các chỉ mục giả định để xóa thủ cơng.

<b>Extended Events</b>

Về mặt kỹ thuật, Extended Events GUI (chỉ dành cho máykhách) được cài đặt và là một phần tích hợp của SSMS, nhưngchúng tơi thảo luận về nó ở đây với các cơng cụ dành riêng chohiệu suất khác vì các lý do phân loại.

Bạn có thể đọc thêm về cách Extended Events được hỗ trợtrong Azure SQL Database, với một số điểm khác biệt, tại .

SQL Server Extended Events (hoặc XEvents) là một hệ thốngxử lý sự kiện được tạo để thay thế SQL Server Profiler. Hãy coi nó

</div><span class="text_page_counter">Trang 21</span><div class="page_container" data-page="21">

như phiên bản Profiler “mới và cải tiến”. Nó nhẹ hơn, có đầy đủtính năng và linh hoạt hơn. Extended Events cung cấp một cáchđể giám sát những gì đang xảy ra trong SQL Server với chi phíhoạt động ít hơn nhiều so với theo dõi tương đương chạy qua SQLProfiler. Điều này là do Extended Events không đồng bộ với SQLServer.

Bạn truy cập Extended Events thông qua SSMS bằng cáchkết nối với phiên bản SQL Server, điều hướng đến thư mụcManagement và mở rộng nút Extended Events để hiển thịSessions. Nhấp chuột phải vào Sessions; sau đó, trên menu phímtắt mở ra, chọn New Session Wizard. Bạn có thể sử dụng trìnhhướng dẫn này để lên lịch các sự kiện chạy khi khởi động máy chủhoặc ngay sau khi sự kiện được tạo.

Ghi chú: SQL Server Management Studio cung cấp trình xemExtended Events đơn giản có tên là XEvent Profiler. Nó nhằm mụcđích thay thế cơng cụ Profiler độc lập để giám sát hoạt động trongthời gian thực trên phiên bản SQL Server.

Viết kịch bản cho các phiên Extended Events thơng qua SQL có thể là cách nhanh hơn và nhất quán hơn nhiều để tạo thưviện các phiên Extended Events để sử dụng lại trong nhiều môitrường. Điều này mang lại cho bạn sự linh hoạt để bắt đầu vàdừng chúng khi cần, ngay cả khi thực hiện một cơng việc trongSQL Server Agent.

T-Bạn có thể sử dụng Extended Events trong nhiều tình huốngkhác nhau. Có hơn 1.700 sự kiện có sẵn trong SQL Server 2022.

</div><span class="text_page_counter">Trang 22</span><div class="page_container" data-page="22">

Dưới đây là một số cách sử dụng phổ biến nhất cho ExtendedEvents :

• Xử lý sự cố

• Chẩn đốn sự chậm chạp• Chẩn đốn bế tắc

• Chẩn đốn biên dịch lại• Gỡ lỗi

• Kiểm tra đăng nhập• Baselining

Bằng cách tạo kịch bản cho một phiên sự kiện và sử dụngtính năng tự động hóa, bạn có một tập hợp các phiên có sẵn màbạn có thể sử dụng để khắc phục sự cố tùy theo sự cố. Bạn có thểtriển khai các giải pháp này trên bất kỳ máy chủ nào cần kiểm trakỹ hơn các vấn đề về hiệu suất.

Bạn cũng có thể sử dụng tính năng theo dõi Extended Eventsđể cung cấp baseline từ đó bạn có thể theo dõi sự cải thiện hoặcxuống cấp mã theo thời gian.

<b>Management Data Warehouse</b>

Management Data Warehouse (MDW), được giới thiệu trongSQL Server 2008, thu thập dữ liệu về hiệu suất của phiên bản SQLServer và cung cấp thông tin lại cho quản trị viên ở định dạngkiểu Phân tích trực quan.

MDW chưa phát triển tính năng mới đáng kể nào kể từ khi nó đượcphát hành. Nó chưa được áp dụng rộng rãi và hầu hết đã đượcthay thế bởi Query Store và các công cụ giám sát của bên thứ bakhác.

</div><span class="text_page_counter">Trang 23</span><div class="page_container" data-page="23">

MDW có cơ sở dữ liệu quan hệ riêng chứa các bảng là ngườinhận (đích) của các hoạt động thu thập Extended Events cụ thể.Sau khi cài đặt, MDW cung cấp ba báo cáo: Server Active History,Query Statistics History, và System Disk Usage. Bạn có thể tạocác báo cáo bổ sung và thêm chúng vào bộ sưu tập MDW. Việc sửdụng cấu hình ba báo cáo này giúp quản trị viên cơ sở dữ liệu cóthể thực hiện việc lập cơ sở hiệu suất cơ bản và lập kế hoạch pháttriển. Nó cũng cho phép các hoạt động điều chỉnh chủ động.

Để biết thêm thông tin về cách đặt cấu hình Kho dữ liệuquản lý, hãy xem Server Reporting Services (SSRS)</b>

Bắt đầu với SQL Server 2017, SQL Server Reporting Services(SSRS) là bản tải xuống riêng biệt bên ngồi trình cài đặt SQLServer. Bạn có thể sử dụng SSRS để tạo báo cáo về nhiều nguồndữ liệu khác nhau. Nó bao gồm một bộ cơng cụ hồn chỉnh để tạo,quản lý, lập lịch và gửi báo cáo. Các báo cáo có thể bao gồm biểuđồ, bản đồ, ma trận dữ liệu, v.v. SSRS cung cấp giao diện cổngweb để quản lý và sắp xếp các báo cáo cũng như các mục khác.Internet Information Services (IIS) không bắt buộc phải sử dụngSSRS.

<i>Cài đặt</i>

Bạn phải tải xuống SSRS riêng biệt bằng cách làm theo phầnsơ khai trên màn hình Installation Center chính hoặc bằng cách

</div><span class="text_page_counter">Trang 24</span><div class="page_container" data-page="24">

truy cập windows/install-reporting-services.

hoàn tất cài đặt SSRS sẽ cho kết quả như sau:

• Cài đặt Report Server Service, bao gồm những việc sau:• Report Server Web Service

• Cổng thơng tin web (để xem và quản lý báo cáo cũng nhưbảo mật báo cáo)

• Trình quản lý cấu hình máy chủ báo cáo

• Cấu hình Report Service và URL cổng thơng tin web

• Việc thiết lập các tài khoản dịch vụ cần thiết để SSRS hoạtđộng

Sau khi cài đặt hoàn tất, sử dụng quyền quản trị, duyệt đếncác thư mục sau để xác minh rằng q trình cài đặt thành cơng vàdịch vụ đang chạy:

• localhost/Reports

• localhost/ReportServer

Nếu bạn đang chạy một phiên bản có tên của SQL Server,bạn cần sử dụng thẻ Web Portal URL trong hộp thoại ReportServer Configuration Manager để xác định đường dẫn chính xáccủa cả URL dịch vụ web và URL cổng thông tin web, như minh họatrong Hình 1 -2.

</div><span class="text_page_counter">Trang 25</span><div class="page_container" data-page="25">

<b>Figure 1-2 Web Portal URL setting in Report Server Configuration</b>

<b>Report Server Configuration Manager</b>

Trình quản lý cấu hình máy chủ báo cáo đơn giản hóa việc tùy chỉnh hoạt động của các tính năng và khả năng do SSRS cung cấp. Bạn có thể sử dụng nó để thực hiện các tác vụ sau và hơn thế nữa:

• Tạo hoặc chọn cơ sở dữ liệu Report Server hiện có.

• Xác định các URL được sử dụng để truy cập Report Server và Report Manager.

• Định cấu hình tài khoản dịch vụ Report Server.

</div><span class="text_page_counter">Trang 26</span><div class="page_container" data-page="26">

• Sửa đổi chuỗi kết nối được Report Serversử dụng.• Thiết lập khả năng phân phối email.

• Tích hợp với Power BI Service.

Bạn định cấu hình SSRS như thế nào?

Trình quản lý cấu hình trong SSRS khơng thiếu các tùy chọntùy chỉnh. Ngoài các giá trị mặc định, bạn có thể thay đổi cấu hìnhcủa hầu hết mọi cài đặt bằng GUI, thông qua SSMS, trực tiếp qua tệp web.config và thậm chí trong một số trường hợp là Windows Register. Việc tùy chỉnh tài khoản, địa chỉ IP, cổng hoặc hành vi cóthể là một nỗ lực khá lớn, phạm vi của nó vượt xa những gì chúng ta có thể đề cập trong chương này. Bạn có thể tìm thêm thơng tin tại định cấu hình chứng chỉ SSL nhằm bảo mật cài đặt SSRScủa bạn, hãy xem Server Management Studio (SSMS)</b>

SQL Server Management Studio (SSMS) là công cụ quản lý và phát triển cơ sở dữ liệu SQL Server tiêu chuẩn trên thực tế. Nó cung cấp giao diện đồ họa phong phú và đơn giản hóa các tác vụ cấu hình, quản trị và phát triển liên quan đến việc quản lý môi trường SQL Server và Cơ sở dữ liệu SQL Azure. SSMS cũng chứa trình soạn thảo tập lệnh T-SQL mạnh mẽ và có nhiều mẫu, ví dụ và tính năng tạo tập lệnh.

</div><span class="text_page_counter">Trang 27</span><div class="page_container" data-page="27">

SSMS có hỗ trợ các hệ điều hành khác không? SSMS là một ứng dụng chỉ dành cho Windows. Nó khơng hoạt động trong mơi trường Linux hoặc macOS. Thay vào đó, bạn có thể sử dụng AzureData Studio đa nền tảng miễn phí để kết nối với SQL Server, Cơ sởdữ liệu Azure SQL và Azure Synapse Analytics (trước đây là Azure SQL Data Warehouse) từ Windows, Linux và macOS.

Để biết thêm thông tin về Azure Data Studio, hãy đọc phần “Azure Data Studio” ở phần sau của chương này.

<i>Phát hành và phiên bản</i>

Kể từ khi phát hành SQL Server 2016, SSMS đã là bộ cơng cụ độc lập mà bạn có thể tải xuống và cài đặt độc lập với

Database Engine.

<i><small>Cài đặt SQL Server Management Studio</small></i>

Theo tài liệu này, phiên bản chính mới nhất của SQL ServerManagement Studio (SSMS) là 19.x. Nó có thể được cài đặt cùngvới các phiên bản SSMS chính trước đó, bao gồm cả các phiên bảnđi kèm với các phiên bản SQL Server trước đó.

Chúng tơi khun bạn khơng nên cài đặt SSMS trên máytính chạy phiên bản sản xuất của SQL Server. Thay vào đó, hãycài đặt SSMS trên máy trạm và kết nối SSMS đó với phiên bản sảnxuất thơng qua kết nối an toàn. Ngoài việc giảm sự cám dỗ sửdụng Remote Desktop để kết nối với phiên bản sản xuất, nó cịncó thêm lợi ích là hạn chế diện tích bề mặt tấn công. Để cài đặtSSMS, trước tiên hãy tải xuống phiên bản mới nhất của sản phẩmtại đây: Sau khi bạn tải xuống tệp thực thi,hãy cài đặt nó. Khơng có gì nhiều hơn thế. Q trình cài đặt kết

</div><span class="text_page_counter">Trang 28</span><div class="page_container" data-page="28">

thúc với thông báo Thiết lập đã hồn tất. Trong một số trườnghợp, bạn có thể được nhắc khởi động lại máy tính.

Tại thời điểm này, bạn có thể khởi động ứng dụng bằngcách mở menu Start và duyệt tới Microsoft SQL Server Tools 19 >Microsoft SQL Server Management Studio 19. Để dễ truy cập, bạncó thể ghim chương trình vào menu Start hoặc sao chép biểutượng tới máy tính để bàn của bạn. Azure Data Studio (ADS) đượccài đặt với SSMS theo mặc định. Nếu bạn đã cài đặt ADS trêncùng một máy tính, bạn có thể gọi các tính năng ADS, chẳng hạnnhư truy vấn hoặc sổ ghi chép, từ bên trong SQL ServerManagement Studio.

Bạn có thể ngăn cài đặt ADS bằng SSMS không? Mặc dùADS được cài đặt theo mặc định khi bạn cài đặt SSMS nhưng hiệntại có một tùy chọn để ngăn cài đặt này. Để làm như vậy, hãychạy trình cài đặt SSMS từ dòng lệnh và sử dụng tùy chọnDoNotInstallAzureDataStudio. Ví dụ: nếu bạn đã điều hướng đếnthư mục chứa trình cài đặt SSMS, bạn sẽ sử dụng lệnh sau:

SSMS-Setup-ENU.exe /Passive DoNotInstallAzureDataStudio=1

<b>Upgrade SQL Server Management Studio</b>

SSMS will notify you if an update is available. You can alsomanually check whether one is available. To do so,

<b>select Tools > Check For Updates. The different versions of the</b>

SSMS components—the installed version and the latest availableversion—will display. If any updates are available, you can select

<b>the Update button to open a webpage from which you can</b>

download and install the latest recommended version.

</div><span class="text_page_counter">Trang 29</span><div class="page_container" data-page="29">

Now that the tools used to manage SQL Server are completelyindependent of the Database Engine, upgrading SSMS is easy. Itis also much safer to upgrade; there is no longer any concernabout accidentally affecting your production environmentbecause you upgraded your SSMS toolset.

<b>Features of SQL Server Management Studio</b>

The power of SSMS is in the many ways in which you can use it tointeract with one or more SQL Server instances. This sectionhighlights some useful features.

<b>Object Explorer and Object Explorer Details</b>

Object Explorer is the default SSMS view, providing both ahierarchical and tabular view of each instance of SQL Server andthe child objects within those instances (including databases,tables, views, stored procedures, functions, and so on).

Object Explorer uses its own connection to the database server,and can block certain database-level activities, just like any otherSSMS query.

Object Explorer presents two panes (see Figure 1-3): the ObjectExplorer pane (left) and the Object Explorer Details pane (right).The Object Explorer pane is strictly hierarchical, whereasthe Object Explorer Details pane is both hierarchical and tabular.As such, the latter provides additional functionality over itscompanion pane; for example, object search and the selectionand scripting of multiple noncontiguous objects. To display the

</div><span class="text_page_counter">Trang 30</span><div class="page_container" data-page="30">

<b>Object Explorer Details pane, choose View > Object ExplorerDetails or press F7.</b>

<b>Figure 1-3 The Object Explorer view in SQL Server Management</b>

Studio.

</div><span class="text_page_counter">Trang 31</span><div class="page_container" data-page="31">

<b>Server Registration</b>

The Server Registration feature within SSMS can both save timeand make it easier to manage a complex environment by saving alist of commonly accessed instances. Registering connections inadvance for future reuse provides the following benefits:

 Preservation of connection information Creation of groups of servers

 Aliasing of servers with more meaningful names

 Ability to add detailed descriptions to both servers andserver groups

 Import and export of registered server groups for sharingbetween machines or teammates

To access the Server Registration feature within SSMS,

<b>select View > Registered Servers or press Ctrl+Alt+G.</b>

You can use SSMS to register and manage four different types ofservers and services:

 Database Engine Analysis Services Reporting Services Integration ServicesNote

Server Registration for SQL Server Integration Services is includedonly for backward compatibility for versions prior to SQL Server2012.

<b>Database Engine</b>

</div><span class="text_page_counter">Trang 32</span><div class="page_container" data-page="32">

When you use the Server Registration feature to work withDatabase Engines, two nodes appear: Local Server Groups andCentral Management Servers. Each of these has some very usefulfeatures.

<b>Local Server Groups node</b>

The Local Server Groups node allows for the addition of eitherfreestanding individual server registrations or the creation ofserver groups. Think of server groups as folders within the LocalServer Groups node. Each of these folders can contain one ormore individual servers. Figure 1-4 shows one of the many waysin which you can use the Local Server Groups feature to organizeand save frequently used Database Engine connections.

</div><span class="text_page_counter">Trang 33</span><div class="page_container" data-page="33">

<b>Figure 1-4 Local Server Groups.</b>

From the Local Server Groups node, you can access the followingtools:

 <b>Export Registered Server Wizard. To access the ExportRegistered Servers Wizard, right-click the Local ServerGroups folder node or any folder or server nested within thisnode. Then, on the shortcut menu, select Tasks > Export.</b>

</div><span class="text_page_counter">Trang 34</span><div class="page_container" data-page="34">

From there, you have quite a bit of freedom. You can chooseto export from any level within the tree structure as well aswhether to include usernames and passwords. In thepreceding case, if you want to export only the DevelopmentServers node and any servers within it, you can do so bychoosing within this wizard where to save the created fileand then build out an XML document with theextension .regsrvr.

 <b>Importing Registered Servers. To access the ImportRegistered Servers Wizard, right-click the Local ServerGroups folder node or any folder or server nested within thisnode. Then, on the shortcut menu, select Tasks > Import.</b>

This opens the Import Registered Servers dialog box, whichyou can use to select a previously created .regsrvr file, asdemonstrated in Figure 1-5.

</div><span class="text_page_counter">Trang 35</span><div class="page_container" data-page="35">

<b>Figure 1-5 Importing registered servers.</b>

</div><span class="text_page_counter">Trang 36</span><div class="page_container" data-page="36">

From here you can choose the folder in which you would likethe imported object or object tree to reside. If you select afolder that already contains the same structures you areattempting to import, a message will appear asking you toapprove an update/overwrite to the existing object structure.

<b>Central Management Servers node</b>

As mentioned, the second node available in the Database Enginefeature is Central Management Servers. At first glance, this mightappear to be almost the same thing as the Local Server Groupsnode. It allows you to add servers and create folders withdescriptive names to which you can add servers. However, theCentralize Management Servers node includes some verysignificant differences.

First, when using this feature, you must choose a SQL Serverinstance to play the role of a Central Management Server (CMS).You can alias the server with a new name, but the server itselfmust exist. After you have chosen a server to play this role andhave created a CMS, you can create new server groups orindividual server registrations using the same methods explainedin the “Local Server Groups node” section.

Here is where things become interesting. If you right-click anylevel (a server, a group, or the CMS itself), you are presented withmultiple options:

 New Query Object Explorer Evaluate Policies

</div><span class="text_page_counter">Trang 37</span><div class="page_container" data-page="37">

 Import Policies

Anything that is run will be run against each of the servers in thechosen group’s tree. Running a query on the CMS itself will resultin the query being run on every server hierarchically present in alltrees within the CMS. This is a very handy feature, but of course,with great power comes great responsibility!

The default behavior of CMS is that multiple server results aremerged into one result set. You can change and customize this

<b>behavior by choosing Tools > Options > Query Results > SQLServer > Multiserver Results and enabling the MergeResults setting. Other behavior options available here include</b>

Add Login Name and Add Server Name to the result set from aCMS query.

When you create a CMS on an existing SQL Server, others canaccess and use the structure setup, so there is no need to exportor import to keep folders and structures synchronized. This isgreat for team collaboration and efficiency.

<b>Filtering objects</b>

In the default Object Explorer view, SSMS lists items within eachcategory in alphabetical order, starting with the schema name.There are several main groups, or tree categories, that arecommon across all versions of SQL Server. These include thefollowing:

 <b>Databases. This provides a full list of databases (including</b>

system databases) on the SQL Server instance. Databasesnapshots also appear here.

</div><span class="text_page_counter">Trang 38</span><div class="page_container" data-page="38">

 <b>Security. This contains a diverse list of object types,</b>

including logins, server roles, credentials, cryptographicproviders, and audits.

 <b>Server Objects. These include backup devices, endpoints,</b>

linked servers, and server-level triggers.

 <b>Replication. This provides information about publishers and</b>

 <b>Always On High Availability. This includes Failover</b>

Clustering and Availability Groups.

 <b>Management. This category covers diverse features and</b>

tools, including Policy Management, Data Collection,Resource Governor, Extended Events, Maintenance Plans,Database Mail, DTC (Distributed Transaction Coordinator),and SQL Server error logs.

 <b>SQL Server Agent. Includes jobs, alerts, operators, proxies,</b>

and error logs of its own.

 <b>Integration Services Catalogs. This contains the SQL</b>

Server Integration Services package catalog, depending onthe SQL Server version.

By default, SSMS lists all objects alphabetically beneath each treecategory. When working with databases that have a largequantity of objects, this can become quite aggravating, as theuser may be subject to long list load times and must expendenergy scrolling and watching the screen very closely for theobject in question.

</div><span class="text_page_counter">Trang 39</span><div class="page_container" data-page="39">

Fortunately, SSMS has a filtering feature. You can apply filters tomany object categories, such as user databases, tables, views,stored procedures, table-valued functions, user-defined functions,and even database users.

You can independently configure filter settings in either theObject Explorer pane or the Object Explorer Details pane. Theavailable filters change based on the type of item selected(databases, tables, stored procedures, etc.). Table 1-1 lists theavailable filtering options for tables.

<b>Table 1-1 SQL Server Management Studio filters and options</b>

Does Not Equal

Does Not EqualIs Memory Optimized Equals

</div><span class="text_page_counter">Trang 40</span><div class="page_container" data-page="40">

<i>After you have selected a filter, the suffix (filtered) appears in the</i>

Object Explorer or Object Explorer Details tree above your filteredlist.

To clear an applied filter and display all objects in a tree again,

<b>right-click a filtered category and choose Filter > RemoveFilter.</b>

In the Object Explorer pane, you can select only one object at atime. The Object Explorer Details pane, however, provides amulti-select feature that enables you to work on multiple objects(tables, views, jobs, and so on) at the same time.

Following the standard in the Windows environment,

<b>the Shift key allows for the selection of contiguous objects,whereas the Ctrl key allows for the selection of objects one by</b>

one. You can initiate actions on multiple objects using the GUI oryou can choose to script multiple objects at once. Scripting eachobject into its own file or merging all object scripting into one

</div>

×