Eu tenho um .sql
arquivo com uma exportação de phpMyAdmin
. Quero importá-lo para um servidor diferente usando a linha de comando.
Eu tenho uma instalação do Windows Server 2008 R2. Coloquei o .sql
arquivo na unidade C e tentei este comando
database_name < file.sql
Não está funcionando. Eu recebo erros de sintaxe.
- Como posso importar este arquivo sem problemas?
- Preciso criar um banco de dados primeiro?
mysql
sql
command-line
import
Jaylen
fonte
fonte
database < file.sql
não se parece com qualquer comando para mim, e se você ver alguns erros de sintaxe, por favor compartilhá-losRespostas:
Tentar:
Verifique as opções do MySQL .
Nota-1: É melhor usar o caminho completo do arquivo SQL
file.sql
.Nota-2: Use
-R
e--triggers
para manter as rotinas e gatilhos do banco de dados original. Eles não são copiados por padrão.Nota-3 Você pode ter que criar o banco de dados (vazio) a partir do mysql se ele já não existir e o SQL exportado não contiver
CREATE DATABASE
(exportado com--no-create-db
ou-n
opção), antes de poder importá-lo.fonte
CREATE DATABASE db-name;
Um uso comum do mysqldump é para fazer um backup de um banco de dados inteiro:
Você pode carregar o arquivo de despejo de volta no servidor assim:
UNIX
O mesmo no prompt de comando do Windows :
PowerShell
Linha de comando do MySQL
fonte
mysql>
linha de comando? Você deve usar o shell.mysql
diretamente do Powershell?Quanto ao tempo necessário para importar arquivos enormes: o mais importante é que leva mais tempo porque a configuração padrão do MySQL é
autocommit = true
. Você deve configurá-lo antes de importar seu arquivo e depois verificar como a importação funciona como uma gema.Você só precisa fazer o seguinte:
fonte
source
comando que eu esqueci. A maioria de nós deseja fazer isso enquanto estiver logado como comando independente, entre outros comandos, não o oneliner padrão de login> injetar> logout na parte superior do Google Serps.autocommit=0
parte fez um mundo de diferença em termos de velocidade.autocommit=0
funcionará em arquivos maiores? como arquivo sql de 8gb.autocommit
. Vale a pena verificar o despejo de banco de dados em um editor, já pode começarSET autocommit=0;
.Entre todas as respostas, para o problema acima, esta é a melhor:
fonte
Podemos usar este comando para importar o SQL da linha de comando:
Por exemplo, se o nome de usuário for
root
e a senha forpassword
. E você tem um nome de banco de dados comobank
e o arquivo SQL ébank.sql
. Então, basta fazer o seguinte:Lembre-se de onde está o seu arquivo SQL. Se o seu arquivo SQL estiver na
Desktop
pasta / diretório, acesse o diretório da área de trabalho e digite o comando da seguinte maneira:E se você estiver no
Project
diretório e seu arquivo SQL estiver noDesktop
diretório Se você deseja acessá-lo a partir doProject
diretório, faça o seguinte:fonte
-p
epassword
mysql -u root -p"password" bank < bank.sql
mysql -u username -ppassword db_name < file.sql
.bash_history
A maneira mais fácil de importar para o seu esquema:
Entre no mysql e execute os comandos abaixo mencionados.
fonte
Se você já possui o banco de dados, use o seguinte para importar o
dump
ou osql
arquivo:se você não precisar criar o banco de dados relevante (vazio) no MySQL, para esse primeiro logon no
MySQL
console, execute o seguinte comando no terminal ou no cmdE quando solicitado, forneça a senha.
Em seguida, crie um banco de dados e use-o:
Em seguida, importe o
sql
ou odump
arquivo para o banco de dados deNota: se o seu terminal não estiver no local onde o arquivo
dump
ousql
existe, use o caminho relativo acima.fonte
1.
Crie o banco de dados, se não existir.2.
Aponte o arquivo de origem para o banco de dados criado para importar dados / metadados.bin
pasta do servidor mysql.source databasefilename.sql
eEnterfonte
Uma solução que funcionou para mim está abaixo:
fonte
Para despejar um banco de dados em um arquivo SQL, use o seguinte comando.
Para importar um arquivo SQL para um banco de dados (verifique se você está no mesmo diretório que o arquivo SQL ou forneça o caminho completo para o arquivo), faça:
fonte
Vá para o diretório em que você tem o MySQL executável.
-u
para nome de usuário e-p
solicitar a senha:fonte
Eu acho que vale a pena mencionar que você também pode carregar um arquivo compactado com gzip
zcat
como mostrado abaixo:fonte
Para importar um único banco de dados, use o seguinte comando.
Para importar vários despejos de banco de dados, use o seguinte comando.
fonte
fonte
Para importar vários arquivos SQL de uma vez, use o seguinte:
Para importação simples:
Para WAMP :
Para XAMPP:
fonte
Você não precisa especificar o nome do banco de dados na linha de comandos se o arquivo .sql contiver
CREATE DATABASE IF NOT EXISTS db_name
eUSE db_name
instruções.Apenas verifique se você está se conectando a um usuário com permissões para criar o banco de dados, se o banco de dados mencionado no arquivo .sql não existir.
fonte
Importar um banco de dados
Vá para dirigir:
Login no MySQL
Ele solicitará pwd. Digite:
Selecione o banco de dados
Forneça o nome do arquivo
fonte
Vá para o diretório em que você possui o MySQL.
Também para despejar todos os bancos de dados, use a
-all-databases
opção e nenhum nome de banco de dados precisa ser especificado mais.Ou você pode usar alguns clientes da GUI como o SQLyog para fazer isso.
fonte
Usar:
Use a ajuda do MySQL para detalhes -
mysql --help
.Eu acho que essas serão opções úteis em nosso contexto:
O que é divertido, se estamos importando um banco de dados grande e sem uma barra de progresso. Use o Pipe Viewer e veja a transferência de dados através do pipe
Para Mac,
brew install pv
Para o Debian / Ubuntu
apt-get install pv
,.Para outros, consulte pv - Pipe Viewer
fonte
yum install pv
Adicione a
--force
opção :fonte
Embora a maioria das respostas aqui apenas mencione o comando simples
hoje é bastante comum que bancos de dados e tabelas possuam utf8-collation, onde esse comando não é suficiente. Tendo o utf8-collation nas tabelas exportadas, é necessário usar este comando:
Surley também funciona para outros charsets, como mostrar a notação correta pode ser visto aqui:
Um comentário mencionou também que, se um banco de dados nunca existir, é necessário primeiro criar um banco de dados vazio. Isso pode estar correto em alguns casos, mas depende do arquivo de exportação. Se o arquivo exportado já incluir o comando para criar o banco de dados, ele nunca precisará ser criado em uma etapa separada, o que pode causar um erro na importação. Portanto, na importação, é recomendável consultar primeiro o arquivo para saber quais comandos estão incluídos nele; na exportação, é recomendável observar as configurações, especialmente se o arquivo for muito grande e difícil de ler em um editor.
Ainda existem mais parâmetros para o comando listados e explicados aqui:
Se você usar outra versão do banco de dados, considere procurar também a versão correspondente do manual. Os links mencionados se referem à versão 5.7 do MySQL.
fonte
Para exportar um banco de dados:
Para importar um banco de dados:
fonte
O comando a seguir funciona para mim na linha de comando (cmd) no Windows 7 no WAMP .
fonte
Você pode tentar esta consulta.
Exportação:
Importar:
e detalhes seguindo este link:
https://chartio.com/resources/tutorials/importing-from-and-exporting-to-files-using-the-mysql-command-line/
fonte
Eu pensei que poderia ser útil para aqueles que estão usando o Mac OS X :
Substitua
xampp
pormamp
ou outros servidores da web.fonte
Às vezes, a porta definida e o endereço IP do servidor desse banco de dados também são importantes ...
fonte
Importe para o banco de dados:
Exporte do banco de dados:
Após esses comandos, um prompt solicitará sua senha do MySQL.
fonte
Para fins de backup, crie um arquivo BAT e execute-o usando o Agendador de tarefas . Será necessário um backup do banco de dados; copie a linha a seguir e cole no Bloco de notas , salve o arquivo .bat e execute-o no seu sistema.
fonte
As etapas a seguir ajudam a carregar
file.sql
no banco de dados MySQL.Passo 1: Carregar
file.sql.zip
para qualquer diretório e descompacte láNota :
sudo apt-get install unzip
:sudo apt-get unzip file.sql.zip
Passo 2: Agora navegue para esse diretório. Exemplo:
cd /var/www/html
Etapa 3:
mysql -u username -p database-name < file.sql
digite a senha e aguarde até o upload ser concluído.
fonte
Continuei correndo para o problema em que o banco de dados não foi criado.
Eu consertei assim
fonte