Advanced search  

News:

cpg1.5.48 Security release - upgrade mandatory!
The Coppermine development team is releasing a security update for Coppermine in order to counter a recently discovered vulnerability. It is important that all users who run version cpg1.5.46 or older update to this latest version as soon as possible.
[more]

Pages: [1]   Go Down

Author Topic: Как правильно сделать бэкап галереи?  (Read 7307 times)

0 Members and 1 Guest are viewing this topic.

D.Kalessky

  • Coppermine regular visitor
  • **
  • Offline Offline
  • Gender: Male
  • Posts: 51

Хочу обновить галерею до последней версии. Прекрасно понимаю, что на всякий случай нужно галерею забэкапить.
Но простите уж мой дилетантский вопрос: а как правильно сделать бэкап???
Если не сложно, то напишите пошановую инструкцию из серии "Бэкап для чайников".
Заранее спасибо!
Logged

Alex Revo

  • Moderator
  • Coppermine addict
  • ****
  • Offline Offline
  • Posts: 637
  • Инженер человеческих душ
    • Фото Ростова-на-Дону
Re: Как правильно сделать бэкап галереи?
« Reply #1 on: June 16, 2008, 06:28:01 pm »

Прошу прощения что не могу расписать подробно, но вкратце бекап делается так.
Открывается сайт по фтп и делается резервная копия всех файлов (если много фото, то папку albums можно не копировать).
Потом открываете базу данных сайта в phpmyadmin и экспортируете ее (в формате gzip).
Это и есть бекап.
Logged

D.Kalessky

  • Coppermine regular visitor
  • **
  • Offline Offline
  • Gender: Male
  • Posts: 51
Re: Как правильно сделать бэкап галереи?
« Reply #2 on: June 16, 2008, 07:36:27 pm »

Alex Revo, спасибо.
мой первый шаг в познаниях бэкапов сделан. перейдем к следующему:

какие опции экспорта бд в phpmyadmin необходимо выбрать?
копирую все, что запрашивает процедура экспорта:

- Заключить экспорт в транзакцию
- Отключить проверку внешних ключей
- Режим совместимости SQL
- Добавить DROP DATABASE
- Добавить DROP TABLE / DROP VIEW
- Добавить IF NOT EXISTS
- Добавить AUTO_INCREMENT
- Заключить названия таблиц и полей в косые кавычки
- Добавить CREATE PROCEDURE / FUNCTION
- Добавить в комментарии Даты создания, обновления и проверки
- Данные
- Полная вставка
- Расширенные вставки
- Максимальная длина создаваемого запроса
- Использовать отложенные вставки (DELAYED)
- Использовать игнорирующие вставки (IGNORE)
- Использовать шестнадцатеричное отображение для полей типа BLOB
- Тип экспорта
Logged

Alex Revo

  • Moderator
  • Coppermine addict
  • ****
  • Offline Offline
  • Posts: 637
  • Инженер человеческих душ
    • Фото Ростова-на-Дону
Re: Как правильно сделать бэкап галереи?
« Reply #3 on: June 16, 2008, 07:57:33 pm »

Просто выбираете слева все таблицы базы, снизу режим сжатия gzip, а все остальное оставьте все по умолчанию.
Logged

Makc666

  • Moderator
  • Coppermine addict
  • ****
  • Offline Offline
  • Gender: Male
  • Posts: 1614
  • Русский (ISO-8859-1) - Russian - Русский (Windows)
    • Makc's home page
Re: Как правильно сделать бэкап галереи?
« Reply #4 on: June 23, 2008, 11:10:50 am »

Если говорить о бекапе, то я бы разделил на два случая/варианта.
1ый, когда нет доступа к шэлу (ssh)
2ой, когда есть доступ к шэлу (ssh)




Вариант 1ый, когда нет доступа к шэлу (ssh)
(по идее уже описали выше много, но нужно и можно добавить следующее)



Дополнение 1:

1.1
Для phpMyAdmin в файле настроек config.inc.php можно прописать две переменные:
Code: [Select]
$cfg['SaveDir'] = 'полный_физический_путь_на_сервере_до_папки_#1';
$cfg['UploadDir'] = 'полный_физический_путь_на_сервере_до_папки_#2'; 
                                       

Первый путь - это директория куда на сервере при "Импорте" можно сохранить файл дампа (импорта).
Второй путь - это директория откуда на сервере при "Экспорте" можно взять файл дампа.

ВАЖНО!!!
Создавая данные папки, т.е. указывая данный путь, следует осозновать два факта:
  • данная директория должна быть доступна через FTP
  • данная директория должна или находится ниже корня вашего сайта или находится в папке, защищенной не только от листинга, но и защищенной как минимум паролем от доступа с помощью файла .htaccess

Пути могут совпадать, но тогда нужно быть очень аккуратными, чтобы случайно при "Импорте" не перезаписать (читай удалить) старый файл импорта.
Перезаписывать или нет контролируется переменной "Перезаписать существующий(е) файл(ы)".

1.2
После импорта файл дампа можно скачать через FTP или HTTP (что не рекомендуется - читай важное примечание выше).




Вариант 2ой, когда есть доступ к шэлу (ssh)



Дополнение 2:

Зная пароль от вашей базы данных или пароль пользователя root,
можно делать импорт базы данных через командную строку, что намного быстрее и в определенной степени надежнее.

Шаги очень простые:

2.1
Создаем папку, куда будем делать импорт.

2.2
Далее нам нужно знать правильную кодировку нашей базы данных и решить, хотим ли мы сохранять информацию о данной кодировке в файле импорта (дампе).

И выполнить соответствующую команду и после ввести пароль от данного пользователя.

2.2.1
Если мы хотим сохранить информацию о кодировке нашей базы данных:
Code: [Select]
mysqldump -u <имя_пользователя> -p --create-options --default-character-set=<правильная_кодировка_базы_данных> <имя_базы_данных> > /<полный_путь_папки>/<имя_файла>.sql
2.2.2
Если мы хотим не сохранять информацию о кодировке нашей базы данных:
Code: [Select]
mysqldump -u <имя_пользователя> -p --create-options --compatible=mysql40 --default-character-set=<правильная_кодировка_базы_данных> <имя_базы_данных> > /<полный_путь_папки>/<имя_файла>.sql
К примеру, имя пользователя root, кодировка нашей базы данных utf8, имя базы данных coppermine и мы хотим сохранить информацию о кодировке нашей базы данных, тогда выполняем команду:
Code: [Select]
mysqldump -u root -p --create-options --default-character-set=utf8 coppermine > /home/dump/coppermine.sqlи после вводим пароль от данного пользователя

К примеру, имя пользователя user, кодировка нашей базы данных cp1251, имя базы данных gallery и мы хотим не сохранять информацию о кодировке нашей базы данных, тогда выполняем команду:
Code: [Select]
mysqldump -u user -p --create-options --compatible=mysql40 --default-character-set=cp1251 gallery > /home/dump/gallery.sqlи после вводим пароль от данного пользователя

2.3
Полученный файл импорта можно запаковать и скачать к себе, к примеру, домой :)


Дополнение 3:

Зная пароль от вашей базы данных или пароль пользователя root,
можно делать экспорт базы данных через командную строку, что намного быстрее и в определенной степени надежнее.

Шаги очень простые:
3.1
Нужно иметь готовый и правильный файлы дампа для импорта в формате SQL и знать папку, где файлы лежат.

3.2
Выполняем команду на вход в базу данных:
Code: [Select]
mysql -u <имя_пользователя> -p
3.3
Вводим пароль MySQL от данного пользователя

3.3.1
--> Если базы данных не существует, то нужно её создать в правильной кодировке, для этого выполнить команду:
Code: [Select]
CREATE DATABASE `<имя_базы_данных>` DEFAULT CHARACTER SET <кодировка_базы_данных> COLLATE <сравнение_базы_данных>;(у данного пользователя MySQL должны быть права на создание баз данных)

К примеру, имя базы данных coppermine, а кодировка базы данных utf8:
Code: [Select]
CREATE DATABASE `coppermine` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;
3.4
Вводим команду на смену базы данных:
Code: [Select]
use <имя_базы_данных>;(обратите внимание на точку с запятой в конце строки)

3.5
Далее нам нужно знать правильную кодировку базы данных. Т.е. не кодировку самого файла, а именно правильную кодировку базы данных.
Подразумеваетя, что данная кодировка - это кодировка созданной ранее или созданой вами в данном примере базы данных.

И выполнить соответствующую команду для экспорта базы данных и после ввести пароль от данного пользователя.
Code: [Select]
set names <правильная_кодировка_базы_данных>; source /<полный_путь_папки>/<имя_файла>.sql;
К примеру, кодировка нашей базы данных utf8, тогда выполняем команду:
Code: [Select]
set names utf8; source /<полный_путь_папки>/<имя_файла>.sql;
3.6
Важно! Смотрим, чтобы не было Warnings:
Если Warnings: встречаются постонно, значит в 90% случаев вы что-то напутали с кодировкой.

3.7
Проверяем через phpMyAdmin, чтобы кодировка базы данных была читаема, т.е. именно русский текст отображался нормально!
« Last Edit: June 23, 2008, 11:18:37 am by Makc666 »
Logged
Pages: [1]   Go Up
 

Page created in 0.032 seconds with 20 queries.