Como importar uma única tabela para o banco de dados mysql usando a linha de comando
141
Eu havia importado com sucesso um banco de dados usando a linha de comando, mas agora minha área de atuação é como importar uma única tabela com seus dados para o banco de dados existente usando a linha de comando.
Isso criará um arquivo nomeado example.sqlno caminho mencionado e create tablegravará o comando sql para criar a tabela tableName.
Importar dados para a tabela
mysql -u username -p databasename < path/example.sql
Este comando precisa de um arquivo sql contendo dados em forma de insertinstruções para a tabela tableName. Todas as insertinstruções serão executadas e os dados serão carregados.
o -u foi perdido;) mysqldump -u nome de usuário -p nome do banco de dados nome_da_tabela> caminho / exemplo.sql
Kazmin
2
Para importar, você não precisa usar o mysql dump. mysql -u usuário -p databasename tableName <path / example.sql Ele deve fazer o seu trabalho
Prabhakar Undurthi
8
O tableNamenome não é necessário para todas as versões do MySQL e produz erros, portanto, você pode precisar omiti-lo!
Mchar 25/08
1
Eu estava recebendo um erro de sintaxe até perceber que estava no bash e não no mysql ao executar.
Christia
2
Isso funcionaria apenas se eu tivesse acesso ao banco de dados do qual posso exportar uma tabela específica. No entanto, se eu tiver um despejo completo do banco de dados e desejar escolher as tabelas a serem importadas, essa solução não funcionará. O post vinculado Posso restaurar uma única tabela de um arquivo mysql mysqldump completo? aborda esse problema.
Todas essas opções estão corretas, se você tiver a opção de reexportar os dados.
Mas se você precisar usar um arquivo SQL existente e usar uma tabela específica, esse script perl no blog TimeSheet , permitirá extrair a tabela para um arquivo SQL separado e importá-la.
Você não precisa especificar o nome da tabela na linha de comandos, pois o arquivo SQL exportado possui a chamada relevante para criar a tabela. Tudo que você precisa é mysql -u your_user_name -p database_name < test.sql.
Michael De Silva
1
Aqui está um exemplo de uma tabela exportada, `22 DROP TABLE IF EXISTS account_product_prices; 23 / *! 40101 SET @saved_cs_client = @@ character_set_client /; 24 / ! 40101 SET character_set_client = utf8 * /; 25 CREATE TABLE account_product_prices(`
Michael De Silva
5
Primeiro, entre no seu banco de dados e verifique se a tabela do banco de dados que você deseja importar não está disponível no seu banco de dados.
Se estiver disponível, exclua a tabela usando o comando Caso contrário, ocorrerá um erro ao importar a tabela.
DROPTABLE Table_Name;
Em seguida, vá para a pasta na qual você tem o .sqlarquivo a ser importado e execute o seguinte comando no seu terminal
mysql -u username -p databasename < yourtable.sql
O terminal solicitará que você digite a senha. Digite e verifique o banco de dados.
Seria combinação de EXPORT INTO OUTFILEeLOAD DATA INFILE
Você precisa exportar essa tabela única com EXPORT INTO OUTFILE, isso exportará dados da tabela para um arquivo. Você pode importar essa tabela específica usandoLOAD DATA INFILE
você pode fazer isso no comando mysql em vez do comando linux.
1.login seu mysql.
2.excute isso no comando mysql: use DATABASE_NAME; SET autocommit=0 ; source ABSOLUTE_PATH/TABLE_SQL_FILE.sql ; COMMIT ;
Embora esse trecho de código seja bem-vindo e possa fornecer alguma ajuda, ele seria bastante aprimorado se incluísse uma explicação de como e por que isso resolve o problema. Lembre-se de que você está respondendo à pergunta dos leitores no futuro, não apenas à pessoa que está perguntando agora! Por favor edite sua resposta para adicionar explicação, e dar uma indicação do que limitações e premissas se aplicam.
precisa
0
-> mysql -h host -u user-p database_name table_name < test_table.sql
Para importar uma tabela no banco de dados, se a tabela é já existem em seguida, adicione essa linha em seu arquivo sql DROP TABLE IF EXIST 'table_name'comando e correr mysql -u username -p database_name < import_sql_file.sql. Por favor, verifique o caminho do arquivo sql antes de executar o comando.
Respostas:
Linux:
Na linha de comando
coloque sua tabela em example.sql
Importar / Exportar para tabela única:
Esquema da tabela de exportação
Isso criará um arquivo nomeado
example.sql
no caminho mencionado ecreate table
gravará o comando sql para criar a tabelatableName
.Importar dados para a tabela
Este comando precisa de um arquivo sql contendo dados em forma de
insert
instruções para a tabelatableName
. Todas asinsert
instruções serão executadas e os dados serão carregados.fonte
tableName
nome não é necessário para todas as versões do MySQL e produz erros, portanto, você pode precisar omiti-lo!Exportar:
Importar :
Banco de dados inteiro :
Mesa única :
fonte
Todas essas opções estão corretas, se você tiver a opção de reexportar os dados.
Mas se você precisar usar um arquivo SQL existente e usar uma tabela específica, esse script perl no blog TimeSheet , permitirá extrair a tabela para um arquivo SQL separado e importá-la.
fonte
Importando a tabela única
Para importar uma única tabela para um banco de dados existente, você usaria o seguinte comando:
Nota: É melhor usar o caminho completo do arquivo sql tableName.sql
fonte
Linha de comando
Importar / Exportar para tabela única:
Exportando esquema da tabela
Isso criará um arquivo chamado test.sql e cria o comando table sql para criar a tabela table_name.
Importando dados para a tabela
Verifique se o arquivo test.sql está no mesmo diretório, se não navegar pelo caminho e, em seguida, execute o comando
fonte
mysql -u your_user_name -p database_name < test.sql
.account_product_prices
; 23 / *! 40101 SET @saved_cs_client = @@ character_set_client /; 24 / ! 40101 SET character_set_client = utf8 * /; 25 CREATE TABLEaccount_product_prices
(`Primeiro, entre no seu banco de dados e verifique se a tabela do banco de dados que você deseja importar não está disponível no seu banco de dados.
Se estiver disponível, exclua a tabela usando o comando Caso contrário, ocorrerá um erro ao importar a tabela.
Em seguida, vá para a pasta na qual você tem o
.sql
arquivo a ser importado e execute o seguinte comando no seu terminalO terminal solicitará que você digite a senha. Digite e verifique o banco de dados.
fonte
Funciona corretamente ...
observe que o arquivo .sql especificou seu banco de dados atual.
fonte
Podemos importar uma única tabela usando o CMD, como abaixo:
fonte
se você já possui a tabela desejada no seu banco de dados, primeiro exclua-a e execute o comando abaixo:
fonte
Do servidor para o local (Exportando)
Do local para o servidor (Importando)
fonte
Também está funcionando. Em forma de comando
fonte
Seria combinação de
EXPORT INTO OUTFILE
eLOAD DATA INFILE
Você precisa exportar essa tabela única com
EXPORT INTO OUTFILE
, isso exportará dados da tabela para um arquivo. Você pode importar essa tabela específica usandoLOAD DATA INFILE
Consulte doc1 , doc2
fonte
você pode fazer isso no comando mysql em vez do comando linux.
1.login seu mysql.
2.excute isso no comando mysql:
use DATABASE_NAME;
SET autocommit=0 ; source ABSOLUTE_PATH/TABLE_SQL_FILE.sql ; COMMIT ;
fonte
fonte
fonte
Usar um banco de dados temporário pode ser uma solução, dependendo do tamanho do banco de dados.
fonte
Para importar uma tabela no banco de dados, se a tabela é já existem em seguida, adicione essa linha em seu arquivo sql
DROP TABLE IF EXIST 'table_name'
comando e corrermysql -u username -p database_name < import_sql_file.sql
. Por favor, verifique o caminho do arquivo sql antes de executar o comando.fonte