um aus bestehenden mysqldumps die user@host definer zu entfernen kann man folgendes tun
~ $ sed -r -e "s/\/\*[^\/]*DEFINER.*\*\///g" < mysqldump.sql > mysqldump-exdefiner.sql
um aus bestehenden mysqldumps die user@host definer zu entfernen kann man folgendes tun
~ $ sed -r -e "s/\/\*[^\/]*DEFINER.*\*\///g" < mysqldump.sql > mysqldump-exdefiner.sql
um hostunabhängige mysql dumps zu erzeugen, muss man die definer aus dem jeweiligen dump entfernen.
mit sed kann man das gleich beim erzeugen des dumps:
mysqldump database -ufoo -pbar -hlocalhost | sed "s/\/\*[^\/]*DEFINER.*\*\///g" > dump_without_definer.sql
um mit ant alte dateien per find/pipe/xargs zu entfernen, kann man den ant exec befehl verwenden.
<target name="dump_cleanup" description="dump cleanup - remove old backup db dumps"> <echo message="cleanup backup dir - remove old db dumps"/> <exec executable="bash" dir="${backups}"> <arg value="-c"/> <arg line='"find -P . -maxdepth 1 -type f -ctime +4 -print0 | xargs -0 rm -f"'/> </exec> </target>