Como Importar e Exportar grandes bancos de dados no MySQL

Quando você não consegue fazer operações como exportar e importar arquivos no banco de dados pelo PHPMyAdmin por causa do tempo limite então o jeito é ir pelo comando mesmo.

No linux você faz isso com esses comandos:

  • Exportar:

mysqldump -uusuario_do_banco -psenha nome_do_banco > nomedoarquivo.sql

  • Importar:

mysql -uusuario_do_banco -psenha nome_do_banco < nomedoarquivo.sql

No WINDOWS os comandos são iguais, porém você precisa estar na pasta bin do seu mysql.

Caso use o EasyPHP por exemplo você precisa estar em C:\EasyPHP\mysql\bin\ quando usar o comando.

Permissão de arquivos (CHMOD)

Todo arquivo ou pasta tem seu conteúdo e seu nome visível para qualquer usuário.

Mas além disso eles tem um dono e permissões de arquivos que podem ser vistos nas propriedades do arquivo ou da pasta.

Uma outra forma de visualizar a permissão do arquivo é pelo FTP ou digitando o comando abaixo no terminla do seu Linux:

ls -l

Que teria mais ou menos esse resultado:

-rw-r–r– 1 surrealad surrealad 2267 2011-04-14 18:39 insertLogo.php
drwxr-xr-x 2 surrealad surrealad   69 2011-05-26 14:47 npub/
-rw-r–r– 1 surrealad surrealad 2749 2011-03-09 15:52 pictogramaBranco.png
-rw-r–r– 1 surrealad surrealad 2545 2011-03-09 15:52 pictogramaPreto.png

A primeira, a terceira e a quarta linha são arquivos e a segunda um diretórios. Sabemos disso pela letra d no começo da segunda linha.

Se fossemos ver esses arquivos no FTP eles teriam a permissão 755 para a pasta e 644 para os arquivos.

Isso porque no FTP a permissão é representada em números e no terminal do Linux ou SSH ela é representada em letras.

Essa representação da permissão é dividida em 3 partes que são:

1 – Permissão para o dono ou usuário
2 – Permissão para usuários do mesmo grupo
3 – Permissão para todos os usuários

Cada número (para o FTP) ou letra (para o terminal do Linux ou SSH) significa um tipo de permissão, que são:

0 : — (nenhuma permissão)
1 : –x (somente execução)
2 : -w- (somente escrita)
3 : -wx (escrita e execução)
4 : r– (somente leitura)
5 : r-x (leitura e execução)
6 : rw- (leitura e escrita)
7 : rwx (leitura, escrita e execução)

Algumas vezes, acontece de um usuário colocar permissão 777 para todos os arquivos e pastas de seu site e isso não é seguro.

A permissão 777 só deve ser utilizada em pastas que terão seu conteúdo alterado, como pastas de upload ou de cache por exemplo.

Utilizando de um bom cliente FTP como o FileZilla, você pode “rapidamente” corrigir isso, pois ele te dar a opção de aplicar a mesma permissão às subpastas e/ou arquivos das subpastas.

Já no linux isso é um pouco diferente, embora você possa diferenciar arquivos de pastas pelo comando o CHMOD não pode.

Para isso, você precisará da ajuda do comando find e do xargs.

Use este comando para mudar a permissão de todos os arquivos daquela pasta:

find -type f | xargs -i chmod 644 {}

Use esse comando para aplicar a permissão apenas para a pasta e as subpastas:

find -name '*' -type d | xargs -i chmod 755 {}

Basicamente é isso.

Já da pra brincar um pouco ou sair de uma furada.

Instalando o Apache2, PHP5, MariaDB (esqueça o MySQL), PHPMyAdmin no Ubuntu

O que vou ensinar aqui é tudo que você precisa pra montar um Web Server com o Ubuntu.

Estou usando sempre o Ubuntu nos meus tutoriais de Linux porque estou tendo meus primeiros contatos com o Linux agora e o Ubuntu é, se não o mais fácil, um dos mais faceis para os iniciantes.

Outra coisa, esse tutorial começa no terminal, então se nem no terminal você sabe chegar sugiro que dê uma navegada no “menu iniciar do seu Ubuntu.

Preparando o sistema

Primeiro vamos obter as permissões de administrador, que no Linux é conhecido como usuário root.

Para isso digite o comando abaixo e informe sua senha quando ele pedir:

sudo su

Agora vamos fazer um update das listas de aplicativos com o comando:

apt-get update

Em seguida vamos instalar o apache2

apt-get install -y apache2

Agora vamos instalar o PHP5 (PHP5 é a versão. Esse é o php que você conhece)

apt-get install -y php5

É bom instalar também algumas bibliotecas úteis do PHP, pois cedo ou tarde será necessário.

apt-get install -y php5-mhash php5-mcrypt php5-curl php5-cli php5-mysql php5-gd

Agora vamos instalar o MySQL

apt-get install -y mariadb-server mariadb-client

Falta pouco agora.

O Web Server já está basicamente pronto, mas seria bom adicionar um gerenciador para o banco de dados.

Para isso vamos instalar o PHPMyAdmin com o comando:

apt-get install -y phpmyadmin

Agora precisamos que o apache rode o phpmyadmin.

Para isso use o comando:

echo "Include /etc/phpmyadmin/apache.conf" >> /etc/apache2/apache2.conf

Ou se preferir, edite o arquivo com o editor do debian e insira a linha manualmente.

Agora basta reiniciar o apache2 para que tudo esteja pronto para funcionar.

/etc/init.d/apache2 restart

Certo, mas onde está aquela pasta www onde irei jogar os meus .php e fazer meu site?

Inicialmente a pasta fica em:

[code]/var/www/html/[/code]

Em breve farei outro tutorial ensinando como mudar o local padrão da pasta www do apache2.

Abraços.

Talvez você também se interesse por:
Habilitando o mod_rewrite no apache
Instalando e ativando a extensão PHP mCrypt no Ubuntu
Instalando a biblioteca cURL do PHP no Ubuntu

Compactando/Descompactando arquivos no linux pelo terminal

Compactar e descompactar aquivos no linux pelo terminal pod ser um tanto quanto complicado, não pela complexidade dos comandos, mas pela diversidade deles já que cada tipo de arquivo tem uma forma diferente de fazer isso. Lembrando que se você não tiver alguma desses comandos disponíveis no seu Ubuntu, basta instalar os pacotes com o comando apt-get install, por exemplo pro zip seria:

apt-get install zip

Os comandos são:

  • .zip

Compactando:

zip -r nomedoarquivo.zip nome_do_arquivo_ou_pasta

Descompactando:
unzip nomedoarquivo.zip

  • .rar

Compactando:

rar a -r  nomedoarquivo.rar arquivo1 pasta1 arquivo2 pasta2

Descompactando:
rar x nomedoarquivo.rar

  • .tar

Compactando:

tar zcvf nomedoarquivo.tar arquivo1 pasta1 arquivo2 pasta2

Descompactando:
tar xvf nomedoarquivo.tar

  • .tar.gz

Compactando:

tar -czfv nomedoarquivo.tar.gz pasta1 arquivo1 pasta2 arquivo2

Descompactando:
tar -vzxf nomedoarquivo.tar.gz

  • .tar.bz2

Compactando:

tar -cjfv nomedoarquivo.tar.bz2 arquivo1 pasta1 arquivo2 pasta2

Descompactando:
tar -jxvf nomedoarquivo.tar.bz2

Reiniciando o som do Ubuntu sem reiniciar o sistema

As vezes o som do meu Ubuntu pára de funcionar e só volta quando eu reinicio.

Mas isso era antes de eu descobrir esse comando:

sudo alsa force-reload

Execute este comando no seu terminal que o som do seu Ubuntu voltará a funcionar num passe de mágicas.