====== Использование SSH на хостинге (не актуально) ======
Используя **SSH** можно загружать, копировать и редактировать файлы, выполнять некоторые команды на сервере. Например, нередко возникает задача импорта очень большой базы данных на сайт. Cредствами **phpmyadmin** это сделать невозможно из-за ограничений максимального размера загружаемого файла. Для работы используем [[http://www.chiark.greenend.org.uk/~sgtatham/putty/|PuTTY]], [[https://winscp.net/|WinSCP]].
===== Загрузка файлов через WinSCP =====
Запускаем **WinSCP**. Используя полученные данные для доступа подключаемся к хостингу. При первом подключении к серверу WinSCP спросит разрешения добавить ключ сервера в кэш.
{{ :wiki:technical:hosting:ssh_hosting:winscp-1.png?nolink |}}
Программа имеет интуитивно понятный интерфейс.
{{ :wiki:technical:hosting:ssh_hosting:winscp-2.png?nolink |}}
Копируем файл с дампом БД на сервер (нажимаем F5).
===== Работа с SSH в PuTTY =====
Подключаемся к серверу. Указываем адрес:
{{ :wiki:technical:hosting:ssh_hosting:putty-1.png?nolink |}}
и используемую кодировку:
{{ :wiki:technical:hosting:ssh_hosting:putty-2.png?nolink |}}
При первом подключении к серверу **PuTTY**, аналогично **WinSCP**, запросит разрешение на сохранение ключа сервера:
{{ :wiki:technical:hosting:ssh_hosting:putty-3.png?nolink |}}
Сообщаем серверу свои логин и пароль для аутентификации. При вводе пароля символы не отображаются в целях безопастности.
При подключении, пользователи находятся в изолированном окружении (chroot-ssh), за пределы которого они не могут выйти. Пользователям доступно ограниченное число команд, например:
* ls, cat, echo, grep
* rm, mkdir, mv, cp
* bash, vi, mcedit
* mysql, mysqldump
Некоторые из них описаны в статье [[wiki:technical:console|"Справочник команд Putty / SSH / Unix / Linux"]].
==== Импорт БД из файла ====
Для импорта БД из загруженного файла используем следующую команду:
$ mysql --user=имя --password=пароль -h ip-адрес база < my_database.sql
где:
* имя - имя пользователя БД
* пароль - пароль пользователя БД
* ip-адрес - адрес сервера
* база - имя импортируемой базы
* my_database.sql - загруженный нами файл БД
База данных должна быть ранее создана на сервере и к ней должен быть разрешенные удаленный доступ
==== Экспорт БД в файл ====
Для экспорта БД в файл используем команду:
$ mysqldump --user=имя --password=пароль -h ip-адрес база > dumpbase.sql
где:
* имя - имя пользователя БД
* пароль - пароль пользователя БД
* ip-адрес - адрес сервера
* база - имя экспортируемой базы
* dumpbase.sql - имя файла экспорта БД