2011-11-07 10 views
3

私の質問は少し具体的ですが、私は誰かが問題を経験したことを願っています。MySql for Windows、MySql Administrator:スケジュールされたバックアップが機能しない

Windows用MySqlをインストールしたWindows 2008サーバーを実行しています。それはMySql 5.2であり、そのパッケージには「MySql Administrator」が含まれています。ここで特定のデータベースのバックアップを作成できます。私がバックアップを構成し、午前3時頃に毎日行う必要があると言うと、自動的には動作しません。私が ".SQL"ファイルを保存してから、バックアップを実行すると "今すぐバックアップを実行"を押すだけです。自動的に起動するように要求すると、何も作成されず、ログファイルも作成されません。私は選択されたフォルダの権利をチェックしており、権限の問題を排除するためのすべての権限を「すべてのユーザー」というユーザーに追加しました。無効。

私は一日のうちにグーグルで行ってきましたが、私はこれに対する解決策を見つけることができません。 MySQLの管理者による私の自動化されたバックアップがMS Windows 2008で動作しない理由とログファイルを作成しない理由を知っていますか?

答えて

1

Windowsの「cron」ジョブに関連付けられている可能性があります。とにかく、これは私のためにトリックを行う:あなたが手ですべてを行う必要があるが、もちろん

http://realm3.com/articles/how_to_schedule_regular_mysql_backups_in_windows

も優れています。私はPostgreSQLで同じ問題を抱えています。これは、 "at"のウィンドウがlinux "cron"と異なるためです。それ以来、私は自分の "cron"仕事を始めました。

また、この点を確認してください。 http://kedar.nitty-witty.com/blog/scheduled-backup-mysql-administrator-windows-scheduler-odd

はそれが役に立てば幸い! :)

+1

返信ありがとう!私は実際に、この場所に来る前にmysqldump.exeに直接指されたバッチファイルオプションを使用しようとしましたが、失敗しました。私はもう一度それを試してみましたが、今はうまくいっていました。私は実際にポート3307でMySQLを使用しています。すべてのコマンドはポート3306を標準として使用していますので、mysqldump(--port = 3307)内のオプションを移植するのに使っていました。だから私はもう一度それを試してくれてありがとう。それでもWindows MySQLの管理者インターフェイスがトリックをしない理由はまだありません... MySQL管理者自身の解決策が残っているので、このチケットを開いたままにします – Nehbur

+0

何とかお手伝いしてうれしいです! :) –

1

私は他の人々が楽しむために私の調査結果を投稿します。

私の代わりに私が@mOrSa

の提案を使用私の所見はこれらは、自動的に動作するようにMySQLの管理者のバックアップ機能を取得できませんでした: 私はこのコードを使用してバッチファイルを作りました:

@echo off 
set zy=2011 
set zm=1 
set zd=17 
set zz = ((zy*100)+zm)*100+zd 
Set hr=%TIME:~0,2% 
Set mn=%TIME:~3,2% 
echo Running dump... 
C:\Progra~1\MySQL\MYSQLS~1.5\bin\mysqldump -uuser -password --port=3307 --result-file="c:\MySqlBackups\backup_%zz%_%hr%%mn%.sql" meibergen_dbo 
echo Done! 
echo Deleting old files 
forfiles /P "C:\MySqlBackups" /S /M *.sql /D -7 /C "cmd /c del @PATH" 
echo Done! 

これにより、指定されたフォルダ内の.SQLファイルが "backup_20110825_14:54.sql"の名前形式になります。また、そのフォルダ内の7日以上経過したすべてのファイルを削除します。私はWindows Server 2008を持っているので、 "forfiles.exe"というファイルは標準でsystem32フォルダにインストールされています。そのプログラムをお持ちでない場合は、どこかで無料でダウンロードできます。

その後、Windowsタスクスケジューラでこのバッチファイルを実行するスケジュールされたタスクを設定しました。予定表に適切な権利を与えてください。毎日実行されます。

2

win7でもバージョン1.2.17を使ってみました。私は同じ問題に直面しました.MySQL ADMINはWindowsスケジューラ経由でバックアップをスケジュールしています。私は本当に理由はわかりませんが、ADMINアカウントを持つユーザーのもとでバックアップをスケジュールすると(私が新しい作成プロジェクトを保存したとき)、それは動作しませんでした。私は標準のアカウントでバックアップをスケジュールしたとき、それは正常に動作しました。この問題を解決するために、私はWIN 7に新しい標準アカウントを定義しました。私は私のプライマリアカウントの下で7を獲得し、新しいアカウントの下でバックアップをスケジュールするためにログインしています。今それは正常に動作します。

0

簡単な方法は、保存された接続を作成することです(MySQL Administrator 1.2.17でWin7とWin2008の両方でテストできます)download it from here, it's among MySQL GUI tools)。

  1. オープンMySQLの管理者は、その後、ポップアップウィンドウの左側にある「接続」を選択するには>メニューツールのオプション

  2. を行くと、ボタン「新しい 接続」をヒット。

  3. 接続の値を入力してください:ユーザー名、パスワード、 ホスト...保存してください。

  4. MySQLのAdministartorクローズし、再オープン、それは、しかし この時間はあなただけ ステップで作成した(3)選択リストから、(選択リストは、第1回のフィールドで新しい格納されている接続を選択して接続しますログインウィンドウ)

  5. バックアップを作成してスケジュールを設定すると、スケジュールが魅力的に機能します。

3

mysql> grant select,lock tables on foo.* to [email protected] identified by'backup'; 
mysql> flush privileges; 

は、次のようなバッチファイルを作成し、スケジュール最小権限を持つユーザーを作成し、IT * デシベル名+日時と指定したパスで、この意志バックアップファイル *

@echo off 
set mySqlPath=C:\[path to my sql]\mysql5.1.36 
set dbUser=bar 
set dbPassword=backup 
set dbName=MyDB1 

set hr=%time:~0,2% 
if "%hr:~0,1%" equ " " set hr=0%hr:~1,1% 

set file=%dbName%.%date:~-4,4%%date:~-10,2%%date:~-7,2%_%hr%%time:~3,2%%time:~6,2%.sql 
set path=C:\[path to folder]\mysql_bak 

echo Running dump for database %dbName% ^> ^%path%\%file% 
"%mySqlPath%\bin\mysqldump.exe" -u %dbUser% -p%dbPassword% --result-file="%path%\%file%" %dbName% 
echo Done! 
0

私はそれが古い問題だと知っていますが、私は最近、同じ問題を抱えていました。問題を解決する方法を見つけることができませんでしたが、イベントログに情報がいくつか見つかりました。私にそれを見せてください)ので、私はイベントログに私とぼんやりした問題を修正した同じ名前の新しい接続を作成しました。

+0

時間があれば、あなたの答えをもっと具体的に更新することを検討していれば、あなたの答えはありがとうございます。どのように新しい接続を作成するのですか? –

2

私は解決策を得ました。スケジュールバックアップを作成するときは、MySQL管理者がシステムのユーザ名とパスワードを取得してください。その時は、適切なシステムのユーザー名とパスワードを与える

関連する問題