MySQL: Como criar uma tabela a partir de uma declaração SELECT

Frequentemente é útil separar determinados dados de uma tabela e levá-los para uma outra – onde poderão ser analisados com maior atenção. Esta segunda tabela, pode ser criada a partir de dados selecionados da primeira e seus dados podem ser submetidos a testes e posteriormente descartados, sem afetar os dados originais.
MySQL tutorial - como criar uma tabela a partir de um comando SELECT - CREATE TABLE.Você pode usar este recurso em inúmeras situações, inclusive quando deseja evitar que a nova tabela contenha informações sensíveis ou confidenciais, para o uso de outra pessoa ou empresa.
Normalmente, criamos uma nova tabela e, só então, a povoamos com os dados da tabela original, mas isto pode trabalhoso, especialmente se houver muitas colunas envolvidas no processo.
Neste artigo, vou mostrar como inferir a nova estrutura da tabela diretamente de uma declaração SELECT – com os meios que o MySQL já nos oferece.
A sintaxe da declaração é a seguinte:

CREATE TABLE minha_tabela_nova SELECT coluna1, coluna2, coluna4 FROM minha_tabela_original

E isto é tudo.
Como você pode ver, o MySQL vai criar uma nova tabela a partir da estrutura de uma outra, selecionada através do comando SELECT.
Os dados da tabela anterior também serão adicionados, de forma que a nova tabela já “nasce” povoada.

LEIA MAIS:

O procedimento de criação de tabelas através da declaração SELECT não adiciona os índices, entre outras coisas. Contudo, nada impede que você o faça, em seguida. O trabalho duro, já foi feito.

Como criar um banco de dados no MySQL

Você pode criar um banco de dados no MySQL em 1 minuto direto na linha de comando – isto depende da velocidade com que você digita. Neste tutorial, vou mostrar como criar um banco de dados, usando o cliente MySQL.

Outros artigos que complementam este:

Comece por abrir um terminal e digitar o comando para entrar no cliente MySQL:

mysql -u root -p

CREATE DATABASE

Para exemplificar, vou mostrar a criação do banco de dados chamado biblioteca. Veja como:

CREATE DATABASE biblioteca;

Isto é o suficiente para criar um banco de dados no MySQL. Experimente criar um outro por conta própria.
Se quiser ver a relação dos bancos de dados criados use SHOW:

SHOW DATABASES;

Só pra lembrar, os comandos MySQL devem terminar sempre com “;” no final.

Como remover um banco de dados

Este comando não tem volta, é irreversível. Tenha cuidado com o que vai fazer.
Para remover um banco de dados criado use o comando DROP. Veja como:

DROP DATABASE biblioteca;

Conclusão

Agora você já sabe como criar bancos de dados no MySQL, leia outros textos sobre o assunto e aprofunde o seu conhecimento.

TEXTOS RELACIONADOS:

Não esqueça de compartilhar este texto, se o achou útil. 😉

MySQL – 17 exemplos práticos de aplicação do comando mysqladmin

O mysqladmin é uma ferramenta que vem junto com a instalação do servidor MySQL e é usada por administradores de bancos de dados para realizar algumas operações básicas, tais como, configurar a conta do administrador (root), mudar sua senha, monitorar processos, lidar com privilégios, verificar as condições do servidor, criar rapidamente novos bancos de dados etc — tudo na linha de comando.
Aqui vamos ver alguns dos comandos mysqladmin e situações em que são úteis, através de exemplos.

LEIA MAIS
Como atribuir uma senha ao administrador MySQL – (MySQL root)
mysqladmin -u root password minhanovasenha
Como alterar a senha, já atribuída, do administrador

Um administrador responsável sabe que senhas precisam ser alteradas periodicamente. O mysqladmin, permite fazer isto rapidamente, diretamente no terminal. No exemplo que segue, tenha em mente que senhaantiga e senhanova são o que seus nomes dizem e você deve usar os seus próprios valores. Use as aspas, onde tiver que usar:

mysqladmin -u root -psenhaantiga password 'senhanova'
Como verificar se o servidor está em execução

A ideia é determinar se o servidor está “vivo”. A frase «mysqld is alive» responde a esta questão. Use o seguinte comando:

mysqladmin -u root -p ping

Mysqld is alive - terminal

Como determinar o status do seu servidor MySQL

Vocẽ já sabe que ele “está vivo”. Agora, deseja obter mais informações sobre como ele está funcionando, entre as quais, o tempo em que ele está ‘no ar’, a quantidade de tabelas abertas por usuários, o tempo de resposta médio das queries etc.

mysqladmin -u root -pminhasenha status

mysqld status

Informação Descrição
Uptime Tempo (em segundos) em que o servidor está funcionando,
desde a última vez em que foi carregado.
Threads O número total de clientes conectados ao servidor.
Questions O número total de requisições a que o servidor atendeu
desde que foi carregado.
Slow queries Total de queries cujo tempo de execução ultrapassou o valor
definido pela variável long_query_time (veja o arquivo de
configuração).
Opens Número total de tabelas abertas pelo servidor.
Flush tables A quantidade de vezes em que tabela foi atualizada.
Open tables O número total de tabelas abertas no momento.
Como verificar o status de todas as variáveis e valores do servidor MySQL

O comando,

mysqladmin -u root -p extended-status

dará um resultado parecido com este:
mysqladmin mysql extended status

Como ver todas as variáveis e valores do servidor MySQL
mysqladmin -u root -p variables
Como saber a versão instalada do MySQL

O comando, a seguir, mostra aversão do seu servidor MySQL, entre outros detalhes:

mysqladmin -u root -p version

O resultado vai ser parecido com este:
Como ver a versão do mysql
Fique atento para a linha Server version. No caso, aqui, trata-se da versão 5.5.32-0ubuntu0.13.04.1.

Como ver todos os processos em execução no servidor MySQL

Este comando mostrará uma (possivelmente) longa relação de processos em execução no seu sistema.

mysqladmin -u root -p processlist
Como criar um banco de dados no servidor MySQL

Esta tarefa é relativamente simples e, com o mysqladmin, pode ser realizada com uma única linha de comando. Ou seja, você não precisa “entrar” no MySQL para criar um banco de dados.
No exemplo abaixo, vamos criar um banco de dados chamado o_condado_db (eu sei, estou exagerando na leitura de Tolkien); depois de criado o banco, vamos entrar no MySQL e vamos pedir para mostrar os bancos de dados existentes. Acompanhe:

mysqladmin -u root -p create o_condado_db
mysql -u root -p
show databases

O resultado do comando show databases, executado dentro do cliente MySQL, deve ser parecido com o que segue:
mysql show databases
Para sair do MySQL, rode os comandos exit ou quit.

Como excluir um banco de dados

Vamos aprender a usar o drop para remover um banco de dados já criado:

mysqladmin -u root -p drop o_condado_db

O sistema pedirá para que a ação seja confirmada, antes de executar a remoção.

Como recarregar e atualizar os privilégios MySQL

Aqui temos basicamente 2 comandos: reload e refresh. O primeiro pede ao servidor que recarregue as tabelas dos privilégios; o segundo atualiza todas as tabelas e reabre os arquivos de log. Veja como fazer:

mysqladmin -u root -psuasenha reload
mysqladmin -u root -psuasenha refresh
Como iniciar e desligar o servidor MySQL de maneira segura

Normalmente, o servidor MySQL já “sobe” junto com o sistema. Ou seja, não precisa ser iniciado. Mas, no caso de você precisar, use o seguinte comando para dar início à sua execução:

/etc/init.d/mysql start

Para desligar:

/etc/init.d/mysql stop

Tenha em mente que há variações na maneira de executar este comando entre as distros. Em algumas, o comando mysql vai estar em /etc/rc.d/init.d/
Enfim, você pode desligar o servidor MySQL da seguinte forma também:

mysqladmin -u root -p shutdown
Como terminar um processo que esteja dormindo/hibernando (sleeping) no cliente MySQL Client

Você vai precisar saber o ID do processo a ser terminado, para fazer isto. Portanto, vai precisar executar um comando que liste os processos em execução no seu servidor. De posse do ID, basta informá-lo ao comando de interrupção de processos. Veja como:

mysqladmin -u root -p processlist

O MySQL vai te devolver uma lista. Localize a ID do processo que você deseja terminar, na primeira coluna. Para interrompê-lo, use o seguinte comando (substituindo a variável num_processo pelo número do processo que você deseja terminar):

mysqladmin -u root kill num_processo

Feito isto, peça novamente a lista de processos para ver se tudo deu certo.
É possível apagar vários processo com um só comando. Informe todas as IDs de processos que você deseja terminar, separadas por vírgulas:

mysqladmin -u root kill num_processo1, num_processo2, num_processo3

Fácil, né?

Como organizar, fazer a faxina, com o mysqladmin e flush

A instrução flush tem uma série de variantes que limpam, recarregam, atualizam os caches internos e as tabelas. Veja quais são e o que fazem:

Comando Descrição
flush-hosts Limpa todas as informações relativas ao host do host cache.
flush-tables Atualiza todas as tabelas.
flush-threads Atualiza o cache das threads.
flush-logs Atualiza todas as informações nos logs.
flush-privileges Recarrega as tabelas de privilégios.
flush-status Limpa as variáveis de status do sistema.

Como usar:

mysqladmin -u root -p flush-hosts
mysqladmin -u root -p flush-tables
mysqladmin -u root -p flush-threads
mysqladmin -u root -p flush-logs
mysqladmin -u root -p flush-privileges
mysqladmin -u root -p flush-status
Como executar múltiplos comandos em uma só linha mysqladmin

Sim. Você pode executar várias tarefas com apenas uma linha de comando mysqladmin. Veja como criar 3 bancos de dados (databases) em uma tacada só:

mysqladmin -u root -p create primeiro create segundo create terceiro

Dê a sua senha e entre no cliente MySQL, para ver o trabalho feito:

mysql -u root -p

Dentro do MySQL, liste as tabelas:

show databases

mysql show databases comando
Agora, vamos excluir os bancos de dados com o mysqladmin. Portanto digite exit;, para sair do MySQL.
Da linha de comando, do shell, exclua os bancos com drop:

mysqladmin -u root -p drop primeiro drop segundo drop terceiro
Como se conectar a um servidor remoto

Vamos usar o seu próprio servidor MySQL, aqui, para exemplificar. Muita gente se conecta a um servidor remoto MySQL via SSH.
Com o mysqladmin, você pode se conectar remotamente e executar um comando (ou vários) e voltar pro seu terminal:

mysqladmin -h 127.0.0.1 -u root -p version

mysqladmin conexão remota

Como obter ajuda para o mysqladmin

Enfim, vamos ver como obter ajuda para usar o mysqladmin. Use o manual do sistema:

man mysqladmin

ou a ajuda do próprio comando:

mysqladmin -?

Divirta-se!

LEIA MAIS:

Minha análise sobre a hospedagem grátis PHP e MySQL do 000webhost

Web Hosting
Dos vários provedores de hospedagem grátis, que já experimentei, há alguns que merecem ser destacados em alguns posts. O 000WebHost ou FreeHosting.com é um deles.
Estabelecidos desde 2006 e, segundo o site, contam com mais de 60 mil clientes mundo afora. Oferecem vários planos, sendo que o básico (gratuito) conta com 1.5Gb de espaço e a promessa de 100Gb de transferência de dados mensal. O objetivo é conquistar o cliente do plano básico, é seduzi-lo para fazer um upgrade para uma conta paga, com mais recursos.

O ideal, é sempre contratar um plano sério e pagar pelos serviços recebidos. Mas há casos em que um provedor gratuito é a melhor opção: sites demo, de aprendizado etc.

Uma das boas surpresas do plano grátis é o suporte a PHP, Ruby, Perl, MySQL e PostgreSQL – com isto, praticamente qualquer projeto pode ser iniciado e, assim que você julgar necessário, partir para um dos planos pagos do provedor.

As restrições ao uso do PHP e do MySQL são mínimas (máximo de 5 contas no banco de dados). E o PHP tem suporte aos seguintes recursos:

  • função PHP mail() e Sendmail;
  • Curl, biblioteca GD2, XML, Zend e suporte a .htaccess;
  • fopen() e sockets PHP sockets;
  • safe_mode, desligado e upload de arquivos, ligado;
  • suporte ao Zend Optimizer, Ioncube etc;

Outros recursos oferecidos:

  • Sem publicidade. O serviço não impõe anúncios ao seu site;
  • Hospedagem do seu próprio domínio;
  • Se não tiver um domínio, o usuário pode escolher um dos subdomínios gratuitos do próprio site;
  • Contas de email POP3 e acesso web (webmail);
  • Mais de um tipo de gerenciador de arquivos Web e FTP.

Painel de controle cPanel

Um dos painéis de controle mais usados nos provedores e com vários recursos disponíveis, já nesta versão básica e gratuita do plano de que estamos falando é um atrativo pro serviço. Se você for iniciante, não vai ter dificuldades para realizar qualquer tarefa dentro deste painel.

Fantastico De Luxe, instalador automático de aplicativos

Aqui, os iniciantes ou quem tem pouco tempo para por uma solução no ar, têm uma ferramenta que permite instalar com poucos cliques mais de 40 aplicativos pro seu site, tais como Drupal, Geeklog, Joomla, Xoops, WordPress, b2evolution, Support Logic Helpdesk, phpBB2, SMF, OS Commerce, ViPER Guestbook, Coppermine Photo Gallery, PhpWiki, PHPauction, WebCalendar etc. – acesse o site e veja a lista completa.

Faça você mesmo o seu website

O SiteReptile, um dos aplicativos disponíveis, permite montar o seu próprio site, em poucos passos — é uma questão de dar os detalhes do seu cadastro, selecionar um entre os mais de 300 templates e mandar publicar (pra resumir).

Suporte

O que diferencia os diversos serviços online, costuma ser a qualidade do suporte. Não espere muito de uma hospedagem gratuita, neste quesito. Suporte é caro e eles precisam pagar as suas contas. Ainda assim, há uma boa quantidade de tutoriais e informações que podem ser lidas para ajudar a resolver a maior parte dos problemas que você encontrar pela frente.
Na versão paga, normalmente, um técnico resolve a maior parte dos problemas pra você. Isto é uma grande diferença.

POSTS RELACIONADOS

O serviço é para você?

Se você está iniciando um projeto de comunidade online, um blog ou site pessoal, pensa em começar pequeno para crescer aos poucos, sim.

Desvantagens do serviço

A hospedagem gratuita, como já era de se esperar, é claramente uma degustação. Não é feita para projetos que já passaram da fase inicial – neste caso, a experiência será decepcionante.
O suporte técnico, embora costumem responder agilmente, não se iluda, é voltado para clientes pagantes – portanto se prepare para resolver a maior parte dos problemas por sua própria conta.
Há limite de upload de arquivos (2mb). Não há acesso SSH/SFTP/SCP, nem suporte a SSL pro seu domínio, na versão grátis.
Abaixo, segue o banner “discreto” do serviço, para você clicar – o melhor julgamento, é que você mesmo faz.
Web hosting

Como instalar o MySQL no Ubuntu

O MySQL é o banco de dados mais usado na web. Há estatísticas que o colocam como a escolha de quase 90% dos maiores sites.
Neste post, vamos ensinar como instalar a versão mais atual de um servidor de banco de dados MySQL no Ubuntu. Se você tiver interesse em instalar um servidor mais completo, com Apache e PHP, este artigo pode ser mais útil para você.

Instalação do MySQL

O primeiro passo é abrir um terminal (Ctrl + Alt + T, no Ubuntu)
Antes de instalar, vamos começar por (re)sincronizar os índices dos pacotes. Em seguida, vamos dar início à instalação:

sudo apt-get update
sudo apt-get install mysql-server

O processo pode levar alguns instantes, dependendo da velocidade de sua conexão. Se tudo correr bem, o Ubuntu irá baixar os pacotes de instalação e fazer a configuração básica do sistema para você e o deixará rodando, pronto para receber as suas primeiras ordens.

Usando o MySQL

Talvez você queira, neste momento, verificar se o seu servidor MySQL está funcionando. Você pode verificar isto através do netstat. Veja como:

sudo netstat -tap | grep -e mysql

O resultado deve ser semelhante ao que vocẽ vê na imagem abaixo

netstat mysql
Clique para ampliar.

POSTS RELACIONADOS

Como atribuir uma nova senha ao administrador no MySQL

Durante o processo de instalação, o sistema pede para cadastrar uma nova senha pro administrador. Se você não se lembra de qual era, pode recadastrar a senha agora:

mysqladmin -u root password novasenha

Como você pode ver, no Ubuntu este tipo de trabalho é bem fácil de ser realizado. Divirta-se!
PS.: Não esqueça de dar uma olhada em nossos outros artigos sobre MySQL.