Estou me afastando do Linode porque não tenho as habilidades necessárias para administrador de sistemas Linux; Antes de concluir a transição para um serviço mais amigável para noob, preciso fazer o download do conteúdo de um banco de dados MySQL. Existe uma maneira de fazer isso na linha de comando?
mysql
command-line
command-line-arguments
linode
Phillip Copley
fonte
fonte
Respostas:
Você pode fazer isso usando a função de linha de comando mysqldump .
Por exemplo:
Se for um banco de dados inteiro, então:
Se forem todos os bancos de dados, então:
Se houver tabelas específicas em um banco de dados, então:
Você pode até compactar automaticamente a saída usando gzip (se o seu banco de dados for muito grande):
Se você quiser fazer isso remotamente e tiver acesso ao servidor em questão, o seguinte funcionaria (presumindo que o servidor MySQL esteja na porta 3306):
Ele deve soltar o
.sql
arquivo na pasta da qual você executa a linha de comando.EDIT: atualizado para evitar a inclusão de senhas nos comandos da CLI, use a
-p
opção sem a senha. Ele solicitará e não será gravado.fonte
wget
ouscp
será necessário para recuperar o arquivo após a compilação.>
para salvar, prefiro usá-lo-r
para evitar problemas com caracteres estrangeiros ou o pesadelo referente a problemas de codificação, conforme declarado neste artigo .--result-file=db_backup.sql
vez de> db_backup.sql
. Cite a documentação do MySQL : "O UTF-16 não é permitido como um conjunto de caracteres de conexão (consulte Conjuntos de caracteres de cliente não permitidos ), para que o arquivo de despejo não seja carregado corretamente. Para contornar esse problema, use a--result-file
opção que cria a saída em Formato ASCII ".Nas versões mais recentes do mysql, pelo menos na minha, você não pode colocar seu passe diretamente no comando.
Você precisa executar:
mysqldump -u [uname] -p db_name > db_backup.sql
e depois solicitará a senha.
fonte
-p
opção e real senha faz o truqueSe estiver baixando do servidor remoto, aqui está um exemplo simples:
O -p indica que você digitará uma senha, não relacionada ao nome do db. Depois de inserir o comando, você será solicitado a fornecer a senha. Digite e pressione enter.
fonte
No Windows, você precisa especificar a caixa do mysql onde reside o mysqldump.exe.
salve isso em um arquivo de texto como backup.cmd
fonte
mysql
comandos de qualquer lugar sem estar no diretório.Abra o prompt de comando e digite diretamente este comando. Não entre no mysql e digite este comando.
fonte
Vá para o diretório de instalação do MySQL e abra o cmd a partir daí. Em seguida, execute o comando abaixo para obter um backup do seu banco de dados.
fonte
Basta digitar
mysqldump
oumysqldump --help
no seu cmd será exibidohow to use
Aqui está o meu resultado cmd
fonte
Se você estiver executando o MySQL diferente da porta padrão:
fonte
Para quem deseja digitar a senha na linha de comando. É possível, mas é recomendável passá-lo entre aspas para que o caractere especial não cause nenhum problema.
fonte
Use this Se você possui o banco de dados com o nome archiedb, use este mysql -p --databases archiedb> /home/database_backup.sql
Supondo que isso seja Linux, escolha onde o arquivo de backup será salvo.
fonte
Para usuários do Windows, você pode ir para a pasta mysql para executar o comando
por exemplo
fonte
Nota: Esta etapa ocorre somente após o descarte do arquivo MySQL (que a maioria das respostas acima abordou).
Ele pressupõe que você tenha o referido arquivo de despejo no servidor remoto e agora deseja baixá-lo no computador local.
Para baixar o
.sql
arquivo despejado do servidor remoto para o computador local, façafonte