Simplifique a implantação de schemas de tabelas para aplicar especificações de design corporativo, manter a consistência do schema em todos os ambientes de banco de dados e aumentar a taxa de sucesso das liberações em produção. Este tópico utiliza como exemplo um fluxo de trabalho personalizado de três nós: Desenvolvimento (Dev), Teste e Produção.
Informações básicas
|
Benefício |
Descrição |
|
Aumenta a taxa de sucesso das implantações em produção |
Antes da implantação de um novo schema de tabela no ambiente de produção, o sistema o valida em cada nó do processo de P&D. Essa prática impede que scripts não verificados causem falhas na implantação e garante alta taxa de sucesso nas liberações para produção. |
|
Garante a consistência do schema entre ambientes |
O sistema aplica alterações de schema em cada ambiente de banco de dados conforme o processo de P&D. Isso ajuda a evitar atrasos no projeto causados por falhas em alterações ou interrupções de teste em ambientes específicos. |
|
Aplica padrões de design de schema |
As especificações de design de schema abrangem quase 40 padrões para operações como criação de tabelas e modificação de campos e índices. Esses padrões ajudam a prevenir falhas em produção decorrentes de implantações não conformes e reduzem o esforço manual das equipes de operações, apoiando iterações rápidas. Para mais informações, consulte Especificações de design de schema. |
Visão geral da solução
Personalize o processo de P&D (opcional): O processo padrão de P&D é Desenvolvimento > Produção. Personalize o processo para atender aos requisitos do seu negócio.
Defina uma regra de segurança para uma instância de banco de dados (opcional): Associe o processo de P&D personalizado a uma instância de banco de dados usando uma regra de segurança.
Projete um schema de banco de dados: Envie um ticket de design de schema para garantir a consistência do schema em vários bancos de dados e o sucesso da implantação no ambiente de produção.
Pré-requisitos
-
Crie três instâncias de banco de dados ApsaraDB RDS for MySQL e, em seguida, crie uma conta e um banco de dados em cada instância. Para mais informações, consulte Criar rapidamente uma instância ApsaraDB RDS for MySQL.
Neste exemplo, as instâncias de banco de dados são nomeadas Schema_Design-dev, Schema_Design-test e Schema_Design-product.
Os bancos de dados deste exemplo são nomeados dev_database, test_database e product_database.
-
Use uma conta Alibaba Cloud com permissões de administrador ou DBA para registrar as três instâncias de banco de dados no Data Management Service (DMS). Defina o modo de controle de todas as instâncias como Security Collaboration e configure seus tipos de ambiente de banco de dados como Development (Dev), Test e Production, respectivamente. Para mais informações, consulte Registrar um banco de dados na nuvem.
Mapeamento de instância para nó
Etapa 1: Personalizar o processo de P&D
Crie uma regra de segurança e configure o processo de design de schema. O processo de P&D inclui os nós Desenvolvimento, Teste e Produção.
Etapa 1.1: Acessar a página de regras de segurança
Faça login no console do Data Management Service (DMS) 5,0.
No canto superior esquerdo do console, clique no ícone
e escolha .
Se você estiver usando o console no modo normal, escolha na barra de navegação superior.
Etapa 1.2: (Opcional) Criar uma regra de segurança
Na página Security Rules, clique em Create Rule Set no canto superior esquerdo para adicionar um conjunto de regras. Este exemplo utiliza SD-DT.
Após criar a regra de segurança, o DMS navega para sua página de detalhes.
Na caixa de diálogo, defina Engine Type como MySQL, insira um nome e uma descrição para o conjunto de regras e clique em Submit.
Etapa 1.3: Personalizar o processo de P&D
Configure o processo de P&D na regra de segurança para definir as etapas do design de schema e as operações permitidas em cada etapa.
-
(Opcional) À direita da regra de segurança, clique em Edit para acessar a página de Details.
NotaSe você acabou de criar a regra de segurança, pule esta etapa.
No painel de navegação à esquerda da página de Details, clique em Schema Design.
-
Na aba Schema Design, localize o R&D process e clique em Edit na coluna Actions.
Altere o nome do segundo nó para
Teste mude o ambiente de banco de dados paratest.-
Adicione um terceiro nó. Altere o nome do terceiro nó para
Production, mude o ambiente de banco de dados paraproducte defina este nó como uma anchor.NotaUma anchor é um ponto de congelamento para edição de um ticket. Após a implantação bem-sucedida de uma etapa com âncora, o status do ticket muda para publicado e ele se torna não editável.
Após configurar todos os nós, clique em Submit.
Clique em Submit.
Etapa 2: Atribuir a regra de segurança a uma instância
Defina o modo de controle da instância Schema_Design-dev (ambiente Dev) como Security Collaboration e selecione a regra de segurança SD-DT.
Na lista de instâncias no lado esquerdo da página inicial do console, clique com o botão direito na instância de banco de dados Schema_Design-dev.
No menu de atalho, escolha .
Etapa 3: Projetar o schema do banco de dados
Crie um schema de tabela para um banco de dados usando um projeto de design de schema de três nós (Desenvolvimento, Teste, Produção).
Etapa 3.1: Acessar a página de design de schema do DMS
Faça login no DMS 5,0.
-
Na barra de navegação superior, escolha .
NotaSe você usar o console DMS no modo simples, passe o ponteiro sobre o ícone
no canto superior esquerdo do console e escolha . No canto superior direito da página, clique em Schema Design.
Etapa 3.2: Configurar o ticket de design de schema
-
Crie um ticket de design de schema.
Na página Create Ticket, defina Base Database for Change como o banco de dados no ambiente de desenvolvimento. Configure outros parâmetros conforme necessário.
Neste exemplo, o dev_database é selecionado como banco de dados base.
Outros parâmetros no formulário incluem Project Name, Project Background, Security Rule, Associated Iteration e Stakeholders. Após preenchê-los, clique em Submit.
-
No nó Develop, crie uma tabela no banco de dados dev_database.
-
Clique em Import SQL Statements, insira o SQL para criar a tabela e clique em OK.
Clique em Save. Na caixa de diálogo Precheck Result, clique em Confirm Changes and Submit to Save.
Clique em Perform Changes to Base Database.
No painel exibido, selecione uma execution strategy, confirme se a instrução SQL está correta e clique em OK.
-
Após a aprovação manual da alteração, o sistema grava o novo schema de tabela no banco de dados dev_database.
Na aba Change Execution History, visualize o resultado da execução para a tabela teacher. O status é Success, o progresso é 100% e a estratégia de execução é Execute Now.
-
Clique em Go to Next Node.
NotaAntes de prosseguir, realize várias alterações de design e validações no banco de dados dev_database neste nó. O sistema gerará um único script
createpara implantação no próximo nó.
-
-
No nó Test, sincronize o schema de tabela criado no nó anterior com o banco de dados de teste.
Clique em Perform Changes to Target Database.
-
Selecione o banco de dados test_database, defina a execution strategy como Execute Now e clique em OK.
A área Execution Script exibe a instrução SQL para criar a tabela
teacher. A instrução define três campos (teacher_id,teacher_nameephonenumber), estabeleceteacher_idcomo chave primária, usa o conjunto de caracteres utf8 e inclui o comentário "Teacher table". -
Após a aprovação da alteração, o sistema aplica o schema ao banco de dados test_database.
ImportanteO próximo nó, Produção, é uma âncora. Ao prosseguir para um nó âncora, não é possível retornar a um nó anterior para executar operações de design ou implantação.
Clique em Go to Next Node.
-
No nó Produção (âncora), sincronize o schema de tabela com o banco de dados de produção.
Clique em Perform Changes to Target Database.
Selecione o banco de dados product_database, defina a execution strategy como Execute Now e clique em OK.
-
Após enviar a alteração, ela deve ser aprovada.
Uma vez aprovada, o sistema aplica o schema ao banco de dados product_database. Depois disso, você pode gravar dados nele.
Ao clicar em Go to Next Node, o processo de design de schema termina e o DMS fecha automaticamente o ticket.
Operações relacionadas
Para obter detalhes sobre as regras específicas no módulo de design de schema das regras de segurança, consulte Regras de segurança para o módulo de design de schema.
Para mais informações sobre casos de uso e recursos do design de schema, consulte Design de schema.
-
Também é possível usar uma API para obter o status de implantação de um ticket de design de schema: