Respostas:
mysqldump --no-create-info ...
Além disso, você pode usar:
--skip-triggers
: se você estiver usando gatilhos--no-create-db
: se você estiver usando a --databases ...
opção--compact
: se você quiser se livrar de comentários extrasmysqldump -u USERNAME -h HOST --no-create-info --skip-triggers YOURDATABASENAME YOURTABLENAME --where='id=12345678'
Access denied for user ... to database '...' when doing LOCK TABLES
, use--single-transaction
--where
. Por exemplo,--where="id=2"
Isso deve funcionar:
# To export to file (data only)
mysqldump -u [user] -p[pass] --no-create-info mydb > mydb.sql
# To export to file (structure only)
mysqldump -u [user] -p[pass] --no-data mydb > mydb.sql
# To import to database
mysql -u [user] -p[pass] mydb < mydb.sql
NOTA: não há espaço entre -p
&[pass]
--no-create-db
é redundante ao usar--no-create-info
-p
está bom
ps -ef
)
-p
opção mysqldump
solicita a senha.
>> man -k mysqldump [enter in the terminal]
você encontrará a explicação abaixo
--no-criar-informação, -t
Não escreva instruções CREATE TABLE que recriam cada tabela despejada. Nota Esta opção não exclui instruções que criam grupos de arquivos de log ou espaços de tabela a partir da saída do mysqldump; no entanto, você pode usar a opção --no-tablespaces para essa finalidade.
--no-data, -d
Não escreva nenhuma informação de linha da tabela (ou seja, não despeje o conteúdo da tabela). Isso é útil se você deseja despejar apenas a instrução CREATE TABLE da tabela (por exemplo, para criar uma cópia vazia da tabela carregando o arquivo de despejo).
# To export to file (data only)
mysqldump -t -u [user] -p[pass] -t mydb > mydb_data.sql
# To export to file (structure only)
mysqldump -d -u [user] -p[pass] -d mydb > mydb_structure.sql
Se você deseja apenas as consultas INSERT, use o seguinte:
mysqldump --skip-triggers --compact --no-create-info
--compact
se livrar das declarações de comentários extras
Sugeriria usar o seguinte trecho. Funciona bem mesmo com tabelas enormes (caso contrário, você abriria o despejo no editor e removeria coisas desnecessárias, certo?;)
mysqldump --no-create-info --skip-triggers --extended-insert --lock-tables --quick DB TABLE > dump.sql
É necessário pelo menos o mysql 5.x , mas quem executa coisas antigas hoje em dia .. :)
Apenas despeje os dados no formato de texto delimitado .
Ao tentar exportar dados usando a resposta aceita, recebi um erro:
ERROR 1235 (42000) at line 3367: This version of MySQL doesn't yet support 'multiple triggers with the same action time and event for one table'
Como acima mencionado:
mysqldump --no-create-info
Exportará os dados, mas também exportará as instruções de criação de gatilho. Se você gosta de sua estrutura de banco de dados de saída (que também inclui gatilhos) com um comando e, em seguida, usando o comando acima para obter os dados, você também deve usar '--skip-triggers'.
Então, se você quiser apenas os dados:
mysqldump --no-create-info --skip-triggers