Excelência no Desenvolvimento

Salve, meus caros! Na edição anterior da Revista iMasters (#10 – maio/2014), falei sobre o App Engine. Hoje vamos pular a continuação dessa conversa para analisar algumas outras vertentes sobre desenvolvimento que não ferramentas. Desta vez, vou falar mais sobre minhas inspirações como desenvolvedor e pilares que acredito que fizeram de mim o profissional que sou hoje e que me levam dia a dia e me levarão a diversos objetivos.

O título fala sobre Excelência – mas o que afinal é isso? Em resumo, excelência é superar expectativas. Como isso se aplica à vida profissional? Há uma pequena história que talvez você já conheça, mas eu vou relatar aqui resumidamente:

“Um profissional foi reclamar com o seu chefe sobre a rápida evolução de um novo companheiro de trabalho enquanto ele, que estava há tanto tempo na …

[Leia mais]
Sistemas Operacionais homologados para o MySQL

A Oracle homologa algumas plataformas, validando o funcionamento do MySQL e assegurando que o database funcionará perfeitamente no sistema operacional em questão sem haver nenhum tipo de incompatibilidade,

A dica é sempre instalar o MySQL em sistemas operacionais homologados, pois assim o projeto já fica assegurado de não ter incompatibilidades ou outros problemas relativos a essa integração,

Existe uma tabela com essa matriz de sistemas suportados:

http://www.mysql.com/support/supportedplatforms/database.html

http://www.mysql.com/support/supportedplatforms/cluster.html

É importante lembrar que a versão do MySQL e do sistema operacional devem estar relacionadas na tabela de certificação.

Trabalhar …

[Leia mais]
Datas dinâmicas no passado e no futuro – DATE_ADD()

O MySQL conta com várias funções que auxiliam o calculo de datas. Uma função muito útil e que uso em vários scripts é a “date_add()“, essa função proporciona a facilidade de calcular tempos no futuro ou no passado veja alguns exemplos:

AGORA, AGORA -1 DIA, AGORA +1 DIA:

#
select now(),DATE_ADD(now(), INTERVAL -1 DAY),DATE_ADD(now(), INTERVAL 1 DAY) from dual;
+---------------------+----------------------------------+---------------------------------+
| now() | DATE_ADD(now(), INTERVAL -1 DAY) | DATE_ADD(now(), INTERVAL 1 DAY) |
+---------------------+----------------------------------+---------------------------------+
| 2014-10-28 18:43:20 | 2014-10-27 18:43:20 | 2014-10-29 18:43:20 |
+---------------------+----------------------------------+---------------------------------+
1 row in set (0.00 sec)

AGORA,AGORA-1HORA,AGORA+1HORA:

#
select now(),DATE_ADD(now(), …
[Leia mais]
Oracle, Percona e MariaDB Corporation – Entenda o licencimento e o posiconamento de cada empresa

O MySQL é um software livre distribuído sobre a licença GPL, intitulado pela Oracle como versão “Community”, sendo um software livre e de código aberto, existem outras versões do MySQL, que são desenvolvidas e distribuídas por outras organizações, as principais são:

Oracle: MySQL http://www.mysql.com

Percona: Percona Server http://www.percona.com

MariaDB Corporation: MariaDB https://mariadb.com/

A Oracle e a MariaDB Corporation oferecem o MySQL nas versões Community e Enterprise, ambas oferecem pacotes com diferentes recursos e com o adicional de prestação de suporte e consultoria, já a Percona oferece todos os recursos e ferramentas de manutenção e administração de forma livre, gratuita …

[Leia mais]
Como Usar o information_schema Para Calcular o Tamanho de Suas Tabelas e Databases

Uma informação legal, mais do que legal, importante, mais do que importante, necessária! Quem nunca perguntou ou foi perguntado sobre qual o tamanho de um banco de dados ou de uma tabela? Quando as tabelas são MyISAM da para olhar o tamanho dos arquivos, ou se for InnoDB e estiver com o innodb_per_tables habilitada até … Read More →

Localize Um Valor em Qualquer Tabela do MySQL

Isso não é um tarefa normal muito menos rotineira. Porém volta e meia me deparo com situações onde eu ou colegas necessitam localizar algum valor no MySQL, porém sem fazer ideia de em qual tabela se encontra.
Para isso desenvolvi essa procedure.
Ela se encarrega de procurar algum valor em todas as colunas de todas.

Use com moderação, pois dependendo da quantidade de dados que você tiver, pode afetar o desempenho do servidor.

DELIMITER $
CREATE PROCEDURE sp_searchValueInDB(_P_VALUE_ varchar(100), _P_DB_ varchar(64), _P_TYPE_ ENUM('char', 'numeric', 'date'))
BEGIN
 -- This procedure performs searches in all columns of a database.
 -- The execution performance will depend greatly on the size of your database.
 -- Contacts: Diego Hellas/diegohellas@gmail.com
 -- 2014-10-13
 -- _P_VALUE_: what is sought
 -- _P_DB_: Database name for search
 -- _P_TYPE_: Type of data that will be fetched, it helps …
[Leia mais]
DatabaseCast: Melhores episódios

Olá, pessoal! Neste episódio do DatabaseCast Mauro Pichiliani (Twitter | Blog) e Wagner Crivelini (@wcrivelini) gravam presencialmente pela primeira vez e comentam quais são seus episódios preferidos do DatabaseCast. Neste episódio você vai saber quem é fã de Rock’n’Roll, como uma água pode ser blended, dicas para reduzir seu ego e mandar um alô para possíveis anunciantes.

Não deixe de nos incentivar digitando o seu comentário no final deste artigo, mandando um e-mail para  databasecast@gmail.com, seguindo o nosso twitter …

[Leia mais]
InnoDB Create Tablespace – MySQL 5.7

Sim, isso mesmo que você está pensando! A Oracle está desenvolvendo e já deixou disponível uma versão beta para testes! Será o mesmo gerenciamento existente no Oracle, onde existe o conceito de se criar uma Tablespace, adicionar Datafiles as Tablespace e criar os  objetos dentro das Tablespaces.

Com esse conceito, será possível por exemplo, criar várias tabelas em uma Tablespace com compressão, e assim manter todo o gerenciamento de compressão em uma única área, evitando ter várias tabelas com vários gerenciamentos. Com isso é possível administrar de modo mais fácil os recursos de hardware e alocação do banco de dados.

Por exemplo:

CREATE TABLESPACE `TBS_DADOS_COMPRESS` ADD DATAFILE 'TDS_DC_DATAFILE1.ibd' [FILE_BLOCK_SIZE=4];

CREATE TABLESPACE `TBS_DADOS` ADD DATAFILE 'TDS_D_DATAFILE1.ibd' [FILE_BLOCK_SIZE=8];

CREATE TABLE ITEM_VENDA TABLESPACE=`TBS_DADOS_COMPRESS`;

ALTER TABLE tbl_name …
[Leia mais]
Girando MySQL Logs lentas

Original post: http://anothermysqldba.blogspot.com/2014/10/rotating-mysql-slow-logs.html

Ao trabalhar com diferentes clientes acontecer de eu correr em grandes arquivos de log lento ao longo do tempo. Embora existam várias opiniões sobre como eles devem ser rodados. Muitas dessas opiniões usar rotação de log eo comando liberar registros, prefiro não liberar meus logs binários embora. É por isso que eu concordo com o Ronald Bradford blog de ​​anos atrás sobre como fazer isso. 

[Leia mais]
Como Fazer Para Localizar uma Coluna no seu Banco de Dados MySQL

Se tem algo que é extremamente chato de fazer, principalmente quando não existe online de um Banco de Dados, é localizar uma coluna no meio de dezenas de tabelas.

Com esse SELECT, você pode facilmente localizar as tabelas que contém alguma coluna com o nome que você precisa.

SELECT TABLE_SCHEMA AS DB, TABLE_NAME AS Tabela, COLUMN_NAME AS coluna
 FROM INFORMATION_SCHEMA.COLUMNS
 WHERE
 TABLE_SCHEMA = 'nome do seu database'
 AND COLUMN_NAME = 'nome da sua coluna'

Também pode user utilizado o operador LIKE no lugar o =
Ex: AND COLUMN_NAME LIKE ‘%nome da sua coluna%’

Eu uso muito esse SELECT, espero que ajude vocês também.