Exportar (0) Imprimir
Expandir Tudo

Tutorial das federações do Banco de dados SQL -- DBA

Atualizado: abril de 2014

As federações do Banco de dados SQL do Microsoft Azure são um dos métodos para criar soluções de bancos de dados em expansão. Federações são objetos no Banco de dados SQL do Azure semelhantes a outros objetos como tabelas e procedimentos armazenados, mas fornecem bancos de dados gerenciados de sistemas para permitir que os aplicativos expandam partes de ou todos os seus dados. Para obter mais informações sobre métodos para dimensionamento do Banco de dados SQL do Azure, consulte Expandindo Bancos de dados SQL do Azure.

Este tutorial demonstra o processo de criação de uma federação de Banco de dados SQL do Azure, ao criar e preencher uma tabela, e ao executar uma operação de divisão usando SQL Server Management Studio (SSMS). Depois de cada procedimento principal, examine os metadados para ver os resultados de cada operação.

Pré-requisitos

Antes de começar este tutorial, você deverá concluir as etapas a seguir:

Neste tutorial

Conecte-se a um servidor do Banco de dados SQL

Apesar deste tutorial fornecer instruções sobre uso de SSMS, outra opção é usar o Portal de Gerenciamento do Windows Azure..

Para conectar-se a um servidor do Banco de dados SQL

  1. Abra SQL Server Management Studio.

  2. Na caixa de diálogo Conectar ao Mecanismo de Banco de Dados, digite ou selecione os seguintes valores:

     

    Nome

    Valor

    Nome do servidor

    <FornecerNomeDoServidor>

    Autenticação

    Autenticação do SQL Server

    Fazer logon

    <FornecerIDDoUsuário>

    Senha

    <FornecerSenha>

  3. Clique em Conectar.

Criar um banco de dados da raiz da federação

Para criar uma federação, primeiro crie um banco de dados que serve como o banco de dados de raiz da federação. A raiz da federação é o banco de dados inicial que hospeda os diretórios da federação.

Para criar um banco de dados da raiz da federação

  1. No Pesquisador de Objetos, expanda Bancos de Dados, expanda Bancos de dados do sistema e clique em mestre.

  2. Clique em Nova Consulta.

  3. Verifique se Bancos de dados disponíveis na barra de ferramentas do SQL Editor mostra mestre.

  4. Na janela Editor de Consultas, copie e cole as seguintes instruções T-SQL:

    -- Create federation root database
    CREATE DATABASE [AdventureWorks1] 
    GO
    
    
  5. Na barra de comandos do Editor SQL, clique em Executar. Verifique se o painel Mensagens mostra Command(s) completed successfully.

  6. No Pesquisador de Objetos, clique com o botão direito do mouse em Bancos de dados e em Atualizar. Você deverá ver o novo banco de dados listado ali.

Crie um esquema da federação

Federação é uma coleção de partições de banco de dados definidas por um esquema da federação. O esquema da federação define uma chave de distribuição da federação, que determina a distribuição dos dados em partições dentro da federação. Você pode criar diversas federações dentro de uma raiz da federação, embora cada federação possa ter somente um esquema. Para criar o esquema de federação, você primeiro deve se conectar ao banco de dados da raiz da federação e executar o comando CREATE FEDERATION. Neste tutorial, crie uma federação chamada CustomerFederation com um nome de distribuição cid seguido por um tipo de partição RANGE de BIGINT. Para obter mais informações sobre federações, consulte Federações no Banco de dados SQL do Azure.

Para criar um esquema da federação

  1. No SSMS, clique em qualquer lugar dentro do Editor de Consultas (o painel do meio). Você também verá os botões e a barra de ferramentas do Editor SQL ficarem habilitados.

  2. Em Bancos de Dados Disponíveis, selecione a raiz da federação que você criou no último procedimento. O nome padrão é AdventureWorks1.

  3. Demarque todos os textos no Editor de Consultas.

  4. Copie e cole as instruções a seguir no Editor de Consultas:

    -- Create federation scheme
    CREATE FEDERATION CustomerFederation(cid BIGINT RANGE)
    GO
    
    
  5. Na barra de comandos do Editor SQL, clique em Executar. E verifique se o painel Mensagens mostra "Command(s) completed successfully".

  6. No Pesquisador de Objetos, clique com o botão direito do mouse em Bancos de dados e em Atualizar. Expanda AdventureWorks1 e Federations. Você verá um novo objeto de federações chamado CustomerFederation.

Para entender melhor o esquema, você pode conectar-se a uma raiz da federação e ao membro da federação para examinar os metadados.

Para exibir os metadados da raiz da federação

  1. Demarque todos os textos no Editor de Consultas.

  2. Verifique se Bancos de dados disponíveis mostra a raiz da federação.

  3. Copie e cole as instruções a seguir no Editor de Consultas:

    -- Route connection to the federation root
    USE FEDERATION ROOT WITH RESET
    GO
    -- View the federation root metadata
    SELECT db_name() [db_name]
    SELECT * FROM sys.federations
    SELECT * FROM sys.federation_distributions
    SELECT * FROM sys.federation_member_distributions ORDER BY federation_id, range_low;
    GO
    
    
  4. Na barra de comandos do Editor SQL, clique em Executar.

    Metadados da raiz da federação

    A instrução USE para federações altera a conexão para a raiz da federação ou um dos membros da federação. A instrução USE acima roteia a conexão para a raiz da federação.

    A primeira instrução SELECT mostra o nome do banco de dados da raiz da federação. Existe uma federação e um membro da federação. O primeiro membro de federação compartilha a mesma ID que a federação. Os membros de federação criados por uma operação SPLIT terão novas IDs exclusivas de federação.

    Observe que o intervalo do membro da federação é de -9223372036854775808 (range_low) a NULL (range_high). Quando você realiza uma operação SPLIT, o intervalo será dividido em duas partes. Existe uma distribuição de federação chamada cid. Posteriormente, você corresponderá a chave da federação à distribuição da federação.

Para exibir os metadados do membro da federação

  1. Demarque todos os textos no Editor de Consultas.

  2. Verifique se Bancos de dados disponíveis mostra a raiz da federação.

  3. Copie e cole as instruções a seguir no Editor de Consultas:

    -- Route connection to the one federation member (aka shard)
    USE FEDERATION CustomerFederation(cid=100) WITH RESET, FILTERING=OFF
    GO
    -- View the federation member metadata
    SELECT db_name() [db_name]
    SELECT * FROM sys.federations
    SELECT * FROM sys.federation_distributions
    SELECT * FROM sys.federation_member_distributions
    -- Federatation ranges
    SELECT f.name, fmc.federation_id, fmc.member_id, fmc.range_low, fmc.range_high 
    FROM sys.federations f
    JOIN sys.federation_member_distributions fmc
    ON f.federation_id=fmc.federation_id
    ORDER BY fmc.federation_id, fmc.range_low;
    GO
    
    
    Observação: A cláusula FILTERING=ON a cláusula permite conectar-se a uma unidade atômica específica. A cláusula FILTERING=OFF permite a conexão com um membro da federação que contém o valor de chave especificado neste intervalo.

  4. Na barra de comandos do Editor SQL, clique em Executar.

    Metadados do membro da federação

    A instrução USE roteia a conexão para o único membro da federação. O cid=100 é um valor dentro do intervalo.

    Observe que o nome do banco de dados começa com "system_" e um número de GUID. Execute a mesma consulta depois que a operação SPLIT for concluída. Toda vez que você realiza uma operação SPLIT, dois novos membros da federação são criados para substituir o membro da federação existente. Para obter mais informações sobre a operação SPLIT, consulte Operações de reparticionamento da federação: SPLIT de banco de dados em ação.

Crie e popule uma tabela na federação

Até agora, você criou uma federação. A próxima etapa é criar uma tabela federada, inserir dados na tabela e realizar uma operação SPLIT. Antes de criar uma tabela federada, você deverá alterar a conexão para um membro da federação.

Para criar uma tabela na federação

  1. Demarque todos os textos no Editor de Consultas.

  2. Verifique se Bancos de dados disponíveis mostra o banco de dados raiz da federação.

  3. Copie e cole as instruções a seguir no Editor de Consultas:

    -- Route connection to the one federation member
    USE FEDERATION CustomerFederation(cid=100) WITH RESET, FILTERING=OFF
    GO
    -- Table [dbo].[Customer]
    SET ANSI_NULLS ON
    GO
    SET QUOTED_IDENTIFIER ON
    GO
    CREATE TABLE [dbo].[Customer](
    [CustomerID] [bigint] NOT NULL,
    [Title] [nvarchar](8) NULL,
    [FirstName] [nvarchar](50) NOT NULL,
    [MiddleName] [nvarchar](50) NULL,
    [LastName] [nvarchar](50) NOT NULL,
    [Suffix] [nvarchar](10) NULL,
    [CompanyName] [nvarchar](128) NULL,
    [SalesPerson] [nvarchar](256) NULL,
    [EmailAddress] [nvarchar](50) NULL,
    [Phone] [nvarchar](25) NULL,
     CONSTRAINT [PK_Customer] PRIMARY KEY CLUSTERED 
    (
    [CustomerID] ASC
    ) 
    )FEDERATED ON (cid=CustomerID)
    GO
    
    
  4. Na barra de comandos do Editor SQL, clique em Executar. E verifique se o painel Mensagens mostra Command(s) completed successfully.

Na instrução USE, o cid=100 é um valor BIGINT válido. Na instrução CREATE TABLE, a coluna CustomerID é mapeada para a chave de distribuição da federação.

Para popular a tabela

  1. Demarque todos os textos no Editor de Consultas.

  2. Verifique se Bancos de dados disponíveis mostra o banco de dados raiz da federação.

  3. Copie e cole as instruções a seguir no Editor de Consultas:

    -- Route connection to the federation member
    USE FEDERATION CustomerFederation(cid=100) WITH RESET, FILTERING=OFF
    GO
    -- Insert data
    INSERT INTO [dbo].[Customer]
               ([CustomerID]
               ,[Title]
               ,[FirstName]
               ,[MiddleName]
               ,[LastName]
               ,[Suffix]
               ,[CompanyName]
               ,[SalesPerson]
               ,[EmailAddress]
               ,[Phone])
         VALUES
    (56, 'Mr.', 'Brian', '', 'Groth', '', 'Latest Accessories Sales', 'adventure-works\david8', 'brian5@adventure-works.com', '461-555-0118'),
    (57, 'Ms.', 'Judy', 'R.', 'Lundahl', '', 'Leading Sales & Repair', 'adventure-works\jillian0', 'judy1@adventure-works.com', '260-555-0130'),
    (58, 'Mr.', 'Peter', '', 'Kurniawan', '', 'Largest Bike Store', 'adventure-works\jillian0', 'peter4@adventure-works.com', '436-555-0160'),
    (59, 'Mr.', 'Douglas', '', 'Groncki', '', 'Locks Company', 'adventure-works\shu0', 'douglas2@adventure-works.com', '385-555-0140'),
    (60, 'Mr.', 'Sean', 'J.', 'Lunt', '', 'Main Bicycle Services', 'adventure-works\linda3', 'sean4@adventure-works.com', '183-555-0111'),
    (61, 'Mr.', 'Jeffrey', '', 'Kurtz', '', 'Many Bikes Store', 'adventure-works\shu0', 'jeffrey3@adventure-works.com', '452-555-0179'),
    (64, 'Mr.', 'Vamsi', '', 'Kuppa', '', 'Metal Clearing House', 'adventure-works\jos‚1', 'vamsi1@adventure-works.com', '290-555-0196'),
    (65, 'Ms.', 'Jane', 'P.', 'Greer', '', 'Metro Manufacturing', 'adventure-works\jos‚1', 'jane2@adventure-works.com', '737-555-0163'),
    (66, 'Mr.', 'Alexander', 'J.', 'Deborde', '', 'Neighborhood Store', 'adventure-works\garrett1', 'alexander1@adventure-works.com', '394-555-0176'),
    (70, 'Mr.', 'Deepak', '', 'Kumar', '', 'Outdoor Aerobic Systems Company', 'adventure-works\jae0', 'deepak0@adventure-works.com', '1 (11) 500 555-0122'),
    (73, 'Ms.', 'Margaret', 'T.', 'Krupka', '', 'Outdoor Sports Supply', 'adventure-works\pamela0', 'margaret1@adventure-works.com', '107-555-0132'),
    (74, 'Mr.', 'Christopher', 'M.', 'Bright', '', 'Parcel Express Delivery Service', 'adventure-works\david8', 'christopher2@adventure-works.com', '162-555-0166'),
    (75, 'Ms.', 'Aidan', '', 'Delaney', '', 'Paint Supply', 'adventure-works\jillian0', 'aidan0@adventure-works.com', '358-555-0188'),
    (76, 'Mr.', 'James', 'J.', 'Krow', '', 'Out-of-the-Way Hotels', 'adventure-works\jillian0', 'james11@adventure-works.com', '265-555-0190'),
    (77, 'Mr.', 'Michael', '', 'Brundage', '', 'Mechanical Products Ltd.', 'adventure-works\shu0', 'michael13@adventure-works.com', '128-555-0148'),
    (78, 'Mr.', 'Stefan', '', 'Delmarco', '', 'Preferred Bikes', 'adventure-works\linda3', 'stefan0@adventure-works.com', '819-555-0186'),
    (79, 'Mr.', 'Mitch', '', 'Kennedy', '', 'Reasonable Bicycle Sales', 'adventure-works\shu0', 'mitch0@adventure-works.com', '996-555-0192'),
    (82, 'Mr.', 'James', 'D.', 'Kramer', '', 'Refined Department Stores', 'adventure-works\jos‚1', 'james10@adventure-works.com', '814-555-0130'),
    (83, 'Mr.', 'Eric', 'J.', 'Brumfield', '', 'Requisite Part Supply', 'adventure-works\jos‚1', 'eric3@adventure-works.com', '644-555-0114'),
    (84, 'Ms.', 'Della', 'F.', 'Demott Jr', '', 'Rewarding Activities Company', 'adventure-works\garrett1', 'della0@adventure-works.com', '752-555-0185'),
    (88, 'Ms.', 'Pamala', 'M.', 'Kotc', '', 'Closest Bicycle Store', 'adventure-works\jae0', 'pamala0@adventure-works.com', '1 (11) 500 555-0173'),
    (91, 'Ms.', 'Joy', 'R.', 'Koski', '', 'Scooters and Bikes Store', 'adventure-works\pamela0', 'joy0@adventure-works.com', '810-555-0198'),
    (92, 'Ms.', 'Jovita', 'A.', 'Carmody', '', 'Sports Commodities', 'adventure-works\david8', 'jovita0@adventure-works.com', '646-555-0137'),
    (93, 'Mr.', 'Prashanth', '', 'Desai', '', 'Stationary Bikes and Stands', 'adventure-works\jillian0', 'prashanth0@adventure-works.com', '138-555-0156'),
    (94, 'Mr.', 'Scott', '', 'Konersmann', '', 'Specialty Sports Store', 'adventure-works\jillian0', 'scott6@adventure-works.com', '556-555-0192'),
    (96, 'Ms.', 'Jane', 'N.', 'Carmichael', '', 'Rural Department Store', 'adventure-works\shu0', 'jane0@adventure-works.com', '716-555-0167'),
    (97, 'Ms.', 'Bonnie', 'B.', 'Lepro', '', 'More Bikes!', 'adventure-works\linda3', 'bonnie2@adventure-works.com', '354-555-0130'),
    (99, 'Mr.', 'Eugene', '', 'Kogan', '', 'Mountain Bike Center', 'adventure-works\shu0', 'eugene2@adventure-works.com', '136-555-0134'),
    (100, 'Mr.', 'Kirk', 'T', 'King', '', 'Up-To-Date Sports', 'adventure-works\jos‚1', 'kirk2@adventure-works.com', '979-555-0163'),
    (101, 'Mr.', 'William', 'J.', 'Conner', '', 'Urban Sports Emporium', 'adventure-works\jos‚1', 'william1@adventure-works.com', '383-555-0111'),
    (102, 'Ms.', 'Linda', '', 'Leste', '', 'National Manufacturing', 'adventure-works\garrett1', 'linda7@adventure-works.com', '493-555-0134'),
    (106, 'Ms.', 'Andrea', 'A.', 'Thomsen', '', 'West Side Mart', 'adventure-works\jae0', 'andrea1@adventure-works.com', '1 (11) 500 555-0120'),
    (109, 'Mr.', 'Daniel', 'P.', 'Thompson', '', 'Travel Sports', 'adventure-works\pamela0', 'daniel2@adventure-works.com', '247-555-0197'),
    (110, 'Ms.', 'Kendra', 'N.', 'Thompson', '', 'Vintage Sport Boutique', 'adventure-works\david8', 'kendra0@adventure-works.com', '464-555-0188'),
    (111, 'Mr.', 'Scott', 'A.', 'Colvin', '', 'Westside Cycle Store', 'adventure-works\jillian0', 'scott1@adventure-works.com', '119-555-0144'),
    (168, 'Sr.', 'Luis', '', 'Bonifaz', '', 'Economy Bikes Company', 'adventure-works\linda3', 'luis0@adventure-works.com', '688-555-0113'),
    (169, 'Ms.', 'Brenda', '', 'Diaz', '', 'Downtown Hotel', 'adventure-works\shu0', 'brenda2@adventure-works.com', '147-555-0192'),
    (172, 'Ms.', 'Gabriele', '', 'Dickmann', '', 'Certified Sports Supply', 'adventure-works\jos‚1', 'gabriele0@adventure-works.com', '835-555-0116'),
    (173, 'Mr.', 'Rudolph', 'J.', 'Dillon', 'Sr.', 'Sundry Sporting Goods', 'adventure-works\jos‚1', 'rudolph0@adventure-works.com', '722-555-0169'),
    (174, 'Mr.', 'Michael', 'L.', 'Bohling', '', 'Toy Manufacturing Inc', 'adventure-works\garrett1', 'michael12@adventure-works.com', '838-555-0147'),
    (178, 'Mr.', 'Dick', '', 'Dievendorff', '', 'Rampart Amusement Company', 'adventure-works\jae0', 'dick1@adventure-works.com', '1 (11) 500 555-0193'),
    (180, 'Ms.', 'Nicky', 'E.', 'Chesnut', '', 'Full-Service Bike Store', 'adventure-works\michael9', 'nicky0@adventure-works.com', '264-555-0164'),
    (181, 'Mr.', 'Michael', 'J.', 'Lee', '', 'Family Entertainment Center', 'adventure-works\pamela0', 'michael18@adventure-works.com', '396-555-0139'),
    (182, 'Mr.', 'Stanley', 'A.', 'Alan', 'Jr.', 'Another Bicycle Company', 'adventure-works\david8', 'stanley0@adventure-works.com', '156-555-0126'),
    (183, 'Mr.', 'Yao-Qiang', '', 'Cheng', '', 'This Area Sporting Goods', 'adventure-works\jillian0', 'yao-qiang0@adventure-works.com', '344-555-0181'),
    (184, 'Ms.', 'Marjorie', 'M.', 'Lee', '', 'Go-cart and Bike Specialists', 'adventure-works\jillian0', 'marjorie0@adventure-works.com', '306-555-0166'),
    (185, 'Mr.', 'Sandeep', '', 'Kaliyath', '', 'Weekend Bike Tours', 'adventure-works\shu0', 'sandeep1@adventure-works.com', '495-555-0113'),
    (186, 'Mr.', 'Pei', '', 'Chow', '', 'Thrilling Bike Tours', 'adventure-works\linda3', 'pei0@adventure-works.com', '789-555-0184'),
    (187, 'Mr.', 'Frank', '', 'Campbell', '', 'Trailblazing Sports', 'adventure-works\shu0', 'frank4@adventure-works.com', '491-555-0132'),
    (190, 'Mr.', 'Mark', '', 'Lee', '', 'Racing Partners', 'adventure-works\jos‚1', 'mark5@adventure-works.com', '371-555-0112'),
    (191, 'Ms.', 'Sandra', 'T.', 'Kitt', '', 'Non-Slip Pedal Company', 'adventure-works\jos‚1', 'sandra2@adventure-works.com', '303-555-0117'),
    (192, 'Mr.', 'Hao', '', 'Chen', '', 'Nuts and Bolts Mfg.', 'adventure-works\garrett1', 'hao1@adventure-works.com', '117-555-0173'),
    (196, 'Ms.', 'Jolie', '', 'Lenehan', '', 'Exhibition Showroom', 'adventure-works\jae0', 'jolie0@adventure-works.com', '1 (11) 500 555-0126'),
    (197, 'Ms.', 'Diane', 'F.', 'Krane', '', 'Fabrikam Inc., West', 'adventure-works\michael9', 'diane4@adventure-works.com', '224-555-0126'),
    (198, 'Mr.', 'Payton', 'P.', 'Benson', '', 'Field Trip Inc', 'adventure-works\michael9', 'payton0@adventure-works.com', '528-555-0183'),
    (199, 'Mr.', 'Roger', '', 'Lengel', '', 'Authorized Bike Sales and Rental', 'adventure-works\pamela0', 'roger1@adventure-works.com', '947-555-0143'),
    (200, 'Ms.', 'Peggy', 'J.', 'Justice', '', 'Basic Bike Company', 'adventure-works\david8', 'peggy0@adventure-works.com', '170-555-0189'),
    (201, 'Ms.', 'Edna', 'J.', 'Benson', '', 'Unsurpassed Bikes', 'adventure-works\jillian0', 'edna0@adventure-works.com', '789-555-0189'),
    (202, '', 'A.', 'Francesca', 'Leonetti', '', 'Two-Seater Bikes', 'adventure-works\jillian0', 'a0@adventure-works.com', '645-555-0193'),
    (203, 'Ms.', 'Jean', '', 'Jordan', '', 'Separate Parts Corporation', 'adventure-works\shu0', 'jean3@adventure-works.com', '207-555-0129'),
    (204, 'Mr.', 'Ido', '', 'Ben-Sachar', '', 'Traction Tire Company', 'adventure-works\linda3', 'ido0@adventure-works.com', '973-555-0112'),
    (205, 'Mr.', 'Frank', '', 'Martnez', '', 'Rally Master Company Inc', 'adventure-works\shu0', 'frank5@adventure-works.com', '171-555-0147'),
    (208, 'Mr.', 'Steve', '', 'Masters', '', 'Professional Cyclists', 'adventure-works\jos‚1', 'steve2@adventure-works.com', '154-555-0115'),
    (209, 'Mr.', 'Robert', 'E.', 'Jones', '', 'Purple Bicycle Company', 'adventure-works\jos‚1', 'robert6@adventure-works.com', '595-555-0131'),
    (210, 'Mr.', 'Josh', '', 'Barnhill', '', 'Gasless Cycle Shop', 'adventure-works\garrett1', 'josh0@adventure-works.com', '584-555-0192');
    GO
    
    
  4. Na barra de comandos do Editor SQL, clique em Executar. Verifique se o painel Mensagens mostra "(65 row(s) affected)".

Para consultar os dados federados

  1. Demarque todos os textos no Editor de Consultas.

  2. Verifique se Bancos de dados disponíveis mostra o banco de dados raiz da federação.

  3. Copie e cole as instruções a seguir no Editor de Consultas:

    -- Route connection to the 1 federation member
    USE FEDERATION CustomerFederation(cid=100) WITH RESET, FILTERING=OFF
    GO
    -- Query customer table for high/low Federated Keys
    SELECT MIN(CustomerID) [CustomerID Low], MAX(CustomerID) [CustomerID High] FROM Customer
    select count(*) from Customer
    SELECT * FROM Customer order by customerid
    GO
    
    
  4. Na barra de comandos do Editor SQL, clique em Executar.

O intervalo de CustomerID varia de 56 a 210. Há 65 registros no total na tabela Customer.

Executar a operação de divisão de federação

As federações fornecem uma operação para um reparticionamento online. Usando a operação SPLIT, você pode particionar um membro da federação em diversos membros da federação. A operação SPLIT pode ser feita sem o tempo de inatividade do banco de dados. Para dividir um membro da federação, você primeiro deve se conectar ao membro da federação e usar o comando ALTER FEDERATION. Você deve especificar onde deseja dividir o membro da federação. No exemplo a seguir, cid=100 é usado.

Para dividir um membro da federação

  1. Demarque todos os textos no Editor de Consultas.

  2. Verifique se Bancos de dados disponíveis mostra o banco de dados raiz da federação.

  3. Copie e cole as instruções a seguir no Editor de Consultas:

    --Perform federations SPLIT operation
    USE FEDERATION ROOT WITH RESET
    GO
    ALTER FEDERATION CustomerFederation SPLIT AT (cid=100)
    GO
    
    
  4. Na barra de comandos do Editor SQL, clique em Executar. E verifique se o painel Mensagens mostra Command(s) completed successfully.

Para exibir os metadados da raiz da federação

  1. Demarque todos os textos no Editor de Consultas.

  2. Verifique se Bancos de dados disponíveis mostra o banco de dados raiz da federação.

  3. Copie e cole as instruções a seguir no Editor de Consultas:

    -- Route connection to the federation root database
    USE FEDERATION ROOT WITH RESET
    GO
    SELECT * FROM sys.federation_member_distributions ORDER BY federation_id, range_low;
    GO
    
    
  4. Na barra de comandos do Editor SQL, clique em Executar. Você verá 2 registros na tabela federation_member_distributions, um para cada membro da federação.

Para exibir metadados do membro da federação

  1. Demarque todos os textos no Editor de Consultas.

  2. Verifique se Bancos de dados disponíveis mostra o banco de dados raiz da federação.

  3. Copie e cole as instruções a seguir no Editor de Consultas:

    -- Route connection to the first federation member
    USE FEDERATION CustomerFederation(cid=0) WITH RESET, FILTERING=OFF
    GO
    SELECT db_name() [db_name]
    SELECT * FROM sys.federation_member_distributions
    -- Query customer table for high/low Federated Keys
    SELECT MIN(CustomerID) [CustomerID Low], MAX(CustomerID) [CustomerID High] FROM Customer
    GO
    
    
  4. Na barra de comandos do Editor SQL, clique em Executar. O nome do banco de dados é diferente do banco de dados antes da operação SPLIT. A CustomerID baixa é 56 e a CustomerID alta é 99, se você usou cid=0.

Para exibir os outros metadados do membro da federação

  1. Demarque todos os textos no Editor de Consultas.

  2. Verifique se Bancos de dados disponíveis mostra o banco de dados raiz da federação.

  3. Copie e cole as instruções a seguir no Editor de Consultas:

    -- Route connection to the second federation member
    USE FEDERATION CustomerFederation(cid=100) WITH RESET, FILTERING=OFF
    GO
    SELECT db_name() [db_name]
    SELECT * FROM sys.federation_member_distributions
    -- Query customer table for high/low Federated Keys
    SELECT MIN(CustomerID) [CustomerID Low], MAX(CustomerID) [CustomerID High] FROM Customer
    GO
    
    
  4. Na barra de comandos do Editor SQL, clique em Executar. Verifique se o painel Mensagens mostra Query executed successfully. A CustomerID baixa é 100 e a CustomerID alta é 210.

Ignore a federação

Para ignorar uma federação e seus bancos de dados associados, use a instrução DROP FEDERATION.

Para ignorar a federação

  1. Demarque todos os textos no Editor de Consultas.

  2. Verifique se Bancos de dados disponíveis mostra o banco de dados raiz da federação.

  3. Na janela Editor de Consultas, copie e cole as seguintes instruções T-SQL:

    USE FEDERATION ROOT WITH RESET
    GO
    DROP FEDERATION CustomerFederation
    GO
    
    
  4. Na barra de comandos do Editor SQL, clique em Executar.

  5. No Pesquisador de Objetos, clique com o botão direito do mouse em Federações e em Atualizar. Os membros removidos da federação são exibidos.

Consulte também

Contribuições da comunidade

ADICIONAR
Mostrar:
© 2014 Microsoft