Mysqldump reclama sobre os bancos de dados escolhidos, independentemente da linha de comando

18

Mysqldump reclama sobre opções de linha de comando que eu nunca especifiquei. Não tenho aliases de shell nem um conjunto de arquivos .my.cnf personalizado. O que estou fazendo errado?

Usando a opção --database long:

$ mysqldump --user cloud -p --database cloud > backup.mysqldb
Warning: Using unique option prefix database instead of databases is deprecated and  will be removed in a future release. Please use the full name instead.
Warning: mysqldump: ignoring option '--databases' due to invalid value 'cloud'
Warning: Using unique option prefix database instead of databases is deprecated and will be removed in a future release. Please use the full name instead.

Usando a opção --databases long:

$ mysqldump --user cloud -p --databases cloud > backup.mysqldb
Warning: Using unique option prefix database instead of databases is deprecated and will be removed in a future release. Please use the full name instead.
Warning: mysqldump: ignoring option '--databases' due to invalid value 'cloud'

Usando a opção --all-databases long:

$ mysqldump --user cloud -p --all-databases > backup.mysqldb
Warning: Using unique option prefix database instead of databases is deprecated and will be removed in a future release. Please use the full name instead.
Warning: mysqldump: ignoring option '--databases' due to invalid value 'cloud'

Usando apenas o nome do banco de dados:

$ mysqldump --user cloud -p cloud > backup.mysqldb
Warning: Using unique option prefix database instead of databases is deprecated and will be removed in a future release. Please use the full name instead.
Warning: mysqldump: ignoring option '--databases' due to invalid value 'cloud'

E, finalmente, especificando nada :

$ mysqldump --user cloud -p > backup.mysqldb
Warning: Using unique option prefix database instead of databases is deprecated and will be removed in a future release. Please use the full name instead.
Warning: mysqldump: ignoring option '--databases' due to invalid value 'cloud'
    
por andyn 23.02.2015 / 09:51

1 resposta

24

No seu arquivo .my.cnf options, você provavelmente tem o parâmetro database especificado para todos os clientes, mas o mysqldump não gosta desse parâmetro. Portanto, não liste esse parâmetro para todos os clientes em seu arquivo de opções.

Por exemplo, aqui está como eu resolvi isso, então o cliente mysql ainda funciona sem especificar o banco de dados (padrão para o nome 'walkin') e o mysqldump não reclama:

Antes:

$ cat ~/.my.cnf
[client]
user=root
host=127.0.0.1
password="root"
database=walkin

Depois:

$ cat ~/.my.cnf
[client]
user=root
host=127.0.0.1
password="root"

[mysql]
database=walkin
    
por 09.10.2015 / 03:44

Tags