Expirar e forçar troca de senha MySQL 5.7.4

Yeaaaappp!!! Finalmente vejo isso acontecer! Passei horas com a bunda sentada na cadeira programando triggers de logon, catálogos e mais uma serie de coisas para fazer isso! hAHAHA, na versão 5.6 o MySQL dispõe da funcionalidade de expiração de senha, porém isso é feito de forma manual, ou seja, não é possível implementar uma política de senhas no MySQL através dos recursos nativos, pois o mesmo não forçava a troca de senha automaticamente após determinado período, o próprio administrador tinha de configurar isso no catalogo ou criar alguma rotina que fizesse isso.

Agora a versão 5.7.4 conta com esse recurso conforme anunciado pelo “Dave Stokes (MySQL Community Manager at Oracle) “:

[Leia mais]
TokuDB Storage Engine

Storage Engine? Ops, mais uma opção! Isso mesmo, você tem mais uma opção para os seus problemas de armazenamento de dados! Essa storage engine já existe há alguns anos, mas a cerca de 1 ano ela está sendo disponibilizada gratuitamente, e agora está sendo distribuída junto ao Percona Server e também com o MariaDB:

https://mariadb.com/kb/en/what-is-mariadb-100/

http://www.percona.com/doc/percona-server/5.6/release-notes/Percona-Server-5.6.16-64.2-tokudb.html

Tá! Legal, mas iae!?

Iae, Iae…… Iae que essa storage engine utiliza o algoritmo de “Fractal Index”, isso faz com que as estruturas não fragmentem, ou seja, os índices não se fragmentam como acontece em outras storage engines, além disso …

[Leia mais]
MySQL ERROR 1118 (42000) MySQL 5.0 para o MySQL 5.5 ou superior

Original post: http://anothermysqldba.blogspot.com/2014/05/mysql-error-1118-42000-mysql-50-to.html 

Então, eu tive recentemente um banco de dados TBs que que eu tinha que atualizar a partir do MySQL 5.0 para o MySQL 5.5. 
Este blog vai tocar no seguinte: 

  • sql_mode
  • innodb_strict_mode
  • SLAVE IO_THREAD

Durante o processo de mysql_upgrade (que faz um mysqlcheck) eu rapidamente percebi o seguinte erro: 

ERROR 1118 (42000) at line 23: Row size too large (> 8126). Changing some columns to TEXT or BLOB or using ROW_FORMAT=DYNAMIC or ROW_FORMAT=COMPRESSED may help. In current row format, BLOB prefix of 768 bytes is stored inline.
Então eu comecei eu tinha que verificar algumas coisas …

[Leia mais]
Tutorial de instalação do MySQL 5.6 e Workbench 6.1 em distribuições Enterprise Linux

Neste tutorial mostraremos como instalar a versão mais recente do MySQL Database e MySQL Workbench nas distribuições Enterprise Linux, incluindo Fedora, CentOS, RedHat e Oracle Linux. O método utilizado é o gerenciador de pacotes YUM, baixando diretamente do repositóro oficial da Oracle.

Passo 1: Instalação do repositório YUM OraclePara obter a versão mais atualizada do MySQL Community, vamos adicionar o repositório oficial Oracle:
$ su
# mkdir /opt/mysql5.6
# cd /opt/mysql5.6
# wget https://dev.mysql.com/get/mysql-community-release-el6-5.noarch.rpm --no-check-certificate
# yum localinstall mysql-community-release-el6-5.noarch.rpm
(Um comando alternativo seria: # rpm -ivh mysql-community-release-el6-5.noarch.rpm)

Passo 2: Instalação do MySQL 5.6Depois de instalado o repositório Oracle, basta fazer:
# yum update mysql-libs
# yum install …

[Leia mais]
Índice de referência MySQL com mysqlslap

Original post: http://anothermysqldba.blogspot.com/2014/05/mysql-benchmark-with-mysqlslap.html

Então aferição diferentes consultas MySQL contra seu banco de dados é uma coisa sensata a fazer. Isso deveria ser óbvio. Enquanto otimizar consultas o melhor que podemos usar EXPLAIN (e explicar ESTENDIDO), tendo-lhes tempo para referência deles deve ser útil. 

Este é um exemplo simples de executar uma instrução mysqlslap. 

Para este exemplo eu carreguei o banco de dados do MySQL MUNDO. ( …

[Leia mais]
MySQL Divisórias timestamp - datetime

Original post: http://anothermysqldba.blogspot.com/2014/04/mysql-partitions-timestamp-datetime.html

Então, eu recentemente percebi que eu ainda não falei muito sobre partições MySQL.
Muitos bons posts sobre partições MySQL já existe e eu listei alguns abaixo.

[Leia mais]
MySQL Tech Tour em Brasília

Nosso próximo MySQL Tech Tour será no próximo dia 30 de abril em Brasíla. O evento é organizado pela Microsíntese, parceira Oracle para MySQL. Inscrições diretamente no site http://www.microsintese.com.br/en/web/guest/oraclemysqlday .

A nossa agenda continua parecida com dos outros Tech Tours e é a seguinte:
08h15  Recepção
08h30  Abertura e Boas Vindas - Microsintese
09h00  Otimizando a performance, segurança e disponibilidade com o MySQL Enterprise.
10h00  Coffee-break
10h20  Arquiteturas de referência MySQL
11h20  Oracle MySQL Premier Support
11h40  Q&A - Perguntas e Respostas
12h00 …

[Leia mais]
Heartbleed garantir & MySQL

Original post: http://anothermysqldba.blogspot.com/2014/04/heartbleed-secure-mysql.html
Bem, um monte de preocupação, e justamente por isso, tem sido feito sobre o bug heartbleed recentemente.

Eu não acho que eu deveria tentar acrescentar muito mais do que aqueles que eu considero especialistas já mencionados. Se você não analisou as seguintes mensagens que deveria.

[Leia mais]
Microsoft Open Source

É curioso e fascinante notar a diversidade de sentidos que as palavras podem transportar. O poder de mapear coisas em pensamentos faz da Linguagem a mais poderosa ferramenta computacional em uso ininterrupto pela nossa espécie nos últimos 100 mil anos. “Open”, em Inglês e sua tradução para o português, “aberto”, são referências a uma vasta gama de significados.

“Podem entrar, estamos abertos!” – diz o dono de um estabelecimento para seus clientes. Ou então: “Open your mind!” – diz o professor para um aluno relutante em desfazer-se de velhos paradigmas. Ou ainda: “Este é um assunto que foi deixado em aberto.” – diz o pesquisador que busca novas perguntas. Mesmo sendo palavras que …

[Leia mais]
Armazenamento de arquivos no MySQL em colunas BLOB

Os arquivos de imagem são o caso clássico para o uso de colunas BLOBs, mas isso raramente é uma boa idéia. A recomendação geral é NÃO armazenar arquivos no banco de dados. Isto é válido para qualquer banco de dados relacional. Há alguns casos que isso pode fazer sentido, mas são raros.

Os bancos de dados relacionais, inclusive o MySQL, são projetados para otimizar operações em objetos de tamanho relativamente pequeno. Principalmente quando os arquivos são grandes, há vários problemas decorrentes de armazená-los no Banco de Dados, envolvendo: performance, desperdício de espaço, fragmentação exagerada, dificuldade em backups/restores e maior trabalho na manutenção das tabelas.

O MySQL em particular vai sempre criar uma tabela temporária em disco quando JOINs envolverem tabelas com colunas BLOBs/TEXTs. Tabelas temporárias em disco são muito menos performáticas que tabelas temporárias em …

[Leia mais]