Howto: mysqldump cron em godaddy

1

Eu tenho um banco de dados MySql que eu quero fazer backup em um arquivo diariamente. (Que depois baixarei para backup fora do servidor).

Eu configurei o seguinte comando no meu crontab (executado diariamente):

mysqldump -–opt -Q -h [myhost] -u myusername -–password=***** ebooklibrary > /fullpath.../_db_backups/openelibrary.sql

O nome do banco de dados é ebooklibrary .

Estou constantemente recebendo este erro:

mysqldump: Got error: 1045: Access denied for user 'myusername'@'97.74.144.139' (using password: NO) when trying to connect

Como posso consertar isso, ou fazê-lo corretamente, para que o mysqldump seja executado diariamente?

Obrigado.

Usando o shell, o seguinte comando funcionou:

 mysql -h myhost -u myusername -p"*****" ebooklibrary
    
por Am. 04.02.2010 / 05:37

3 respostas

3

Eu acredito que o assunto é como você especifica a senha. Experimente

mysqldump –opt -Q -h [myhost] -u myusername –p"*****" ebooklibrary > /fullpath.../_db_backups/openelibrary.sql
    
por 04.02.2010 / 06:02
1

Ao especificar uma senha na linha de comando, você precisa usar

--password="xxx"

em vez de

-password="xxx"

Observe o traço duplo no primeiro comando.

EDIT: Você sabe se o servidor DB é o mesmo servidor que o servidor web? Em caso afirmativo, você tentou omitir o host? Com esse pensamento, você também tentou --host = 127.0.0.1 (Apenas tentei isso na minha máquina - parece muito anal sobre o nome do host correto)

    
por 07.02.2010 / 14:11
-1

Existem 2 motivos prováveis para este erro.

1) Sua senha tem caracteres especiais como !%# etc., se este for o caso, você pode escapar do personagem colocando uma barra invertida '\' antes dele.

2) Este usuário realmente não tem permissão de acesso do endereço IP mencionado no erro. A solução é fornecer direitos a esse usuário a partir do IP especificado ou não tentar usar esse host para acessar o mysql.

Você também pode usar o seguinte comando se tiver acesso ao CLI do servidor (se você não especificar nenhum host, o mysql tentará se conectar ao host local):

mysqldump -uUSER -pPASS ebooklibrary > /fullpath.../_db_backups/openelibrary.sql

ou você pode usar a seguinte sintaxe se estiver executando o comando remotamente.

mysqldump -h IP -uUSER -pPASS ebooklibrary > /fullpath.../_db_backups/openelibrary.sql

Você deve verificar se possui os direitos necessários para realizar o despejo, conforme especificado no mysqldump página.

    
por 22.02.2013 / 12:00

Tags