3
我已經建立了自動同步腳本,執行以下操作:自動同步需要更新它
- 清理當前位置
- 複製動態文件,如上傳
- 備份從目標數據庫,做一些更換等恢復它
真正的腳本如下:
echo Updating via SVN
export LC_ALL=fr_CA.UTF-8
svn up
echo Cleaning up the image and temp folder
rm -Rf wp-content/uploads/*
echo Copying files from production version
cp -R ../public_html/wp-content/uploads/* wp-content/uploads/
echo Importing wordpress database
mysqldump -u xxxyyyzzz --password=xxxyyyzzz xxxyyyzzz_db --skip-opt --add-drop-table --default-character-set=utf8 > temp.sql
sed 's/www.domain.com/preprod.domain.com/g' temp.sql > temp2.sql
mysql -u xxxyyyzzz --password=xxxyyyzzz xxxyyyzzz_preprod_db < temp2.sql
rm temp.sql
rm temp2.sql
echo Complete
這裏的代碼工作正常,除了一個小問題。當我在同步兩個項目(PROD> PREPROD)後從wordpress加載WP-ADMIN時,我懷疑它會做同樣的事情,當我做PROD> STAGE和PROD> DEV時,管理控制面板向我發射一個「You're數據庫已過期,我們現在就升級它「,並且當我瀏覽我同步的網站的正面時,許多perma鏈接在數據庫中失敗。
有沒有任何wordpress guru可以告訴我我可能會做錯什麼?是否有緩存需要更新或清除。 pluggins的
列出已安裝:
- 一些自定義的內部有什麼關係呢
- Advanted自定義字段插件
- 比重由Justin Tadlock
- WordPress的搜索引擎窗體
- 成員Joost de Valk
- WPML多語言CMS
- WPML字符串翻譯
我希望有人知道......
祝所有
你可以檢查'version.php'中的'$ wp_db_version'和'options'表中的'db_version'是否相同? – soju 2012-03-14 12:52:05
該死的,他們不是......所以這意味着SVN中的wordpress版本與在線安裝的版本不一樣......它可能就是這麼簡單 – 2012-03-14 12:55:35
另外,一些插件使用PHP序列化來存儲數據,如果該sed命令與任何序列化的內容匹配,則會使該串行數據無效(除非兩個DNS值具有完全相同的長度,否則字符串長度將不匹配)。 – MightyE 2012-03-14 13:15:42