segunda-feira, 6 de maio de 2013

MySQL perguntas da entrevista

Original Post: http://anothermysqldba.blogspot.com/2013/05/mysql-interview-questions.html




Um bom teste tomador não faz um bom DBA.
Um entrevistador deve perguntar sobre os interesses da DBA e materiais de leitura.
Será que eles sabem Planet.mysql.com ? Será que eles sabem e ler os autores ativos no blog?
Se eles são, então, eles devem aprender e tornar-se consciente de outras situações que possam vir a calhar um dia. Não apenas focada em seu próprio ambiente.


Isso faz parte de um post de blog multi-parte.

MySQL perguntas da entrevista

Antes mesmo de começar a fazer perguntas prestar atenção em como você, assim como o candidato pronuncia MySQL.
A razão que eu trago este acima é que vai mostrar a dedicação e experiência com MySQL. É permitida a pronunciá-lo de diferentes maneiras, mas é é pronunciado "Meu Ess Que Ell" , então, mostra que eles sabem a história.


Pergunta 1:
O que ACID significa?

Resposta deve incluir alguns dos seguintes:

A: atomicidade.
  • Definição Autocommit.
  • COMMIT.
  • ROLLBACK.

C: consistência.
  • Buffer de dupla InnoDB.
  • Recuperação de falhas o InnoDB.

I :: isolamento.
  • Definição Autocommit.
  • SET declaração ISOLAMENTO LEVEL.
  • InnoDB bloqueio.

D: durabilidade.
  • Buffer de dupla InnoDB, ligado e desligado pelo innodb_doublewrite
  • Innodb_flush_log_at_trx_commit opção de configuração.
  • Sync_binlog opção de configuração.
  • Innodb_file_per_table opção de configuração.
  • Escrever buffer em um dispositivo de armazenamento, como uma unidade de disco, SSD, ou array RAID.
Pergunta 2:
O que você pode me dizer sobre a Arquitetura MySQL ?

Resposta deve fazer referência a alguns dos seguintes:  
O que você pode me dizer MySQL e Disk I / O?

Deixá-los explicar suas preferências nível de RAID e por quê.
Leitura adicional para você com isso pode ser encontrado aqui .


Pergunta 4:
Quais são as etapas envolvidas em assumir um servidor MySQL quando você não tem credenciais?
Resposta deve ser semelhante a alguns dos seguintes:  
  • parar o serviço: # / etc / init.d / mysql parar
  • Reiniciar com salto grande: # mysqld_safe ... - Skip-grant-tables &
    • / Usr / sbin / mysqld - basedir = / usr - datadir = / var / lib / mysql - plugin-dir = / usr/lib64/mysql/plugin - user = mysql - error-log = / var / log / mysqld.log - pid-file = / var / lib / mysql / kdlarson-pc.pid
  • Conecte-se como root:
    • # Mysql-u root
  • Para configurar uma nova senha:
    • use mysql;
    • mysql> update user set password = PASSWORD ("NEW-ROOT-SENHA") onde User = 'root';
    • mysql> privilégios de descarga;
    • mysql> quit

Pergunta 5:



Como você pode definir MySQL índices de pessoas que não sabem o que são?  

Deixá-los explicar a sua definição de um índice. A questão não é ser excessivamente técnico, mas para explicar o ponto ea razão para eles.

Um exemplo comum para o índice de pensar em um livro de telefone ou de pensar em um cartão de índice na biblioteca.
Eles são usados ​​para encontrar algo rapidamente e logicamente.Se um livro de telefone tinha todos os listados por nome em vez do sobrenome, seria mais difícil de encontrar e fazer atualizações.

As pessoas costumavam usar o catálogo da biblioteca para encontrar livros na biblioteca.Este foi útil porque as informações armazenadas em cartões de índice com informações de localização por isso foi fácil para a localização da informação relacionada.


Acompanhamento pergunta:
É melhor ter um monte de índices entre os diferentes tipos de dados?

Resposta pode incluir alguns dos seguintes:  

Mais índices significa mais trabalho, mas isso também significa que os índices mais significa mais maneiras de olhar os dados rapidamente. A DBA precisa determinar a quantidade necessária de índices de acordo com as necessidades da aplicação e dados relacionados.

Pergunta 6:
O que é uma consulta MySQL 
  e que faz um bom consulta?

Permita-lhes explicar o que é uma consulta e como eles preferem escrever uma consulta.
Poderia incluir alguns dos seguintes:
  • Consultas SQL são como pequenos programas em si e por si.
  • Eles pedem que o servidor de banco de dados para coletar seleções de registros, cruzar tabular-los com outros conjuntos de registros, em seguida, classificá-los e cortar e cortar-los.
  • Tudo isto requer MySQL para construir tabelas temporárias, execute os tipos de recursos intensivos e, em seguida, organizar a saída em pedaços agradáveis ​​do tamanho da mordida.

Pergunta 7:
Que mecanismos de armazenamento que eles usaram?

Eles são susceptíveis de fazer referência a algumas das seguintes características. Estes são todos os links para o site mysql.com assim você pode ler mais sobre eles,


Os pontos de bónus se pode falar sobre estes, bem

Pergunta 8:
O que é tem sido o problema mais difícil que você já teve que resolver com o MySQL?

Permita-lhes explicar e entrar em detalhes sobre o problema, bem como a solução.
  • Por que era um problema?
  • Como você corrigi-lo?
  • Foi uma correção de emergência depende da receita?
  • Será que o problema reaparecer ou ficar fixo?
Pergunta 9:

O que eles preferem MySQL, Percona ou MariaDB?

Permita-lhes para conversar e explicar o que eles gostam e por quê. Isto irá permitir que você veja o que eles prezam como valores. Alguns podem preferir MariaDB, porque eles são dedicados à mensagem de código aberto, outros podem preferir Percona porque se oferece ferramentas de código aberto, enquanto outros preferem MySQL porque essa é a fonte e origem.


Pergunta 10:

Qual é a sua experiência com a replicação do MySQL?

Permita-lhes para falar sobre suas experiências diferentes e configurações replicadas.
Algumas de suas informações pode ser parecido com o seguinte ou estes poderiam ser acompanhamento perguntas.

Seguir-se perguntas:

Como você configurar master / slave:
  • despejo completo do banco de dados principal, embora seja tabelas são bloqueadas.
  • capturar o estado do mestre, arquivo de log e posição naquela época (- master-data [= #])
  • Dados de importação de nova máquina
  • CHANGE MASTER TO
  • SHOW SLAVE STATUS
  • Slave_IO_Running: Sim
  • Slave_SQL_Running: Sim
Como você configurar a replicação master / master:

Replicação mestre-master é semelhante à replicação master / slave, com exceção de um passo adicional.
  • No Slave SHOW MASTER STATUS
  • Retornar à caixa principal, e executar o CHANGE MASTER TO
  • | Auto_increment_increment | 1 |
  • | Auto_increment_offset | 1 |
Qual é o comando para definir o Mestre em um Slave:
CHANGE MASTER TO
-> MASTER_HOST = 'master_host_name'
-> MASTER_USER = 'replication_user_name'
-> MASTER_PASSWORD = 'replication_password'
-> MASTER_LOG_FILE = 'recorded_log_file_name'
-> = MASTER_LOG_POS recorded_log_position;


Sabe de uma ferramenta que ajuda com a verificação da integridade de replicação?
Pt-table-verificação de Percona é a ferramenta preventiva para usar
Ele pode construir somas de todas as suas tabelas e, em seguida, propagar essas somas através da replicação para o escravo.

Como instalar o Replication Semisynchronous
  • INSTALAR PLUGIN rpl_semi_sync_master SONAME 'semisync_master.so';
  • mestre> SET GLOBAL rpl_semi_sync_master_enabled = on;
  • escravo> SET GLOBAL rpl_semi_sync_slave_enabled = on;
  • escravo> SLAVE STOP IO_THREAD; START SLAVE IO_THREAD;
  • mestre> SHOW STATUS LIKE 'Rpl_semi_sync_master_clients';
+ ------------------------------ + ------- +
| Variable_name | Valor |
+ ------------------------------ + ------- +
| Rpl_semi_sync_master_clients | 1 |
+ ------------------------------ + ------- +

Como você pode impedir a replicação em todos os servidores slave no mesmo ponto no tempo?

Isso vai mostrar se eles usam ferramentas ou métodos de hackers.
Normalmente, a replicação termina quando ocorre um erro no slave, assim que se forçar um erro que é replicado que iria parar todos os escravos no mesmo ponto no tempo, um "old school" método para parando os escravos.



Pergunta 11:
O que mais eles se consideram, um administrador ou um desenvolvedor?

Permita-lhes para falar sobre suas experiências e como isso moldou sua carreira.
Historicamente MySQL DBA são criados a partir de sua experiência de trabalho. Alguns estão focados na administração do sistema, enquanto outros são desenvolvedores web, às vezes eles são todos os itens acima. De qualquer forma eles têm agora um foco em banco de dados MySQL e que você pode ser capaz de usar a experiência a seu favor. 



Pergunta 12:
Quais são as principais diferenças entre o MySQL 5.1 e 5.5?
  • InnoDB se torna motor de armazenamento padrão
  • Semi-Synchronous Replicatio
  • Melhor Desempenho de recuperação
  • InnoDB Stats no esquema de Desempenho
  • Várias instâncias do conjunto de buffers
  • Mais opções de particionamento
  Se você não sabe as respostas a estas características, então rever mais aqui .

 
Pergunta 13:
Quais são as principais diferenças entre MyISAM e InnoDB?
  InnoDB segue o ACID modelo, com transações apresentando commit , rollback , e de recuperação de acidente de capacidades para proteger os dados do usuário -. manual