mysql sql coldfusion coldfusion-9

Copia de seguridad de MySQL db con Coldfusion



coldfusion-9 (1)

Hacer una copia de seguridad de los archivos de la base de datos es una buena idea, pero si los respalda en la misma unidad, y la unidad falla, está jodido. Realizo una copia de seguridad de mis bases de datos a diario en mi sistema local. Aquí está el script que uso en un archivo .bat

@ECHO OFF @REM Set dir variables. Use ~1 format in win2k SET basedir={directory where zip files will be put} SET workdir={Working directory} SET mysqldir=c:/PROGRA~1/mysql/mysqls~1.5/bin SET gzipdir=c:/PROGRA~2/GnuWin32/bin SET mysqlpassword={db password} SET mysqluser={db user} SET host={host IP or domain name} for /f "tokens=1-4 delims=/ " %%a in (''date/t'') do ( set mm=%%a set dd=%%b set yy=%%c ) ECHO Check connection PING -n 1 %host%|find "Reply from " >NUL IF NOT ERRORLEVEL 1 goto :SUCCESS IF ERRORLEVEL 1 goto :END :SUCCESS ECHO Connection found, run backup @REM Change to mysqldir CD %mysqldir% @REM dump database. This is all one line mysqldump -h %host% -u %mysqluser% -p%mysqlpassword% --databases {space delimited list of databases to backup >%workdir%/backup.sql @REM Change to workdir CD %workdir% @REM Zip up database %gzipdir%/gzip.exe backup.sql @REM Move to random file name MOVE backup.sql.gz %basedir%/%yy%_%mm%_%dd%_backup.gz @REM Change back to base dir CD %basedir% :END ECHO No connection, do not run

Uso el programador de tareas de Windows para ejecutar esto todas las noches. Probablemente podría actualizarlo para eliminar copias de seguridad anteriores.

Deberá asegurarse de tener instalado gzip.

Esto colocará copias de la base de datos en su sistema local; a continuación, uso un servicio de copia de seguridad para hacer una copia de seguridad de las copias de seguridad en otro sistema externo.

Lo que quiero hacer es ejecutar una tarea de respaldo en Coldfusion (probablemente en una tarea programada) que hará una copia de seguridad de la estructura y los datos en una base de datos MySql.

El servidor de alojamiento que uso siempre bloquea el uso de cfexecute por razones de seguridad, así que no puedo usar mysqldump.

p.ej

<cfexecute name="c:/program files/mysql/mysql server 4.1/bin/mysqldump" arguments="--user=xxx --password=yyy dharma" outputfile="#expandPath("./ao.sql")#" timeout="30"/>

(De Raymond Camden)

¿Hay alguna otra opción disponible para mí?