Уважаемые пользователи!
Напоминаем, что с 7 ноября 2020 года phpBB Group прекратила выпуск обновлений для phpBB версии 3.2.
С учетом этого, рекомендуется обновить конференции до версии 3.3.
Сайт официальной русской поддержки phpBB Guru продолжит поддержку phpBB 3.2 до отдельного объявления.

Бэкап форума (MySQL) через ssh доступ

Темы по наиболее часто задаваемым вопросам по phpBB 2.0.x. Читать в первую очередь!
Аватара пользователя
crash
Former team member
Сообщения: 6517
Стаж: 18 лет 10 месяцев
Откуда: Бердск

Бэкап форума (MySQL) через ssh доступ

Сообщение crash »

Делать бэкап и восстановление форума, выполнять различные sql команды можно с помощью командной строки, shell (ssh) доступ, если хостер предоставляет эту услугу.
Shell доступ можно организовать с помощью программы putty, качать здесь или другой программой поддерживающей ssh протокол.
Putty не требует инсталяции. После ее запуска вводим имя сервера или его ip и жмем кнопку "Open". При соединении спросит логин и пароль, который вы должны ввести и который получаете от хостера.
Если все прошло удачно, то мы подключились к серверу.

Для подключения к MySQL серверу даем команду:

Код: Выделить всё

mysql -h hostname -u username -ppassword databasename
hostname - имя сервера где находится mysql сервер, например localhost
username - имя пользователя для соединения с БД. Задается при создании базы или выдает хостер.
password - пароль для пользователя, который соединяется с БД. Прошу заметить что пароль пишется без пробела после р.
databasename - название базы данных.
Так как речь идет о флоуме, то все данные можно взять в файле config.php.
Например, хост с БД у нас имеет имя database, пользователь crash, пароль 123 и имя базы phpbb, тогда команда для подключения к базе имеет вид:
mysql -h database -u crash -p123 phpbb

Для того чтобы сделать дамп БД:

Код: Выделить всё

mysqldump --all --add-drop-table -h hostname -u username -ppassword databasename >dump.sql
Файл дампа будет у нас иметь значение dump.sql, который мы скачаем по ftp.
Возьмем для примера те же данные:
mysqldump --all --add-drop-table -h database -u crash -p123 phpbb >dump.sql

Для того чтобы восстановить БД:

Код: Выделить всё

mysql -h hostname -u username -ppassword databasename <dump.sql
Файл дампа будет у нас иметь значение dump.sql, который мы закачаем по ftp.
Возьмем для примера те же данные:
mysql -h database -u crash -p123 phpbb <dump.sql
или так:
cat dump.sql | mysql -h database -u crash -p123 phpbb
или если у вас файл сжат gzip, то одним из способов:
gzcat dump.sql.gz | mysql -h database -u crash -p123 phpbb
zcat dump.sql.gz | mysql -h database -u crash -p123 phpbb
    Как правильно задавать вопросы
    Для особо одаренных: поиск - это есть круто.
    FAQ v.2 | FAQ v.3 | Шаблон запроса
    Аватара пользователя
    Master of Tragedy
    phpBB 1.4.2
    Сообщения: 68
    Стаж: 15 лет 9 месяцев
    Откуда: Санкт-Петербург

    Сообщение Master of Tragedy »

    Восстановление из бэкапа:

    Код: Выделить всё

    mysql --user=пользователь --host=узел \ 
    --port=порт --password=пароль \ 
    имя_базы_данных <имя_файла.sql
    Ce grand malheur de ne pouvoir etre seul...
    Аватара пользователя
    Rayden
    Former team member
    Сообщения: 3739
    Стаж: 17 лет 11 месяцев
    Поблагодарили: 3 раза

    Сообщение Rayden »

    На самом деле в реальной ситуации синтаксис еще проще.
    Обычно у хостера сделано так, по ssh коннектимся под тем же пользователем, что и к базе, а база доступна по локалхосту. Тогда бекап выглядит так:

    mysqldump -pПАРОЛЬ ИМЯБАЗЫ > ИМЯФАЙЛА

    если пароль не прописывать:

    mysqldump -p ИМЯБАЗЫ > ИМЯФАЙЛА

    то программа его спросит

    восстанавливаем аналогично:

    mysql -pПАРОЛЬ ИМЯБАЗЫ < ИМЯФАЙЛА

    но стрелочка в другую сторону. Стрелочка показывает, куда данные двигаются, из базы в файл или из файла в базу.
    phpBB2 FAQ
    phpBB3 FAQ
    Аватара пользователя
    crash
    Former team member
    Сообщения: 6517
    Стаж: 18 лет 10 месяцев
    Откуда: Бердск

    Сообщение crash »

    Master of Tragedy писал(а):Восстановление из бэкапа:
    а разве у меня не написано восстановление из бэкапа?
    Как правильно задавать вопросы
    Для особо одаренных: поиск - это есть круто.
    FAQ v.2 | FAQ v.3 | Шаблон запроса
    Аватара пользователя
    Вовка
    phpBB 1.4.2
    Сообщения: 65
    Стаж: 16 лет 6 месяцев

    Re: [FAQ]: как сделать бэкап MySQL, используя ssh доступ

    Сообщение Вовка »

    у меня putty не работает, в программу забиваю имя сервера, который дал хостер, потом вбиваю логин, когда запрашивается пароль, клавиатура не отвечает :(

    может быть у кого была такая проблема?
    Аватара пользователя
    crash
    Former team member
    Сообщения: 6517
    Стаж: 18 лет 10 месяцев
    Откуда: Бердск

    Re: [FAQ]: как сделать бэкап MySQL, используя ssh доступ

    Сообщение crash »

    Вовка писал(а):может быть у кого была такая проблема?
    такая проблема у всех. Просто при вводе пароля ничего не пишется, так задумано. Вводите пароль и жмите ентер.
    Как правильно задавать вопросы
    Для особо одаренных: поиск - это есть круто.
    FAQ v.2 | FAQ v.3 | Шаблон запроса
    Аватара пользователя
    Вовка
    phpBB 1.4.2
    Сообщения: 65
    Стаж: 16 лет 6 месяцев

    Re: [FAQ]: как сделать бэкап MySQL, используя ssh доступ

    Сообщение Вовка »

    crash писал(а):Просто при вводе пароля ничего не пишется
    crash писал(а):Вводите пароль и жмите ентер
    Блин, извеняюсь, забыл что это консоль... там же звездочек нет..

    а когда делат mbvgjhn? там пароль и сервер надо указывать от чего? от SSH, от FTP, или от Базы?
    Аватара пользователя
    crash
    Former team member
    Сообщения: 6517
    Стаж: 18 лет 10 месяцев
    Откуда: Бердск

    Re: [FAQ]: как сделать бэкап MySQL, используя ssh доступ

    Сообщение crash »

    Вовка писал(а):а когда делат mbvgjhn?
    что делать?
    Вовка писал(а):от SSH, от FTP, или от Базы?
    а вы к чему подключаетесь?
    Как правильно задавать вопросы
    Для особо одаренных: поиск - это есть круто.
    FAQ v.2 | FAQ v.3 | Шаблон запроса
    Аватара пользователя
    Вовка
    phpBB 1.4.2
    Сообщения: 65
    Стаж: 16 лет 6 месяцев

    Re: [FAQ]: как сделать бэкап MySQL, используя ssh доступ

    Сообщение Вовка »

    crash писал(а):что делать?
    импорт (извеняюсь, сглючил переключатель, а редактирование в этом форуме отключено)
    crash писал(а):а вы к чему подключаетесь?
    если импортирую, то я подключаюсь к базе, но файл с базой данных лежит на фтп, он же тоже должен узнать от него логин/пароль? или он через SSH его передаст?
    Master of Tragedy писал(а):<имя_файла.sql
    а так можно? а то я случайно, старое название базы скопировал на ftp (а база большая, 400 мигов, время и трафик на перезаливку уйдет большой)

    кстате у хостера написано:

    Код: Выделить всё

    восстанавливаем данные из резервной копии (дампа) так:
    mysql -uимя_пользователя -p -hимя_сервера_БД   
    имя_базы < dump.sql
    
    Запускаемые указанным образом утилиты для работы с MySQL будут запрашивать пароль к базе данных. Нужно вводить пароль соответствующего пользователя БД
    
    Аватара пользователя
    crash
    Former team member
    Сообщения: 6517
    Стаж: 18 лет 10 месяцев
    Откуда: Бердск

    Re: [FAQ]: как сделать бэкап MySQL, используя ssh доступ

    Сообщение crash »

    Вовка писал(а):если импортирую, то я подключаюсь к базе, но файл с базой данных лежит на фтп, он же тоже должен узнать от него логин/пароль? или он через SSH его передаст?
    а вы что сразу по фтп подключаетесь, когда делаете бэкап?

    В м проблема у вас, я так и не понимаю.
    Как правильно задавать вопросы
    Для особо одаренных: поиск - это есть круто.
    FAQ v.2 | FAQ v.3 | Шаблон запроса
    Аватара пользователя
    Вовка
    phpBB 1.4.2
    Сообщения: 65
    Стаж: 16 лет 6 месяцев

    Re: [FAQ]: как сделать бэкап MySQL, используя ssh доступ

    Сообщение Вовка »

    crash писал(а):проблема у вас, я так и не понимаю.
    проблемы у меня не было, проблема была у хостера.
    у них через ssh можно подключиться к базе, но сделать импорт нельзя, нет доступа (прав) :(
    Аватара пользователя
    crash
    Former team member
    Сообщения: 6517
    Стаж: 18 лет 10 месяцев
    Откуда: Бердск

    Re: [FAQ]: как сделать бэкап MySQL, используя ssh доступ

    Сообщение crash »

    Вовка
    что-то я сомневаюсь что нельзя делать.
    Как правильно задавать вопросы
    Для особо одаренных: поиск - это есть круто.
    FAQ v.2 | FAQ v.3 | Шаблон запроса
    Аватара пользователя
    Вовка
    phpBB 1.4.2
    Сообщения: 65
    Стаж: 16 лет 6 месяцев

    Re: [FAQ]: как сделать бэкап MySQL, используя ssh доступ

    Сообщение Вовка »

    ну вот например..
    Изображение
    Аватара пользователя
    crash
    Former team member
    Сообщения: 6517
    Стаж: 18 лет 10 месяцев
    Откуда: Бердск

    Re: [FAQ]: как сделать бэкап MySQL, используя ssh доступ

    Сообщение crash »

    вы указываете имя базы u162307, а доступ запрещен к базе wwwrock_videonet_forum. Какая-то не стыковка.

    Добавлено спустя 2 минуты 56 секунд:
    и мастерхост разрешает доступ к базе со своих серверов, это можно понять прочитав их поддержку.
    Как правильно задавать вопросы
    Для особо одаренных: поиск - это есть круто.
    FAQ v.2 | FAQ v.3 | Шаблон запроса

    Вернуться в «FAQ (phpBB 2.0.x)»