Mostrando entradas 1 para 6
Displaying posts with tag: Uncategorized (reset)
MySQL 5.7 – Mudanças: Instalação e Segurança

Diversas mudanças vieram com esta nova versão do SGBD, principalmente no que diz respeito da gestão de usuários e configurações de segurança que vem para solucionar alguns problemas que muitos DBA tinham antes.

Instalação

Uma das mudanças é na hora da instalação. Considerando que usuários sem privilégios administrativos no nível do sistema operacional não têm acesso a determinados arquivo de log – especificamente acesso de leitura ao arquivo de log de erros do MySQL, que inicialmente se encontra em /var/log – após fazer a instalação do servidor de bancos de dados, o arquivo .mysql_secret não será mais gerado no diretório /home do usuário efetivo da instalação do MySQL.

Após a instalação, basta iniciar o serviço. Ao abrir o arquivo de log, verá um evento parecido com este:

[Warning] A temporary password is generated for root@localhost: 4RT_l.h7*p

 Após, …

[Leia mais]
Como Funciona A Replicação No MySQL?

Send to Kindle

Veja a figura abaixo, ela representa como a replicação assíncrona funciona no MySQL:

Levando em consideração a numeração na figura, entenda como o processo funciona:

  • Item numero 1 na figura representa os clientes executando queries no master, note que o master é capaz de processar múltiplas conexões simultaneamente (que pode ser configurado pela variável max_connections). 
  • O Master executa essas queries, e salva elas em forma de log (item numero 2 na figura) para que o(s) slave(s) possa(m) replica-las e assim ter os mesmo dados que o servidor Master.
  • O slave por sua vez, trabalha com 2 threads para …
[Leia mais]
Snapshot – backup consistente no MySQL

Send to Kindle

Hoje vamos falar de como realizar um backup (snapshot) consistente do nosso banco de dados.
Primeiramente, em qual situações podemos utilizar o snapshot?

1. Digamos que seu servidor de produção vai ser partir de hoje replicado em um slave, como você faz essa carga inicial de dados no slave? qual era a posição do bin log quando o backup iniciou, durante o período de backup, sera que alguém enviou alguma query para o banco? e se o bin log esta numa posição diferente da de quando o backup iniciou?

2. Caso você queira implementar uma estrategia de backup incremental, você pode fazer uma copia integra da base uma vez na semana, e caso necessite restaurar a base, aplicar os bin logs a partir da copia.

Dito isso, vamos ao que nos interessa.
Para garantir a integridade vamos precisar trabalhar em 2 sessões, a primeira vai ser responsável por garantir a integridade (vamos dar …

[Leia mais]
Como renomear tabelas no MySQL

Para renomear uma tabela no MySQL você só precisa rodar um comando chamado RENAME TABLE, a sintaxe é bastante simples:

RENAME TABLE tb1 TO tb2;

O comando RENAME TABLE vai renomear a tabela atomicamente, o que significa que a tabela ficara travada durante o comando.
Você também pode renomear varias tabelas em um único comando:

RENAME TABLE tb1 TO tb2, tb3 TO tb4;

Para renomear uma tabela, você vai precisar dos privilégios ALTER e DROP na tabela antiga e CREATE e INSERT na tabela nova.

Você só precisa ter cuidado caso você utilize TRIGGERS, no exemplo abaixo, depois de inserir um registro na tabela Cities eu conto +1 no NOfCities na tabela Countries, o que acontece se eu renomear a tabela Contries?

mysql> SHOW TRIGGERS\G
*************************** 1. row ***************************
             Trigger: PlusOneCities
               Event: INSERT
               Table: Cities …
[Leia mais]
Usando MySQL IN AND OR

MySQL IN??? MySQL OR??? MySQL AND???
Quando eu uso um e quando eu uso outro?

Vamos usar a tabela City para este tutorial:

+-------------+----------+------+-----+---------+----------------+
| Field       | Type     | Null | Key | Default | Extra          |
+-------------+----------+------+-----+---------+----------------+
| ID          | int(11)  | NO   | PRI | NULL    | auto_increment |
| Name        | char(35) | NO   |     |         |                |
| CountryCode | char(3)  | NO   | MUL |         |                |
| District    | char(20) | NO   |     |         |                |
| Population  | int(11)  | NO   |     | 0       |                |
+-------------+----------+------+-----+---------+----------------+



Vamos ver umas regras simples para uso:

AND – agente usa AND pra adicionar uma condição que precisa ser verdadeira:

SELECT * FROM City WHERE CountryCode = 'BRA' AND Population …
[Leia mais]
Gravar sessao no MySQL

Hoje vamos ver uma opção muito útil do comando mysql que ira gravar tudo o que digitarmos no console e também o retorno recebido. Eh a opção –tee. Para usar é fácil, basta adicionar o –tee=/caminho/do/arquivo

mysql -u root -p --tee=/tmp/log.mysql

Por hoje é só pessoal.

Mostrando entradas 1 para 6