DBLink do Oracle para o MySQL

É comum a necessidade de integração entre diferentes SGBD para finalidades diversas, tais como relatórios, DW, iteração de sistemas secundários, entre outras.  O Oracle disponibiliza um recurso chamado DBLINK que proporciona a conexão a databases remotos, sendo esses Oracle ou NON-ORACLE. As conexões NON-ORACLE são realizadas com o auxilio do ODBC, a ideia aqui é exemplificar passo a passo como é configurado esse recurso no Oracle e também abordar os possíveis erros que venham a ocorrer e as diferenças entre o Oracle 10 e 11g.

O exemplo a seguir foi executado em um servidor Oracle Linux 6.5 com unix-ODBC 64bits, MySQL-ODBC 64bits e Oracle 11.2.0.4.

1 – Instalação do unix-ODBC:

yum install unixODBC

2- Download do mysql-connector-odbc:

Faça o download do driver correspondente a sua distribuição Linux em:

[Leia mais]
DatabaseCast: Currículo de DBA

Olá, pessoal! Neste episódio do DatabaseCast, Mauro Pichiliani (Twitter | Blog), Wagner Crivelini (@wcrivelini) e os convidados Rodrigo Almeida (@dbarodrigo) e Airton Lastori (@alastori) abrem a caixa de entrada e analisam currículos para a vaga de DBA Oracle, SQL Server e MySQL. Neste episódio você vai descobrir o que colocar em um currículo para vagas de DBA júnior, pleno e sênior, indicar o quanto quer ganhar, citar sua experiência no condomínio, gastar um tempo no LinkeIn, contar sua história e como (não) mentir no currículo. …

[Leia mais]
Adicionando nova collation no MySQL

Eu sou do tipo de DBA que prefere manter as coisas mais simples possíveis, mas, tem vezes em que não é possível. Alguns dias atrás, me deparei com um problema no qual, nenhuma das collations presentes no MySQL iria garantir a integridade do meu banco de dados, e para evitar uma grande re-escrita do código fonte, me deparei com uma opção até então desconhecida.
Adicionar minha própria collation no MySQL

Esta opção está descrita nesta sessão da documentação.
Neste artigo, vou mostrar como fazer o MySQL identificar vogais com acento agudo como uma letra diferente.

Primeiro, precisamos descobrir onde está o nosso diretório com os charset’s:


mysql [localhost] {msandbox} ((none)) > SHOW VARIABLES LIKE 'character_sets_dir';

[Leia mais]
Script de backup (Mydumper + retenção + monitoramento)

A ideia aqui é mostrar uma rotina de backup lógico alternativa ao convencional mysqldump, realizando um backup lógico na menor janela de disponibilidade possível, se comparado ao dump convencional.

  • Backup full online e comprimido;
  • Retenção de logs binários;
  • Controle de espaço em disco através do expurgo dos backups mais antigos;
  • Catalogo de backup;
  • Monitoramento do backup;
  • Backup lógico e organizado sem o uso do convencional Mysqldump.

Lembrando que já foram postadas soluções de backup iguais a essa utilizando o Xtrabackup e o Mysqldump. Neste artigo vou abordar a solução Mydumper, então sugiro a leitura dos artigos “Soluções de Backup no MySQL” e “ …

[Leia mais]
Mydumper & Myloader- substituindo o MySQLdump

Como assim substituindo? É uma nova versão do MySQLdump? Não, é uma ferramenta disponibilizada pela comunidade para realizar o dump do MySQL de forma mais otimizada. E por isso você não vai mais querer utilizar o convencional MySQLdump em seus backups lógicos. Ele vai parecer tão defasado que você só vai utilizá-lo para backups ou export muito simples e com pequeno volume de dados.

O Mydumper é uma ferramenta de dump otimizada que possibilita gerar o dump de um banco de dados até seis vezes mais rápido que o MySQLdump convencional. Faz o dump de forma mais organizada e paralela.

Guia de instalação

É necessário instalar algumas dependências, já que o Mydumper será compilado localmente. O guia a seguir já possui as dicas de instalação de dependências e …

[Leia mais]
Evite erros ajustando case sensitive do MySQL

Uma situação muito comum: ambiente de desenvolvimento Windows e ambiente de homologação e produção Linux. Se você se enquadra nela, uma maneira prática de evitar problemas relacionados aos nomes de tabelas é usar a configuração lower_case_table_names=1 em ambas plataformas.

Como o MySQL faz referências às tabelas

No MySQL, databases/schemas são diretórios, e tabelas são arquivos no filesystem do SO. É fácil verificar criando uma tabela e listando os arquivos do datadir. Veja este exemplo no Windows:

mysql> CREATE DATABASE meudb;
mysql> USE meudb;
mysql> CREATE TABLE MinhaTabela(id INT PRIMARY KEY NOT NULL AUTO_INCREMENT);


mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| meudb              |
| mysql              |
| performance_schema |
+--------------------+


mysql> SELECT @@datadir; …
[Leia mais]
Como o Docker pode resolver problemas do mundo real para desenvolvedores web

Trabalhando com desenvolvimento web? Bem, então você provavelmente já ouviu falar sobre Docker e seus desdobramentos recentes. Recipientes Docker podem ser um verdadeiro reforço de produtividade para as suas próximas aplicações web. Para um desenvolvedor web, não é tão fácil de entender a essência do Docker.

É por isso que eu gostaria de dar uma olhada nos recipientes Docker e mostrar alguns problemas do mundo real que o Docker está resolvendo para desenvolvedores web.

O que é o Docker?

Docker é basicamente uma ferramenta de código aberto para a execução de containers isolados no Linux fazendo o deploy de aplicativos dentro de containers isolados mais rapidamente. O Docker cria recipientes autossuficientes e portáteis a partir de qualquer aplicativo.

O mesmo recipiente que o desenvolvedor …

[Leia mais]
Script de backup (Xtrabackup + retenção + monitoramento)

A ideia desse artigo é mostrar um processo/ política de backup por completo, contemplando:

  • Backup full online e comprimido;
  • Retenção de logs binários;
  • Controle de espaço em disco através do expurgo dos backups mais antigos;
  • Catálogo de backup;
  • Monitoramento do backup;

Para que seja possível acompanhar esse artigo, recomendo que leia primeiramente este e este artigo. Eles lhe darão uma base conceitual de DBA e uma apresentação inicial das capacidades da ferramenta Xtrabackup. Instale o Xtrabackup como mencionado no artigo “backup com xtrabackup”. Para começar, configure o log binário do MySQL; isso possibilitará o famoso …

[Leia mais]
Os 5 melhores sistemas de chat open source para atendimento ao cliente

Os sistemas de atendimento online se popularizaram muito nos últimos anos por seus inúmeros benefícios, sendo a rapidez com que o usuário pode obter solução para o problema, a maior vantagem apontada pelos usuários. O registro do que foi acordado entre consumidor e empresa é outro advento citado entre os benefícios do atendimento online.

O uso dos chats como forma de atendimento ao cliente passou a ser adotado em maior escala no momento em que os usuários passaram a preferir um atendimento personalizado online, desde que a resposta fosse mais rápida do que os tediosos atendimentos telefônicos. Uma pesquisa realizada pela Salesforce com usuários entre os 18 e os 35 anos, revela que 34% dos entrevistados preferem ir ao dentista, 32% preferem fazer compras na véspera de Natal, e 26% …

[Leia mais]
A importância de serializar a saída da API

Eu tenho falado sobre a API Pain Points um zilhão de vezes ao longo do último ano. Apenas em 2015 eu falei sobre essa API em:

Uma área que parece ter um monte de comentários e perguntas é quando eu falo sobre a serialização, que eu chamo de “a inclusão de uma camada de apresentação para seus dados”.

O MSDN diz assim:

A serialização é o processo de converter um objeto em um fluxo de bytes para armazená-lo ou transmiti-lo para uma memória, um banco de dados ou um arquivo. Seu principal objetivo é salvar o estado de um objeto, a fim de ser capaz …

[Leia mais]