Acessando o MySQL remotamente

Como SEMPRE me bato com isso quando vou configurar um novo servidor resolvi documentar!

Edite o arquivo /etc/mysql/my.cnf e dentro de [mysqld] comente a linha:

#bind-address: 127.0.0.1

Entre no MySQL via terminal:

mysql -uroot -pmysql

E execute (onde 123 é a sua senha):

mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123' WITH GRANT OPTION;
Query OK, 0 ROWS affected (0.00 sec)
 
mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' IDENTIFIED BY '123' WITH GRANT OPTION;
Query OK, 0 ROWS affected (0.00 sec)

Reinicie o MySQL:

sudo /etc/init.d/mysql restart

ou

service mysql restart

Adicione também uma regra no iptables para que seja permitido o acesso remoto na porta 3306 (se alterar a porta padrão do MySQL deve ser alterada a porta neste comando):

/sbin/iptables -A INPUT -i eth0 -p tcp --destination-port 3306 -j ACCEPT

E é isso ai pessoal :)

Desabilitando temporariamente a checagem de Foreign keys no MySQL.

Durante o processo de modelagem e teste de dados no MySQL as vezes queremos que a checagem de FK’s do MySQL não estivessem ali para inserção de dados e pequenas alterações. Podemos desabilitar esta checagem de uma forma muito simples e ativar novamente assim que o modelo/dados das tabelas estiverem ok.

/* desliga checagem de FKs */
SET foreign_key_checks = 0;
/* liga checagem de FKs */
SET foreign_key_checks = 1;
/* verificando o estado atual da opcao */
SELECT @@foreign_key_checks;

Importando arquivos grandes no MySQL

Importar arquivos muito grandes no MySQL sempre é uma batalha.
Uma das maneiras mais simples de se livrar dessa tarefa é usando o método abaixo.

Conectar no MySQL:

mysql -uUSUARIO -pSENHA -hHOST

Dentro do MySQL:

use NOME_DO_BANCO;

Após selecionar o banco que deseja importar os dados execute:

source /caminho/para/arquivo/dados.sql;

O MySQL irá começar a importar os dados do seu arquivo :-)

Como redefinir seu timezone no Ubuntu

Para redefinir seu timezone no Ubuntu será necessário reconfigurar o pacote tzdata, vamos lá:

dpkg-reconfigure tzdata

Após entrar com o comando acima via Terminal será apresentada uma tela, se você esta no Brasil assim como eu selecione “America” e na tela seguinte selecione “Sao_Paulo”.
A seguinte saída será apresentada:

root@li208-44:~# dpkg-reconfigure tzdata
Current default time zone: 'America/Sao_Paulo'
Local time is now: Wed Dec 28 14:27:47 BRST 2011.
Universal Time is now: Wed Dec 28 16:27:47 UTC 2011.

Agora iremos confirmar se a alteração foi feita com sucesso:

root@li208-44:~# date
Wed Dec 28 14:28:05 BRST 2011

Isso ai! Data e hora foram alterados com sucesso :)

Olá Mundo!

Olá a todos, começo aqui um blog sobre desenvolvimento mobile e web.
Meu nome é Cleber ou “Binho” e trabalho a quase 9 anos com desenvolvimento e administração de servidores. Pretendo colocar neste blog coisas que aprendo durante o dia-a-dia e assim ensinar e aprender. :)