MeuMySQL Blog is now at http://blog.mdnsolutions.com/.
Showing posts with label Distribuição Binária. Show all posts
Showing posts with label Distribuição Binária. Show all posts

Tuesday, September 20, 2011

Instalando distribuição binária do MySQL no CentOS



Ola galera! Ultimamente venho estudando para tentar passar na primeira prova de certificação da Oracle MySQL DBA I e vou contar um coisa: é bem complicado, contudo é muito prazeroso. O primeiro caso se dá pelo fato de eu como desenvolvedor que sempre esteve sob plataforma Windows (desculpe, não tenho orgulho disso) quando cheguei em um nível onde o Linux é fundamental tive algumas dificuldades.

Neste novo ambiente tive que instalar e configurar o MySQL (MySQL Community Server 5.5.16)  no Linux (CentOS Linux release 6.0 Final) e para isso precisei entender melhor como essa plataforma, comandos e recursos funcionam uma vez que diferem bastante do Windows. Enfim, vamos ao que interessa, fazer o nosso servidor rodar.


Escolha da distribuição e instalação do MySQL

Assim como consta no manual podemos fazer a instalação de várias formas, optei por utilizar a distribuição binária Linux - Generic 2.6 (x86, 64-bit), Compressed TAR Archive disponivel no próprio site da MySQL  (link direto para essa distribuição aqui). Bem, uma vez feita o download temos que antes de mais nada criar um usuário e grupo para trabalhar com o servidor MySQL. Logue no seu Linux como root e rode os comandos abaixo. Eles criam um grupo para o MySQL e adicionam um usuário que vai servir apenas para fins administrativos sem direitos de login.

shell> groupadd mysql
shell> useradd -r -g mysql mysql

Alteramos nosso diretório para o local onde instalaremos nosso server. Suponho neste ponto que você também tenha feito o download aqui, então vamos extrair a distribuição e alterar o nome da pasta atual "full-path-to-mysql-VERSION-OS" para algo mais simbolico como "mysql".

shell> cd /usr/local
shell> tar zxvf /path/to/mysql-VERSION-OS.tar.gz
shell> ln -s mysql-5.1.59-linux-i686-glibc23 mysql

Vamos agora acessar o novo diretorio criado e dar para ele as permissões do grupo mysql que criamos anteriormente.

shell> cd mysql
shell> chown -R mysql .
shell> chgrp -R mysql .

Feito isso, a instalação pode ser executada. Abaixo o comando faz a criação das pastas iniciais da sua base de dados MySQL. Eles serão criados em /var/lib/mysql, recomendo que você crie esse diretorio antes e dê também as mesmas permissões como feito no passo anterior.

shell> scripts/mysql_install_db --user=mysql
shell> chown -R root .
shell> chown -R mysql data

Os próximos comandos são opcionais, mas recomendo que sejam executados também. Neles criamos um my.cnf no diretório etc, atribuimos um usuário para o servidor mysqld_safe e criamos uma copia do mysql.server na pasta de inicialização do Linux. Observer neste ultimo passo que também mudamos o nome do arquivo ao fazer a copia de mysql.server para mysql. Assim o servidor será carregado automaticamente quando o linux iniciado.

shell> cp support-files/my-medium.cnf /etc/my.cnf
shell> bin/mysqld_safe --user=mysql &
shell> cp support-files/mysql.server /etc/init.d/mysql


Configuração e teste do servidor

Uma vez instalado o seu servidor temos que agora alterar alguns parametros no nosso arquivo my.cnf para que o servidor rode corretamente. A propósito essa foi uma pequena dor de cabeça pra mim ao instalar pela primeira vez deste modo já que na documentação oficial o passo a passo solicita você testar antes de checar essas informações. Enfim, abaixo segue aproximadamente como seu my.cnf deve ficar para o servidor rodar, eu usei o vi do Linux para edita-lo.

[mysqld]
datadir=/var/lib/mysql/
socket=/tmp/mysql.sock
port=3306
user=mysql

[mysql.server]
basedir=/usr/local/mysql


Desta forma seu servidor está pronto para rodar. Basta executar o comando abaixo e você receberá a mensagem de sucesso.

shell>> /etc/init.d/mysql start
Starting MySQL.. SUCCESS!

Agora vamos finalmente configurar uma variável de ambiente com o caminho da pasta bin adicionando um PATH no sistema. Crie um arquivo chamado mysql.sh como mostrado abaixo e adicione dentro dele o caminho PATH=${PATH}:/usr/local/mysql/bin (necessário reiniciar para essa alteração funcionar). Feito isso, basta apenas rodar o mysql client no seu shell e pode comecar a trabalhar em sua nova base de dados.

shell>> touch /etc/profile.d/mysql.sh
shell>> mysql
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 1
Server version: 5.1.59 MySQL Community Server (GPL)
mysql>


Bem, basicamente isso galera. Lembrando ainda que temos que implementar ainda a seguranca do nosso banco de dados que você encontra referências em inglês aqui. Espero em breve estar escrevendo sobre isso também visto que é mais um conhecimento também requerido na certificação ORACLE SCMDBA. Obrigado à todos e qualquer dúvida deixe um comentário.

Referências: