2017-06-06 10 views
0

私は、訪問者にいくつかのライブプラグインを試せるようにWordPressのデモサイトを用意しています。毎時MySQLデータベースを「開始状態」に設定する

私が望むのは、接続されたMySQLデータベースが1時間ごとに更新されることです。意味:クリーンな開始状態に戻ります。

したがって、デモサイトのデータはデモユーザーのデータなしできれいでフレッシュな状態になります。

php経由で実行する必要があるクエリがありますか、それともどのように管理できますか?

私の質問を理解していただきたいと思います。

事前に感謝します。

UPDATE:

私はcronジョブを作成して持っていると私は、電子メールにそれがextivatedされるたび:)

しかし、なぜ私のSQLファイルが実行されていないを受けていますだってジョブがアクティブになりますか?何か案は?

<?php 

exec("mysql -u DB-USER -pDB-PASS DB-NAME < /home/users/XXXX/XXXX/yw-cronjobs/clean_demo_db.sql"); 

$to  = '[email protected]'; 
$subject = 'Demo Cron Executed'; 
$message = 'Cron job to reset demo has been executed'; 
$headers = 'From: [email protected]' . "\r\n" . 
'Reply-To: [email protected]' . "\r\n" . 
'X-Mailer: PHP/' . phpversion(); 

mail($to, $subject, $message, $headers); 

?> 

私はそれはそれは...

私はここで何かが欠けアムすべきかんPHPMyAdminの中clean_demo_db.sqlファイルをインポートしますか?

+0

かなりの数のプラグインがWordPressのインストールをデフォルト状態にリセットします。 https://wordpress.org/plugins/search/reset/ –

+0

私は知っていますが、私は複数のサイトを運営しています...私はDBを元の空の状態に戻す必要はありません。私は作成したタイムスタンプに戻す必要があります。 – YooWoo

答えて

0

あなたのMySQLデータベースのmysqldumpに参加してください。 1時間ごとにダンプを入れるcronjobをスケジュールします。ご使用のサーバがLinuxの場合 置くために、あなたがしてsudo crontab -eを使用するcronジョブをスケジュール、mysql -h<db_hostname> -u<db_username> -p<db_password> <databasename> < <mysqldump_file.sql>

を使用することができます。

+0

それでは毎時sqlファイルを挿入したい場合は、これを行うべきです:0 * * * * mysql -h <********> -u <********> -p <********><********> YooWoo

+0

はい、正しいです。同じようにすることができます。 –

+0

私はcronjobを作成して、ジョブを起動します。私はいつも電子メールを受信して​​います:)しかし、なぜ私のSQLファイルは実行されていませんか?何か案は? <?php exec( "mysql -u DB-USER -pDB-PASS DB-NAME ここに何か不足していますか? – YooWoo

関連する問題