WordPressin tietokannan varmuuskopioinnista
16:48
Pni on paininut WordPressin tietokannan varmuuskopioinnin automatisoinnin kanssa. Itse en ole asian kanssa paininut, sillä olen tuudittautunut ajatukseen että palveluntarjoajani hoitaa asian puolestani. Tarjosin kuitenkin Pni:lle vaihtoehtoista toteutusta ja hiljainen päivä yhdistettynä sisäisen nörttini kanssa teki homman teoriasta käytäntöön.
Valmista koodia, silvuplee. Vaatii toimiakseen ohjelmat mysqldump
, mutt
ja gzip
.
<code>#!/bin/bash
mysqldump="/usr/bin/mysqldump"
mutt="/usr/bin/mutt"
gzip="/bin/gzip"
tmpdir="<tmpdir>"
datesuffix=`date +%Y-%m-%d`
fileprefix="db-bak"
mailrecipient="user@host.tld"
mailsubject="Wp Db Bak ($datesuffix)"
# use one of the below
# mailbody=`cat <path to textfile>`
mailbody="<text>"
dbname="<database name>"
dbuser="<database username>"
dbpass="<database password>"
dbhost="<database host>"
tableprefix="<wp-table-prefix>"
tables="wp_categories wp_comments wp_linkcategories wp_links wp_options wp_post2cat wp_postmeta wp_posts wp_usermeta wp_users"
#Taman alemmas ei pitaisi olla tarvetta muokata
tablesfinal=""
for tbl in $tables; do
tablesfinal="$tableprefix$tbl $tablesfinal"
done;
$mysqldump -h $dbhost -u $dbuser --password=$dbpass $dbname --tables $tablesfinal > $tmpdir/$fileprefix-$datesuffix.sql
$gzip $tmpdir/$fileprefix-$datesuffix.sql
echo "$mailbody" | $mutt -s "$mailsubject" -a $tmpdir/$fileprefix-$datesuffix.sql.gz $mailrecipient
rm -f $tmpdir/$fileprefix-$datesuffix.sql.gz</code>
Olkaa hyvät, te ketä kaipaatte. Muistakaa ottaa ne skriptin lukuoikeudet pois muilta kuin itseltänne (chmod 700
), kun sitä tietokannan salasanaa ette varmaankaan halua jakaa.
Edit. Skandien kanssa näyttäisi olevan vähän ongelmia tällä metodilla, ilmeisesti (ainakaan minun) konsoli ei tykkää UTF8-merkistöstä. Jatkan tutkimista ja kehittelyä ja kerron heti kun ratkon ongelman.
Edit2. Ongelmat saattavat sittenkin olla jossain muualla. Näyttäisi nimittäin siltä että mulla se mikä näytti olevan konsolin ongelma, onkin ongelmana jo kannassa. Kokeilkaa joku muu ja kertokaa miten toimii.
Sorry, the comment form is closed at this time.
4 Responses to “WordPressin tietokannan varmuuskopioinnista”
Minulla taas on ollut kiireinen päivä, joten en ole asialle ehtinyt mitään tekemään vielä, mutta pitääpä kokeilla.
Olen kyllä vastaavia skriptejä netistä löytänyt, kaikki vaatii tuon “mutt” -ohjelman. Mikä se on?
Comment by pni — 04.09.2006 16:55
“mutt”:http://www.mutt.org/ on postiohjelma joka suostuu lähettämään liitetiedostoja komentoriviltä.
Comment by nikc — 04.09.2006 17:05
Okei. Kiitos. Oletko tämän nähnyt:
http://www.tamba2.org.uk/wordpress/cron/
Comment by pni — 04.09.2006 17:25
Näyttäis olevan sama pyörä minkä minäkin keksin, pienillä eroilla. Tämä mun tekemä mm. osaa lisätä taulujen nimien eteen etuliitteen tarvittaessa. Sama lopputulos molemmilla kuitenkin; gzipattu sql-dumppi sähköpostilaatikossa.
Comment by nikc — 04.09.2006 17:34