Alura > Cursos de Data Science > Cursos de SQL e Banco de Dados > Conteúdos de SQL e Banco de Dados > Primeiras aulas do curso Administração do MySQL: segurança e otimização do banco

Administração do MySQL: segurança e otimização do banco

O papel do DBA - Introdução

O meu nome é Victorino Vila e nós vamos iniciar mais um curso, dentro da carreira de MySQL e esse curso vai se dedicar a parte de administração de um ambiente de SQL, a gente vem respeitando a mesma linha didática de um curso parecido que temos aqui na Alura, de Microsoft SQL server.

Então aqui no curso de MySQL, a gente viu a introdução ao SQL, vimos a parte de consultas, a parte de manipulação de dados, vimos um curso específico sobre a parte de programação e aí, terminamos agora com esse curso que vamos iniciar, que é da parte de administração de um ambiente MySQL.

Falar de administração do MySQL, consiste em falar de muito assunto, muita coisa, claro que esse treinamento não vai percorrer de forma detalhada tudo o que o profissional que administra um ambiente de banco de dados precisa saber, mas a gente vai dar algumas pinceladas das coisas mais importantes.

E aí, claro, se você quiser se aprofundar nesse assunto, tem vasta documentação na internet para serem consultada. E aí, a gente vai começar basicamente fazendo de novo uma revisão, de como é que se instala o MySQL e entendendo também qual é a função do DBA, que é o profissional que administra o banco de dados.

Cabe ao DBA, entender bem a administração do ambiente e poder ajudar os analistas e os usuários nas necessidades de... que eles possam ter em relação aos bancos de dados. O DBA também, ele vai precisar saber como é que se faz uma conexão entre um cliente e um MySQL, falaremos sobre isso nesse treinamento.

E é claro, a gente vai começar o treinamento também, mostrando como a gente recupera uma base de dados, que nós vamos usar como exemplo. Aí, nós vamos começar o nosso treinamento em si e a gente vai falar um pouco sobre (tuning) de hardware.

Quais são os fatores básicos que um hardware precisa para poder suportar uma boa instalação do MySQL e aí, a gente vai pular para uma coisa chamada: variáveis de ambiente do MySQL, que são variáveis que ajudam o administrador a fazer o seu tuning dentro do branco de dados.

Existem diversas variáveis, algumas delas, por exemplo, tem a ver com limitações que o ambiente vai ter, para tratar os dados dos bancos de dados. Vamos entender também o que é um mecanismo de armazenado do MySQL, falar um pouquinho sobre os principais mecanismos de armazenamento e dar ênfase a dois deles, que é o MyISAM e o InnoDB.

E aí, vamos pular para uma assunto que é importante em qualquer base de dados, é o backup, dados estão sujeitos a perdas e perder dados, significa dentro de uma empresa, custo. Logo, nós vamos falar sobre as formas de se efetuar backups dentro do MySQL.

Nós vamos dar ênfase a dois tipos, uns backups que nós chamamos de frios e quentes, a gente faz a cópia de todo o ambiente e o outro, através de um aplicativo do MySQL, onde a gente consegue extrair e salvar aquilo que a gente quer salvar.

E aí, depois, claro, vamos aprender a recuperar esses ambientes. Aí, nós vamos pular para uma coisa muito importante, uma tarefa muito importante do DBA, que é ajudar os analistas de negócio, os analistas de sistema, que estão projetando o sistema e os bancos de dados a fazer, que é performance nas consultas.

A gente vai entender o que é um plano de execução, como ele funciona, que tipo de informação um plano de execução dá e aí, em paralelo, a gente também vai falar sobre índices, como é que são os índices dentro de um ambiente MySQL, como eles se organizam.

E aí, depois, nós vamos juntar essas duas coisas e ver como é que índice pode melhorar o plano de execução de uma consulta à base de dados. E aí, depois, finalmente, nós vamos falar de usuários. Uma outra função do administrador do ambiente de MySQL é criar usuários e dar privilégios a esses usuários.

Nós vamos criar alguns usuários do tipo leitura, usuários normais, usuários que fazem somente backup, usuários administradores e veremos também como é que a gente dá privilégios aos usuários, para apenas olharem um banco ou até mesmo, apenas olharem uma tabela de dados.

E finalmente, terminaremos vendo como é que eu limpo privilégios previamente cadastrados aos usuários, dentro do ambiente MySQL. Como eu falei no início desse vídeo, esse é o assunto que nós vamos pincelar sobre administração do MySQL, mas existem muitos outros que a gente, infelizmente pelo tempo, não vai conseguir entrar em detalhe, a fundo.

Mas eu acho que será um excelente pontapé inicia e um ótimo complemento a carreira de MySQL, que a gente vem percorrendo desde o primeiro curso da introdução ao SQL, com o MySQL, até esse. Então, gente obrigado pela preferência, espero que vocês gostem desse treinamento.

Vamos seguir frente, um forte abraço. Tchau, tchau.

O papel do DBA - Instalando o MySQL

A gente agora vai ter que recuperar uma base, que nós vamos usar como exemplo para esse treinamento, se você já vem fazendo os cursos da carreira de MySQL na sequência e está com o ambiente que você usou nos treinamentos anteriores, essa base de dados que nós vamos usar como exemplo, ela já existe.

Se você teve que instalar o MySQL agora, então faz o seguinte, continue assistindo esse vídeo e aí, eu vou mostrar agora aqui um outro vídeo, onde a gente faz a recuperação desse ambiente, então não saia daí. Nesse momento todo mundo deve estar com o MySQL e o MySQL Workbench instalados na máquina.

Vamos agora recuperar a base. Então, eu vou aqui executar o MySQL Workbench e aí, vou acessar essa base aqui... essa base não, essa conexão que foi configurada, quando a gente instalou o nosso MySQL, vou clicar. E claro, aqui eu não tenho nenhum banco a disposição.

Se você está usando o MySQL do curso introdução ao MySQL com o MySQL, você deve estar olhando aqui também a base que nós usamos nesse treinamento anterior, mas não importa, nós vamos criar uma base nova.

E para criar essa base nova, eu dou o botão direito do mouse sobre essa área, clico em Create Schema e vou criar aqui uma base chamada sucos_vendas, esse é o nome da base de dados que nós vamos trabalhar nesse treinamento. Vou clicar em apply, finish.

Temos então aqui a nossa base suco_vendas criada, porém vazia, sem tabela e sem dado, nós vamos recuperar isso através de um link, que nós temos associado aqui a esse treinamento, clique nele, baixe vamos... Você vai ver um arquivo Zip com esse nome aqui: RecuperacaoAmbiente.zip.

Descompacte ele, você deve ver uma lista de arquivos, como mostrado aqui em cima, mas aqui a nossa mais importante é esse subdiretório aqui: DumpSucosVendas. Vou voltar aqui ao Workbench, eu vou clicar nesse link aqui, primeiro na aba administração e depois eu vou clicar em Data Import/Restore.

Cliquei, eu tenho aqui a minha caixa de diálogo, onde eu vou restaurar um arquivo que foi anteriormente feito um Backup, no caso é aquele diretório que eu especifiquei para vocês, o diretório DumpSucosVendas, que possui a base de dados que nós vamos recuperar.

E aqui, nessa caixa de diálogos, eu vou selecionar aquele subdiretório, então vou clicar aqui, no meu caso, ele está no driver... o treinamento que eu estou dando é esse aqui, está aqui, selecionei o diretório, que foi o diretório que veio... que apareceu na descompactação do arquivo e eu tenho ali aqui, já posso recuperar.

Só que tem um probleminha aqui, note que a resolução que eu estou usando aqui na minha máquina, ela é muito baixa, porque justamente para grava os vídeos e ficar umas letras um pouco maiores, para que vocês possam assistir o vídeo de maneira mais clara.

Só que eu não consigo aqui, não tem um scroll, eu não consigo clicar no botão de inicializar recuperação. Então, eu vou fazer uma coisa aqui, eu vou mudar o meu computador, a configuração para 1.600 x 1.024, por exemplo, deixa eu mudar aqui, eu vou colocar 1.400 x 900.

Ok e aí, eu agora consigo visualizar esse botão aqui , que é o botão Start Import, eu vou clicar nele e aí, a recuperação da base, ela começa a ser executada. Pronto, terminei a recuperação, deixa eu voltar de novo a minha resolução, para resolução original.

Ok, então eu volto aqui para o Workbench, então a minha importação funcionou, só para a gente ter a certeza, eu vou clicar nessa pasta Query 1, se vocês não tiverem essa pasta, vocês cliquem aqui nesse botão.

E aí, eu vou selecionar aqui uma consultas, select “*” from, vamos pegar aqui, por exemplo, a tabela de itens_notas_fiscais, que é a tabela maior. Claro, eu tenho que selecionar o banco, dando duplo clique sobre o banco sucos_venda, para ficar negrito esse banco.

Tudo isso, eu ainda vou explicar melhor quando a gente começar a fazer as consultas, talvez... eu vou precisar também explicar um pouquinho para vocês, como é que a gente trabalhar no Wordbench. Eu aqui, só estou testando para saber se a minha recuperação da base funcionou.

Está aqui, eu tenho informações, então essa recuperação funcionou, então nesse momento eu já estou pronto para iniciar o treinamento. Essa parte do vídeo, é apenas, caso você não tenha conseguido recuperar a sua base de dados através do diretório Dump, da recuperação deste diretório aqui.

Por algum motivo você não conseguiu, deu erro. Então, faça o seguinte, vou mostrar uma segunda maneira de recuperar a base, ela é um pouquinho mais trabalhosa, mas também tem mais probabilidade de funcionar. Eu vou então aqui apagar a base sucos_vendas.

Atenção, só façam isso se o primeiro método não funcionou, se o primeiro método funcionou, vocês podem até parar de assistir o vídeo nesse ponto, então eu vou clicar aqui em Drop Schema.

Então não tenho mais a minha base e eu vou cria-la novamente, clico em Create Schema, selecionou a base, o nome sucos_vendas, dou o apply e dou o finish, duplo clique sobre ela, tenho a base de novo aqui criada, mas vazia. Aí, eu vou fazer o seguinte, eu vou clicar em File, Run SQL Script, vou escolher essa opção aqui.

E eu tenho todos esses arquivos aqui com extenção “.sql”, que eu vou usar para importar a base de uma outra maneira, eu vou começar com esse aqui, primeiro arquivo, criação_esquema.sql, eu vou clicar nele, vou clicar em abrir e vou ver um script recuperação e aí, eu vou escolher aqui a base sucos_vendas.

E vou escolher aqui em Default Character Set, que é essa opção utf8, que está aqui em baixo, do Run e aqui, ele vai terminar. Vou agora de novo e vou fazer agora, para esse arquivo aqui, Carga_Tabelas_Cadastrais.sql. Seleciono a base, seleciono o utf8 e run.

Nesse momento, eu consegui recuperar as tabelas e os dados cadastrais, agora eu vou recuperar os dados referentes às notas fiscais. Clico de novo em Run SQL Script e vou escolher agora esse arquivo aqui, Carga_Notas_01. Seleciono e dou run.

Esse script vai demorar um pouquinho mais, porque eu agora estou carregando dados com um volume substancial de linhas, então eu vou fazer o seguinte, eu vou parar o vídeo num instante, quando essa barra terminar, eu volto. Ok, se eu tiver essa msg aqui, é porque tudo correu bem.

Vou agora recuperar, só que agora é o arquivo 2, Carga_Notas_02, seleciono aqui a base, utf8 e Run. Ele está processando o arquivo 02, vocês vão fazer para o arquivo Carga_Notas_02 e depois para o Carga_Notas_03. E aí, toda a parte do cabeçalho da nota fiscal, vai estar importada no banco.

Então eu vou parar aqui o vídeo e eu vou voltar quando eu terminar o Carga_Notas_03, vocês façam esses passos e aí, me encontrem daqui a pouco. Até já. Pronto, nesse momento eu importei os arquivos Carga_Notas_01, 02 e 03. Eu agora, vou importar o Carga_Intens_Notas, de 01 a 07.

Então, eu vou começar aqui com o 01, seleciono a suco_vendas, seleciono aqui o utf8, dou o Run, então eu vou começar a importar o Carga_Itens_Notas_01. Então, façam isso com o 01, 02, 03, até o 07 e aí, quando vocês terminarem o último arquivo, a base vai estar recuperada.

Pronto, importei aqui o Carga_Itens_Notas_07, então, nesse momento, eu também tenho a minha base recuperada. Então, eu mostrei para vocês nesse vídeo, duas maneiras de recuperar a base, vocês devem tentar a primeira, se não funcionar, tentem a segunda.

Agora, estamos preparados para continuar o nosso treinamento. Um abraço, até a próxima.

O papel do DBA - Recuperando a base de dados

O arquivo RecuperacaoAmbiente.zip pode ser baixado aqui. Nas versões mais recentes do MySQL, a collation utf8mb4_0900_ai_ci foi descontinuada. Então, caso você tenha problemas em utilizar a versão do arquivo disponibilizada acima, você pode fazer aqui o download desta outra versão.

A gente agora vai ter que recuperar uma base, que nós vamos usar como exemplo para esse treinamento, se você já vem fazendo os cursos da carreira de MySQL na sequência e está com o ambiente que você usou nos treinamentos anteriores, essa base de dados que nós vamos usar como exemplo, ela já existe.

Se você teve que instalar o MySQL agora, então faz o seguinte, continue assistindo esse vídeo e aí, eu vou mostrar agora aqui um outro vídeo, onde a gente faz a recuperação desse ambiente, então não saia daí. Nesse momento todo mundo deve estar com o MySQL e o MySQL Workbench instalados na máquina.

Vamos agora recuperar a base. Então, eu vou aqui executar o MySQL Workbench e aí, vou acessar essa base aqui... essa base não, essa conexão que foi configurada, quando a gente instalou o nosso MySQL, vou clicar. E claro, aqui eu não tenho nenhum banco a disposição.

Se você está usando o MySQL do curso introdução ao MySQL com o MySQL, você deve estar olhando aqui também a base que nós usamos nesse treinamento anterior, mas não importa, nós vamos criar uma base nova.

E para criar essa base nova, eu dou o botão direito do mouse sobre essa área, clico em Create Schema e vou criar aqui uma base chamada sucos_vendas, esse é o nome da base de dados que nós vamos trabalhar nesse treinamento. Vou clicar em apply, finish.

Temos então aqui a nossa base suco_vendas criada, porém vazia, sem tabela e sem dado, nós vamos recuperar isso através de um link, que nós temos associado aqui a esse treinamento, clique nele, baixe vamos... Você vai ver um arquivo Zip com esse nome aqui: RecuperacaoAmbiente.zip.

Descompacte ele, você deve ver uma lista de arquivos, como mostrado aqui em cima, mas aqui a nossa mais importante é esse subdiretório aqui: DumpSucosVendas. Vou voltar aqui ao Workbench, eu vou clicar nesse link aqui, primeiro na aba administração e depois eu vou clicar em Data Import/Restore.

Cliquei, eu tenho aqui a minha caixa de diálogo, onde eu vou restaurar um arquivo que foi anteriormente feito um Backup, no caso é aquele diretório que eu especifiquei para vocês, o diretório DumpSucosVendas, que possui a base de dados que nós vamos recuperar.

E aqui, nessa caixa de diálogos, eu vou selecionar aquele subdiretório, então vou clicar aqui, no meu caso, ele está no driver... o treinamento que eu estou dando é esse aqui, está aqui, selecionei o diretório, que foi o diretório que veio... que apareceu na descompactação do arquivo e eu tenho ali aqui, já posso recuperar.

Só que tem um probleminha aqui, note que a resolução que eu estou usando aqui na minha máquina, ela é muito baixa, porque justamente para grava os vídeos e ficar umas letras um pouco maiores, para que vocês possam assistir o vídeo de maneira mais clara.

Só que eu não consigo aqui, não tem um scroll, eu não consigo clicar no botão de inicializar recuperação. Então, eu vou fazer uma coisa aqui, eu vou mudar o meu computador, a configuração para 1.600 x 1.024, por exemplo, deixa eu mudar aqui, eu vou colocar 1.400 x 900.

Ok e aí, eu agora consigo visualizar esse botão aqui , que é o botão Start Import, eu vou clicar nele e aí, a recuperação da base, ela começa a ser executada. Pronto, terminei a recuperação, deixa eu voltar de novo a minha resolução, para resolução original.

Ok, então eu volto aqui para o Workbench, então a minha importação funcionou, só para a gente ter a certeza, eu vou clicar nessa pasta Query 1, se vocês não tiverem essa pasta, vocês cliquem aqui nesse botão.

E aí, eu vou selecionar aqui uma consultas, select “*” from, vamos pegar aqui, por exemplo, a tabela de itens_notas_fiscais, que é a tabela maior. Claro, eu tenho que selecionar o banco, dando duplo clique sobre o banco sucos_venda, para ficar negrito esse banco.

Tudo isso, eu ainda vou explicar melhor quando a gente começar a fazer as consultas, talvez... eu vou precisar também explicar um pouquinho para vocês, como é que a gente trabalhar no Wordbench. Eu aqui, só estou testando para saber se a minha recuperação da base funcionou.

Está aqui, eu tenho informações, então essa recuperação funcionou, então nesse momento eu já estou pronto para iniciar o treinamento. Essa parte do vídeo, é apenas, caso você não tenha conseguido recuperar a sua base de dados através do diretório Dump, da recuperação deste diretório aqui.

Por algum motivo você não conseguiu, deu erro. Então, faça o seguinte, vou mostrar uma segunda maneira de recuperar a base, ela é um pouquinho mais trabalhosa, mas também tem mais probabilidade de funcionar. Eu vou então aqui apagar a base sucos_vendas.

Atenção, só façam isso se o primeiro método não funcionou, se o primeiro método funcionou, vocês podem até parar de assistir o vídeo nesse ponto, então eu vou clicar aqui em Drop Schema.

Então não tenho mais a minha base e eu vou cria-la novamente, clico em Create Schema, selecionou a base, o nome sucos_vendas, dou o apply e dou o finish, duplo clique sobre ela, tenho a base de novo aqui criada, mas vazia. Aí, eu vou fazer o seguinte, eu vou clicar em File, Run SQL Script, vou escolher essa opção aqui.

E eu tenho todos esses arquivos aqui com extensão “.sql”, que eu vou usar para importar a base de uma outra maneira, eu vou começar com esse aqui, primeiro arquivo, criação_esquema.sql, eu vou clicar nele, vou clicar em abrir e vou ver um script recuperação e aí, eu vou escolher aqui a base sucos_vendas.

E vou escolher aqui em Default Character Set, que é essa opção utf8, que está aqui em baixo, do Run e aqui, ele vai terminar. Vou agora de novo e vou fazer agora, para esse arquivo aqui, Carga_Tabelas_Cadastrais.sql. Seleciono a base, seleciono o utf8 e run.

Nesse momento, eu consegui recuperar as tabelas e os dados cadastrais, agora eu vou recuperar os dados referentes às notas fiscais. Clico de novo em Run SQL Script e vou escolher agora esse arquivo aqui, Carga_Notas_01. Seleciono e dou run.

Esse script vai demorar um pouquinho mais, porque eu agora estou carregando dados com um volume substancial de linhas, então eu vou fazer o seguinte, eu vou parar o vídeo num instante, quando essa barra terminar, eu volto. Ok, se eu tiver essa msg aqui, é porque tudo correu bem.

Vou agora recuperar, só que agora é o arquivo 2, Carga_Notas_02, seleciono aqui a base, utf8 e Run. Ele está processando o arquivo 02, vocês vão fazer para o arquivo Carga_Notas_02 e depois para o Carga_Notas_03. E aí, toda a parte do cabeçalho da nota fiscal, vai estar importada no banco.

Então eu vou parar aqui o vídeo e eu vou voltar quando eu terminar o Carga_Notas_03, vocês façam esses passos e aí, me encontrem daqui a pouco. Até já. Pronto, nesse momento eu importei os arquivos Carga_Notas_01, 02 e 03. Eu agora, vou importar o Carga_Intens_Notas, de 01 a 07.

Então, eu vou começar aqui com o 01, seleciono a suco_vendas, seleciono aqui o utf8, dou o Run, então eu vou começar a importar o Carga_Itens_Notas_01. Então, façam isso com o 01, 02, 03, até o 07 e aí, quando vocês terminarem o último arquivo, a base vai estar recuperada.

Pronto, importei aqui o Carga_Itens_Notas_07, então, nesse momento, eu também tenho a minha base recuperada. Então, eu mostrei para vocês nesse vídeo, duas maneiras de recuperar a base, vocês devem tentar a primeira, se não funcionar, tentem a segunda.

Agora, estamos preparados para continuar o nosso treinamento. Um abraço, até a próxima.

Sobre o curso Administração do MySQL: segurança e otimização do banco

O curso Administração do MySQL: segurança e otimização do banco possui 316 minutos de vídeos, em um total de 78 atividades. Gostou? Conheça nossos outros cursos de SQL e Banco de Dados em Data Science, ou leia nossos artigos de Data Science.

Matricule-se e comece a estudar com a gente hoje! Conheça outros tópicos abordados durante o curso:

Aprenda SQL e Banco de Dados acessando integralmente esse e outros cursos, comece hoje!

Conheça os Planos para Empresas