Връщане/Restore на Joomla! Страници
В тази статия ще разгледаме как да възвърнем вече архивирана страница на същата или друга машина. Тук, също като при копирането на страницата ще трябва да върнем 2 неща:
- Самите файлове
- Съдържанието на базата данни
Да започваме.
- Връщане на файловете от архив
Да кажем, че вече имаме архива със самите Joomla файлове. Нека архивният файл се казва joomlabackup.tar.gz, намира се в /home/tgr и искаме да го разархивираме в /var/www
За целта изпълняваме командата
$ sudo tar xvfz /home/tgr/joomlabackup.tar.gz /var/www
Друго важно нещо, което трябва да се направи след разархивиране то на архива е смяна на правата и собственикът на файловете, намиращи се в /var/www.
По подразбиране собственик на файловете трябва да е потребител www-data, права за файйловете 644 и 755 за директориите. За да изпълним изискванията изпълняваме следните команди от терминала:
# find /var/www/ -type d | xargs chmod 755
# find /var/www/ -type f | xargs chmod 644
# chown -R www-data: /var/www/
Забележете, че командите се изпълняват от root (# означава това, за тези, които се питат защо). Ако не сте влезнали в системата с root (имате знам $), можете да ги пуснете с командата sudo в началото.
- Връщане на съдържанието на базата данни
Както при правенето на резервно копие имате 2 начина - с PHPMyadmin или директно през MySQL.
Това, което е важно да се знае, е че и при двата начина първо трябва да създадете нова празна база данни със съответното име (не е задължително да е същото, но е препоръчително)
Няма да описвам начина с PHPMyadmin, защото е достатъчно интуитивна работата с него, затова ще премина направо на методът с MySQL.
Първо да създадем базата данни след като сме влезнали в системата:
$sudo mysql -u root -p
Тук задължително потребителят е root (за самият MySQL). Ще бъдете запитани за парола.
След въвеждането на паролата вашият промт в началото ще се смени с ">". Това е важно да се знае, защото когато сте в MySQL, всяка команда, която изпълнявате трявба да завършва с ";"
Самото създаване на базата данни става със следната команда:
> create database databasename;
Тук [databasename] е името на базата, която искаме да създадем. За да излезнем вече от самият MySQL изпълняваме:
>quit;
Вече сме се върнали в основния ни $ промпт.
Намивигираме до мястото, където се намира нашият .out файл. Да кежем, че е db-name.out и се намира в /home/tgr
$ cd /home/tgr
И сега самото връщане/попълване на базата данни
$ mysql -u root -p db-name < db-name.out
Тук db-name е името на създадената преди малко база данни.
Това е. Ако сте направили и вашият WEB сървър правилно вече страницата ви трябва да работи от новия ви сървър.
ВАЖНО: Ако сте сменили името на базата данни (имената на базите данни не е еднакво - преди резервното копие и тази която сте създали сега) а също така, ако потребителят работещ с базата данни е различен, трябва обезателно да наснесете съответните корекциите в папката с joomla файловете, а именно във файлът configuration.php