MySQL Forums
Forum List  »  Italian

Errore Backup MySQL
Posted by: marco bonciolini
Date: December 02, 2013 08:05AM

Buonasera a tutti, su un server Windows Server 2008 ho un problema con il backup dei database presenti su MySQL 5.1.68

Per effettuare il backup ho schedulato in piccolo batch:

codice:
@echo off:: Set some variables
set backupdir="o:\databasebck"
set mysqldir="C:\Program Files\MySQL\MySQL Server 5.1"
set mysqldatadir="C:\ProgramData\MySQL\MySQL Server 5.1\data"
set logdir="C:\ProgramData\MySQL\MySQL Server 5.1\Log"
set dbuser=xxx
set dbpass=xxx
rem set zip="ENTER_VALUE_HERE"
rem set mailer="ENTER_VALUE_HERE"
rem set to="ENTER_VALUE_HERE"
rem set from="ENTER_VALUE_HERE"
rem set server="ENTER_VALUE_HERE"
set endtime=0


:DODIR


:: Do DIR of backupdir to establish network
DIR %backupdir%


:GETTIME


:: get the date and then parse it into variables
for /F "tokens=2-4 delims=/ " %%i in ('date /t') do (
set mm=%%i
set dd=%%j
set yy=%%k
)


:: get the time and then parse it into variables
for /F "tokens=5-8 delims=:. " %%i in ('echo.^| time ^| find "current" ') do (
set hh=%%i
set ii=%%j
set ss=%%k
)


:: If this is the second time through then go to the end of the file
if "%endtime%"=="1" goto END


:: Create the filename suffix
set fn=_%dd%-%mm%-%yy%_%hh%-%mm%-%ss%


:: Switch to the data directory to enumerate the folders
pushd %mysqldatadir%


:: Write to the log file
echo Beginning mysqldump Process > %logdir%\MySQL_LOG%fn%.txt
echo Start Time = %yy%-%mm%-%dd% %hh%:%ii%:%ss% >> %logdir%\MySQL_LOG%fn%.txt
echo --------------------------- >> %logdir%\MySQL_LOG%fn%.txt
echo. >> %logdir%\MySQL_LOG%fn%.txt


:: Loop through the data structure in the data dir to get the database names
for /d %%f in (*) do (


:: Create the backup sub-directory is it does not exist
if not exist %backupdir%\%%f\ (
echo Making Directory %%f
echo Making Directory %%f >> %logdir%\MySQL_LOG%fn%.txt
mkdir %backupdir%\%%f
) else (
echo Directory %%f Exists
echo Directory %%f Exists >> %logdir%\MySQL_LOG%fn%.txt
)


:: Run mysqldump on each database and compress the data by piping through gZip
rem echo Backing up database %%f%fn%.sql.gz
rem echo Backing up database %%f%fn%.sql.gz >> %logdir%\MySQL_LOG%fn%.txt
%mysqldir%\bin\mysqldump.exe --user=%dbuser% --password=%dbpass% --databases %%f --opt --quote-names --allow-keywords --complete-insert > %backupdir%\%%f\%%f%fn%.sql
rem echo Done...
rem echo Done... >> %logdir%\MySQL_LOG%fn%.txt
)


:: Write to the log file
echo. >> %logdir%\MySQL_LOG%fn%.txt
echo --------------------------- >> %logdir%\MySQL_LOG%fn%.txt
echo Analyzing, optimising and repairing databases
echo Analyzing, optimising and repairing databases >> %logdir%\MySQL_LOG%fn%.txt
%mysqldir%\bin\mysqlcheck.exe --all-databases --medium-check --auto-repair --force --use-frm --optimize --analyze --check-only-changed --user=%dbuser% --password=%dbpass%
echo Done...
echo Done... >> %logdir%\MySQL_LOG%fn%.txt


:: Go back and get the end time for the script
set endtime=1
goto :GETTIME


:END
:: Write to the log file
echo. >> %logdir%\MySQL_LOG%fn%.txt
echo --------------------------- >> %logdir%\MySQL_LOG%fn%.txt
echo MySQLDump Process Finished >> %logdir%\MySQL_LOG%fn%.txt
echo End Time = %yy%-%mm%-%dd% %hh%:%ii%:%ss% >> %logdir%\MySQL_LOG%fn%.txt
echo. >> %logdir%\MySQL_LOG%fn%.txt


:: Return to the scripts dir
popd


:: Send the log file in an e-mail
rem %mailer%\blat.exe %logdir%\MySQL_LOG%fn%.txt -to %to% -f %from% -server %server%
rem EXIT
Il problema è questo, alcuni database me li backuppa e altri no..
Presumo che il problema sia nel nome del database stesso perché i db contenenti dei segni nei nomi non me li salva

L'errore è questo:

codice:
Making Directory database@002dtest
mysqldump: Got error: 1049: Unknown database 'database@002dtest' when selecting
the database
Il database si chiamerebbe database-test

Come potrei risolvere?

Options: ReplyQuote


Subject
Views
Written By
Posted
Errore Backup MySQL
2809
December 02, 2013 08:05AM


Sorry, you can't reply to this topic. It has been closed.

Content reproduced on this site is the property of the respective copyright holders. It is not reviewed in advance by Oracle and does not necessarily represent the opinion of Oracle or any other party.