• Главная
  • Карта сайта
Не найдено

Резервне копіювання WordPress за допомогою mysqldump і tar

  1. mysqldump: резервна копія бази даних
  2. tar: резервна копія файлів WordPress
  3. Відновлення даних
  4. висновок

Якщо ви самостійно адмініструєте ваші сайти на WordPress, то виконувати резервне копіювання на віртуальних і виділених серверах можна за допомогою системних утиліт mysqldump і tar.

Деякий час тому ми опублікували добірку плагінів і сервісів для резервного копіювання сайтів на WordPress. Якщо з якої-небудь причини вони вам не підійшли, то ми радимо спробувати резервне копіювання вручну за допомогою системних утиліт на сервері.

Даний спосіб для більш просунутих користувачів WordPress. Він має на увазі наявність SSH доступу до вашого сервера і базові навички роботи в командному рядку вашої системи, наприклад Terminal.app в OS X або PuTTY для Windows. Параметри з'єднання з віддаленим сервером ви можете уточнити у вашого хостинг-провайдера.

Після з'єднання з віддаленим сервером, де знаходиться ваш сайт, перейдіть в каталог одним рівнем вище. Наприклад, якщо сайт знаходиться в директорії / home / wpmag / public_html, то працювати ми будемо в / home / wpmag:

$ Ssh [email protected] $ cd / home / wpmag

mysqldump: резервна копія бази даних

спеціальна утиліта mysqldump дозволяє виконувати так званий «дамп» або резервну копію стану бази даних MySQL. Програма mysqldump входить в пакет mysql-client, який доступний на більшості Linux-серверах.

Програма mysqldump входить в пакет mysql-client, який доступний на більшості Linux-серверах

Запуск утиліти mysqldump

Для запуску mysqldump вам буде потрібно логін і пароль до сервера MySQL, назва бази даних і адреса самого сервера. Цю інформацію можна взяти з вашого файлу конфігурації WordPress wp-config.php:

$ Cat public_html / wp-config.php | grep DB_ define ( 'DB_NAME', 'wordpress'); define ( 'DB_USER', 'username'); define ( 'DB_PASSWORD', 'password'); define ( 'DB_HOST', 'localhost');

Таким чином, щоб створити резервну копію бази даних з назвою «wordpress» необхідно запустити mysqldump з наступними параметрами:

$ Mysqldump -uusername -ppassword -hlocalhost wordpress> database.sql

Зверніть увагу на відсутність пробілів у аргументах, наприклад -uusername, а не -u username. Останнім параметром до mysqldump вказується назва бази даних. Якщо ви хочете отримати резервну копію всіх доступних баз даних на сервері, вкажіть аргумент --all-databases.

Виконання цієї команди може зайняти кілька хвилин, в залежності від розміру вашої бази даних. Після її завершення резервна копія буде зберігається в файлі database.sql вашої поточної директорії.

tar: резервна копія файлів WordPress

утиліта tar використовується для створення архівів, яка також має можливість стиснення файлів за допомогою Gzip. Для створення нового архіву за допомогою tar необхідно вказати назву архіву та перелік файлів і директорій:

$ Tar -czf backup.tar.gz public_html database.sql

Опції czf означають створення архіву (-c), використання стиснення Gzip (-z) і запис результату в файл (-f backup.tar.gz). Таким чином буде створено новий архів, що містить всю директорію public_html і резервну копію бази даних database.sql.

Створення архіву може зайняти деякий час, в залежності від кількості та розміру ваших файлів. Після завершення ви можете сміливо видалити файл database.sql, стисла копія якого буде розташовуватися в новому архіві:

$ Rm database.sql

Створений архів можна зберігати на сервері на той випадок, якщо буде потрібно його швидке відновлення, але обов'язково скачайте архів з резервною копією на ваш комп'ютер, на той випадок, якщо сервер стане недоступним. Завантажити архів можна за допомогою вашого улюбленого FTP клієнта, або використовуючи утиліти scp або rsync.

Повна резервна копія WordPress

Після того як ви скачаєте резервну копію, перевірте її розмір і зміст. Переконайтеся, що все знаходиться на своїх місцях.

Відновлення даних

Коли настане час відновити резервну копію з архіву, вам допоможуть утиліти tar і mysql. Розпакуйте архів з резервною копією:

$ Tar -xf backup.tar.gz

У тому місці де ви розпакували архів ви побачите директорію public_html і database.sql. Якщо розпакування ви виконували в тому ж місці, де і створення архіву, то утиліта tar вам запропонує перезаписати файли в директорії public_html.

Якщо ви розпакували архів в іншому місці, то вам необхідно вручну скопіювати або перемістити нову директорію public_html на місце старої директорії, наприклад за допомогою утиліти mv. Стару директорію можна попередньо видалити:

$ Cd / home / wpmag $ rm -rf public_html $ mv backups / public_html public_html

Після відновлення файлів приступайте до відновлення резервної копії бази даних MySQL. Зробити це можна за допомогою утиліти mysql з уже знайомими нам параметрами:

$ Mysql -uusername -ppassword -hlocalhost wordpress
Для відновлення всіх баз даних з файлу database.sql досить не вказувати останній параметр до mysql: $ mysql -uusername -ppassword -hlocalhost

висновок


Всі ці команди ви можете записати в shell-скрипт, наприклад: #! / Bin / bash NOW = $ (date + "% Y-% m-% d-% H% M") mysqldump -uusername -ppassword --all- databases> ~ / all-databases.sql tar -czf "backup- $ NOW.tar.gz" ~ / public_html ~ / all-databases.sql rm ~ / all-databases.sql
Запуск цього скрипта буде створювати резервну копію з поточною датою і часом в назві. Скрипт можна викликати за розкладом за допомогою планувальника завдань системи, наприклад crond. При такому підході не забувайте стежити за доступним місцем на жорсткому диску і вчасно видаляйте старі резервні копії.
У будь-якому випадку не забувайте завантажувати резервні копії з сервера на ваш комп'ютер, зовнішній жорсткий диск або будь-який онлайн сховище, наприклад Dropbox.
Якщо ви працюєте з VPS серверами, хостинг-провайдери часто надає можливість зробити повну копію (або snapshot) вашого контейнера, який також легко відновити. Правда скачати собі таку копію контейнера компанії зазвичай не дозволяють.

Провайдеры:
  • 08.09.2015

    Batyevka.NET предоставляет услуги доступа к сети Интернет на территории Соломенского района г. Киева.Наша миссия —... 
    Читать полностью

  • 08.09.2015
    IPNET

    Компания IPNET — это крупнейший оператор и технологический лидер на рынке телекоммуникаций Киева. Мы предоставляем... 
    Читать полностью

  • 08.09.2015
    Boryspil.Net

    Интернет-провайдер «Boryspil.net» начал свою работу в 2008 году и на данный момент является одним из крупнейших поставщиков... 
    Читать полностью

  • 08.09.2015
    4OKNET

    Наша компания работает в сфере телекоммуникационных услуг, а именно — предоставлении доступа в сеть интернет.Уже... 
    Читать полностью

  • 08.09.2015
    Телегруп

    ДП «Телегруп-Украина» – IT-компания с 15-летним опытом работы на рынке телекоммуникационных услуг, а также официальный... 
    Читать полностью

  • 08.09.2015
    Софтлинк

    Высокая скоростьМы являемся участником Украинского центра обмена трафиком (UA — IX) с включением 10 Гбит / сек... 
    Читать полностью