Как открыть mysql в браузере
В стоимость тарифных планов виртуального хостинга, где поддерживаются услуги MySQL, входит определенное число MySQL-баз и один MySQL пользователь. Сверх этого базы создаются за дополнительную плату по действующему прейскуранту.
Что такое «базы данных» вообще и MySQL в частности
Под базами данных (БД) понимаются системы хранения и обработки данных, для доступа к которым используется язык SQL (Structured Query Language). Существует множество различных систем управления базами данных (СУБД), но в условиях хостинга как правило применяется СУБД MySQL. Причинами тому являются фактическая ориентация этой СУБД на хостинговые задачи, доступность на всех популярных серверных операционных системах, а также простота настройки и администрирования.
Параметры и способы соединения с MySQL
В целях безопасности прямой доступ к серверам MySQL из интернета закрыт (исключение составляет ssh-туннель), а клиентам предоставляются следующие возможности администрирования и использования БД:
- доступ к командной строке MySQL из unix shell
- работа с БД из скриптов пользователя на Perl, PHP и т.д.
- управление базой через веб-интерфейс phpMyAdmin. Реквизиты доступа сообщаются при регистрации, логин и пароль совпадают с реквизитами доступа к самой базе данных
SSH-туннелирование для соединения с удаленной базой данных MySQL
Используем ПО: Putty v.0.70 (последний стабильный релиз на 2017-07-08.)
Первоначальные установки удаленного соединения:
Далее переходим в закладку «Tunnels», как показано на следующем рисунке, используя данные параметры для подключения:
Теперь необходимо добавить настройки в меню Forwarded ports нажатием кнопки «Add» как показано на рисунке ниже, для достижения следующего результата:
Оригинальная документация доступна на сайте разработчиков.
Настройка закончена, переходим в первое меню «Session», как на рисунке 1, и нажимаем кнопку «Open» для установки соединения с удаленным сервером по протоколу SSH. Проходим авторизацию по логину и паролю, и попадаем в bash, находясь локально на вашей площадке /home/uXXXX.
Тем временем, согласно нашим настройкам, происходит туннелирование соединения c локальным MySQL сервером, используя SSH протокол и внутренние средства Putty. Таким образом, соединяясь на локальный порт localhost:3306 и используя любое ПО для работы с MySQL сервером, мы получаем доступ к администрированию удаленной базы данных, одновременно защищая свое соединение по протоколу SSH.
phpMyAdmin — доступ к MySQL через веб-браузер
Реквизиты доступа к нему высылаются автоматически на контактный адрес, с момента приобретения тарифного плана с поддержкой БД MySQL.
phpMyAdmin — некоммерческое приложение, написанное на языке PHP, реализующее довольно удобный и функциональный Web-интерфейс к базе данных MySQL.
Подробное справочное руководство по phpMyAdmin вы можете посмотреть по адресам:
Для входа в интерфейс вам необходимо ввести:
- Логин: соответствует названию виртуальной площадки — uXXXXX
- Пароль: указан в письме, которое пользователь получает при регистрации
Вместо ХХХХХ необходимо прописать номер вашей виртуальной площадки.
Импорт и экспорт данных MySQL
Экспорт и импорт данных в MySQL обычно требуется при переносе информации из одной базы данных MySQL в другую и для осуществления резервного копирования.
Резервное копирование данных носит чисто технологический характер. Это означает, что в случае какого-либо программного или аппаратного сбоя оборудования, мы сможем восстановить актуальные данные клиента. Мы гарантируем сохранность самих данных, а не их резервных копий.
Однако, при наличии резервной копии на необходимую дату, мы готовы пойти навстречу клиенту и восстановить утерянные по неосторожности данные. Для это необходимо подать заявку на свободную тему из панели управления.
Единственный способ быть уверенным в 100% восстановлении данных — самостоятельно выполнять регулярное резервное копирование информации. Для этого необходимо воспользоваться утилитой mysqldump, которая доступна через unix shell.
Пример команд для экспорта и импорта базы данных:
Данные будут сохранены в файле dump.sql. Далее (в случае необходимости) восстанавливаем данные из резервной копии (дампа) так:
Запускаемые указанным образом утилиты для работы с MySQL будут запрашивать пароль к базе данных. Нужно вводить пароль соответствующего пользователя БД. Если пароль был утерян, вы можете самостоятельно изменить его в панели управления, в разделе Услуги, выбрав виртуальную площадку.
Например, для кодировки Windows-1251 нужно указать:
Дополнительные опции утилиты mysqldump:
--add-drop-table — опция, которая добавляет команду DROP TABLE перед созданием таблиц. Перед восстановлением таблиц из дампа, таблицы с таким же именем в рабочей базе данных будут удалены и пересозданы из резервной копии. Рекомендуется использовать для предотвращения возможных ошибок после восстановления;
--add-locks — опция, которая добавляет команды LOCK TABLES перед выполнением и UNLOCK TABLE после выполнения каждого дампа таблицы. Применяется для ускорения доступа к MySQL;
--quote-names — опция, сообщающая утилите о необходимости ставить кавычки для названий таблиц и столбцов. Рекомендуется к использованию для MySQL версий, младше 4.1.1. В старших версиях она активирована по умолчанию.
Опции --quick и --opt рекомендуется использовать, если база данных MySQL слишком большая для того, чтобы целиком поместиться в памяти.
При этом утилита mysqldump выдает ошибку:
В итоге строчка для создания копии базы данных получается следующей:
Для совместимости дампа, сделанного на стороннем сервере мы рекомендуем создавать дамп базы данных с ключом:
Если во время импорта вы получите ошибку вида значит в вашей базе данных присутствуют данные, которые невозможно разделить на отдельные части, каждая не больше двух мегабайт.
Как правило, такое случается, если базу данных MySQL используют для хранения содержимого различных файлов, например, картинок или музыки, не размещая их непосредственно в файловой системе. В таком случае, если размер какого-нибудь файла превышает определённое значение — база данных становится непригодной для использования на наших серверах и потребуется либо удалить такие данные из вашей базы, либо рассмотреть вариант использования сервера баз данных на VPS-сервере , где можно установить нужное ограничение max_allowed_packet в необходимое значение, либо не использовать его вообще.
Если на вашем сервере установлена версия MySQL 4.0.x, то для корректного переноса данных со сторонних серверов необходимо при экспорте базы данных использовать ключ:
Как работать с MySQL из скриптов на Perl
Для работы с MySQL из Perl-скриптов как правило используют модуль DBI. Это позволяет удобно открывать и закрывать соединения к СУБД, подготавливать и выполнять запросы к базе, обрабатывать ошибки и так далее. Если вы не имеете опыта работы с MySQL из Perl, рекомендуем вам книгу «Программирование на Perl DBI» (рус., англ.).
Итак, пример работы с MySQL из Perl DBI:
Как работать с MySQL из скриптов на PHP
Для работы с MySQL вы можете использовать встроенный в язык PHP средства, поддержка которых уже осуществляется на хостинге. PHP имеет развитый и понятный интерфейс к этой СУБД, что делает работу с MySQL именно из PHP наиболее простой и удобной особенно для начинающих веб-мастеров и веб-программистов.
Загрузка данных с помощью LOAD DATA
Начиная с версии MySQL 3.23.49, LOAD DATA LOCAL по умолчанию запрещено по соображениям безопасности, и его надо специально включать.
MySQL-сервер у нас работает с включенным LOAD DATA LOCAL, но необходимо включение данной функциональности со стороны клиента.
Для утилиты mysql есть несколько вариантов включения данной опции:
- Параметр --local-infile=1
- Создать в домашней директории файл .my.cnf и в нем разрешить эту опцию для группы [mysql], которой пользуется данная утилита:
Включение данного режима из perl'а: необходимо в dsn при подключении указать файл конфигурации mysql (т.к. библиотека libmysql по умолчанию никаких дополнительных файлов конфигурации не читает) и группу в нем, в файле создать эту группу, и для этой группы выставить local-infile=1:
Например, вписываем в ~/.my.cnf а в скрипте подключение оформляем так:
Включение данного режима из PHP: у вас обязательно должен быть установлен свой собственный, скомпилированный интерпретатор PHP.
В функции mysql_connect() необходимо использовать аргумент 128 (значение константы CLIENT_LOCAL_FILES) в качестве пятого параметра.
Дополнительные MySQL-база и MySQL-доступ (MySQL-пользователь)
Пользователям предоставляется определенное количество баз MySQL в рамках приобретенного тарифа. При этом автоматически подключается одна база, и реквизиты доступа к ней сообщаются в письме с уведомлением о заведении услуг. Клиенты могут самостоятельно создавать дополнительные базы данных и MySQL-доступы.
Для этого необходимо в контрольной панели в разделе Услуги выбрать площадку, для которой необходимо создать дополнительную услугу и в разделе «MySQL» выбрать вкладку «Пользователи» или «Базы данных» и нажать «+ Пользователь MySQL» или «+ База MySQL». Пароли доступа к базам данных можно изменить, нажав «Сменить пароль» у требуемого MySQL-пользователя.
Дополнительная документация и полезные ссылки
MySQL является самой популярной среди разработчиков СУБД. Популярность ее сопровождается и наличием исчерпывающей и очень качественной документации. Научившись пользоваться ею, вы не будете иметь проблем с доступом к качественным описанием нужных возможностей MySQL.
Также, рекомендуем ознакомиться со статьёй на нашем сайте, посвящённой оптимизации баз данных MySQL.
От автора: установка MySQL, доступ к полномочиям и обеспечение стабильности СУБД — одни из базовых задач для веб-разработчика. Чтобы справляться с ними на высоком уровне, необходимы знания и понимание процессов, которые выполняет компьютер. Но изучать это долго, а проекты нужно закрывать уже сегодня. Мы сложили для вас мануал на этот случай, чтобы не тратить драгоценные трудочасы. Рассмотрим сначала информацию о том, как MySQL «дружит» с CentOS, а после поговорим о обеспечении прав доступа для пользователя СУБД.
Перейти на CentOS?
Когда начинается спор о том, какая из систем лучше: Ubuntu или CentOS, почти наверняка речь идет об обслуживании виртуального сервера. VPS, как сокращенно называют последнего, это одна из интернет-услуг, в которой пользователю выделяется место на диске, где имитируется настоящий физический сервер. Преимуществом такой услуги является то, что виртуальный сервер в администрировании мало чем отличается от настоящего, физического. Таким образом, разработчик может открыть для себя широкие возможности, не тратя много средств. Естественно, что даже для такого сервера нужна операционная система, и выбор падает на Linux-дистрибутивы.
CentOS — это одна из осей семейства Linux, которая стала одной из наиболее популярных среди веб-разработчиков. Она была создана на базе Red Hat — коммерческой операционной системы, которая, как правило, используется для тех же целей, но стоит немало. Именно потому, многие относятся к данной операционке, как к копии и подражанию. Но, на самом деле, она развивается значительно быстрее, благодаря открытому исходному коду.
Ее легко настроить, уровень безопасности довольно высок, несмотря на постоянные попытки проникнуть к базам данных со стороны злоумышленников. Схожесть с RHEL тоже используется на пользу: на платную операционную систему постоянно выходят крутые обновления, которые можно установить и на Cent.
Бесплатный курс по PHP программированию
Освойте курс и узнайте, как создать веб-приложение на PHP с полного нуля
Переходить или нет — вопрос субъективный. Но, если вы еще не пробовали Cent — тогда однозначно стоит попробовать. Тем более, что окружение не будет сильно отличаться от того, к которому вы привыкли на Ubuntu.
Если говорить о принципиальных отличиях систем, то брать во внимание систему обновлений или пользовательский интерфейс — глупо. Немного сделаем акцент на том, что Cent считается более стабильной осью, чем Ubuntu. Теперь пришло время узнать, как на эту систему установить СУБД MySQL.
MySQL «дружит» с Cent
Об одном необходимо предупредить сразу: как только вы шаблонно введете простую команду «install mysql», то получите… MariaDB. Уж такое отношение у разработчиков ОС к базам данных: они решили, что эта система лучше подходит для выполнения задач вебмастеров. Правда в том, что эта СУБД отлично справляется со всеми задачами, и вы можете остановиться на этом этапе, если система управления — опциональна.
Для того, чтобы установить именно MySQL, необходимо иметь операционную Cent версии 7 или выше. Также, на системе должен быть добавлен пользователь, обладающий правами на команду sudo и изменение конфигурационных параметров с ее помощью.
Как только вы получили доступ к файлам, стоит проверить их на поврежденность. Для того, чтобы это осуществить, нужно запустить утилиту md5sum и сравнить сумму с MD5. Правильное значение можно обнаружить по ссылке на сайт программного обеспечения. А как только целостность и подлинность будет подтверждена, можно приступить к установке.
От автора: что вы мобильник так трясете? Письмо пришло на почтовый ящик, а вы его прочитать не можете? Понятно! Вы бы еще, чтобы вывести данные из MySQL, с бубном возле ПК побегали. После «изъятия» письма этим и собирались заняться, и даже бубен прихватили? Ну ладно, не буду мешать. А для остальных «не шаманов» расскажу, как «вынуть» данные из MySQL без бубна.
Средства вывода phpMyAdmin
Отложите пока в сторону бубен, глаза ползучего питона и ожерелье из мухоморов. Опробуем для получения информации из БД менее «магические» способы. Начнем с рассмотрение возможностей, которые предоставляет для этого оболочка phpMyAdmin. Запускаем программу, слева в списке выбираем нужную базу. Чтобы вывести данные из таблицы MySQL, в основном верхнем меню переходим в раздел «Обзор». После этого получаем содержимое выбранной таблицы.
В результате нам удалось в три щелчка получить доступ к содержимому нужной базы данных. Но что-то выбранная для экспериментов БД уж слишком приелась. Конечно, все мы любим «зверюшек», но от наших «танцев с бубнами» они все быстро разбегутся. Нелегкое это дело «шаманство»
Чтоб не мучатся с созданием новой БД и не тратить понапрасну драгоценное время, скачаем готовую базу с официального ресурса MySQL. А сэкономленные таким образом минуты потратим на обучение «волшебству» администрирования СУБД. Установка скачанной базы происходит в phpMyAdmin через вкладку «Импорт».
Бесплатный курс по PHP программированию
Освойте курс и узнайте, как создать веб-приложение на PHP с полного нуля
Импортированная БД «World» содержит намного больше информации, и поэтому более интересна для обучения (на случай, если мы заскучаем во время освоения материала). Ее «потенциал» можно увидеть, открыв любую из ее таблиц. Например, «City»:
Окунаемся в язык структурированных запросов
Все это интересно, но что делать, если нужно вывести строку MySQL, а не полностью таблицу? Визуально найти среди сотни строк искомую практически невозможно. Для этого нужно воспользоваться средствами SQL.
В языке структурированных запросов для вывода отсортированных данных используется оператор SELECT. Его синтаксис:
Приведем пример SQL запроса к таблице «city». Например, нам нужно вывести строку, в которой значение столбца id равно 670:
Запрос на вывод из базы данных MySQL мы начинаем указанием команды (SELECT). Затем звездочкой (*) мы «говорим» СУБД, что хотим сделать выборку всех значений строки из (FROM) таблицы city, где значение столбца id равно заданному значению ( id =670). Вводим запрос в окно редактора (вкладка «SQL»). Вот какой результат возвращает нам сервер:
Сервер возвратил нам строку, отвечающую заданным в запросе критериям. Выше система выводит код запроса, а также автоматически добавляет к нему свою часть. По умолчанию, с помощью директивы ORDER BY программа (НЕ СУБД) сортирует результаты выборки по значению столбца Name ( city . Name ). При этом значения столбца сортируются по возрастанию (параметр ASC).
Обратите внимание на «тонкости» синтаксиса (написания) запросов на вывод таблиц MySQL. Названия имя таблицы экранируются не одинарными кавычками, а грависом. Он является знаком слабого ударения. На клавиатуре он расположен на клавише с буквой «Ё».
Это важно, поскольку при использовании одинарных кавычек система MySQL буде выдавать ошибку о нарушении синтаксиса
написания команды запроса. Для наглядности попробуйте сами. В результате увидите следующий результат:
Выборка данных из кода PHP
Теперь постараемся произвести вывод данных из MySQL в PHP. Отобразим на экране ту же строку, полученную в предыдущем запроса. Вот код примера:
Бесплатный курс по PHP программированию
Освойте курс и узнайте, как создать веб-приложение на PHP с полного нуля
echo "$id - $name - $country_code - $district - $population
" ;В результате выгрузки MySQL мы получили ту же самую строку:
Но что, если нужно отобразить всю таблицу? Для этого придется немного изменить код SQL запроса:
Вот, что мы вывели в браузере:
То есть, мы отобразили все данные таблицы целиком. Но они слишком громоздки, и могут не помещаться в экранной области браузера. С помощью оператора LIMIT в запросе можно задать, какие строки выводить (с какой по какую). Например, нам нужно просмотреть данные с 1 по 10 строки. Тогда запрос для вывода страницы из MySQL будет выглядеть так:
Обратите внимание, что для использования в PHP мы указываем имя базы и таблицы через точку, отдельно экранировав друг от друга.
Экспорт БД
О том, как экспортировать базу данных MySQL, мы подробно рассказывали в одном из наших предыдущих материалов. Сегодня мы рассмотрим вариант переноса данных различных форматов. Чаще всего требуется импортировать информацию в SQL из CSV и наоборот.
На самом деле CSV является обычным текстовым форматом, в котором все строки разделены запятыми. Он идеально подходит для переноса информации в интернете, поскольку файлы в этом формате «весят» в несколько раз меньше. Кроме этого CSV легко расширяем, что позволяет в одном файле поместить нужное количество БД и при необходимости добавлять новые.
Для переноса информации из этого формата в MySQL в веб-программированию пишутся большие куски кода, описанию которых придется посвятить отдельную статью. Но мы пойдем по иному пути, и рассмотрим, как экспортировать данные из CSV в MySQL с помощью phpMyAdmin.
Заходим в оболочку. В основном меню сверху переходим в раздел «Импорт». Затем «Импортируемый файл». Указываем через «Обзор вашего компьютера» нужный файл, формат и жмем внизу «Ок».
Импорт данных окончен. Теперь осталось задать структуру таблиц и тип данных столбцов.
Как видите, чтобы вывести данные из MySQL, не обязательно быть шаманом и плясать под звуки бубна. Нам для этого хватило возможностей, предоставляемых СУБД. Кстати, для «изъятия» письма из телефона бубен тоже не нужен
Существует 4 способа подключения к базе данных MySql:
Способ 1 — Через PhpMyAdmin
- Далее выбираем нужную базу данных и нажимаем «Перейти».
Еще 2 способа подключения к PhpMyAdmin на странице Как перейти в PhpMyAdmin.
Способ 2 — Через консоль
Для подключения к базе данных MySql через консоль, нужно набрать следующую команду:
mysql -hYou_Server -uUser_Name -pPassword
- You_Server — хост с MySql, обычно это IP сервера. Если подключаемся с локального сервера, параметр можно опустить.
- User_Name — имя пользователя MySql.
- Password — пароль MySql.
Если вы все сделали правильно, должно быть так:
Способ 3 — Подключение с помощью PHP
Для подключения к базе данных через PHP, нужно выполнить следующий код:
$conn = mysqli_connect('localhost', 'admin', 'pass', 'db');
if (!$conn) die('Ошибка: невозможно подключиться: ' . mysqli_error());
>
echo 'Подключились к базе.
';
$result = mysqli_query($conn, 'SELECT id FROM table limit 1');
где, функция mysql_connect состоит из:
- localhost — имя хостинга;
- admin — имя пользователя (для входа в MySql);
- pass — пароль (для входа в MySql);
- db — имя базы данных, к которой подключаемся.
- Функция mysql_query — нужна для выбора вашего запроса к базе данных. Где table пишем название таблицы, limit 1 указываем количество строк. В представленном примере выбираем столбец ID из базы данных книг (Ставим ID, если данный параметр указан в таблице).
- Функция mysql_fetch_row — нужна для извлечения строк из SQL-запроса, который мы только что создали.
- Функция mysql_close — нужна для того, чтобы закрыть соединение.
Способ 4 — Подключение к базе данных удаленно
Для того чтобы подключиться к базе данных MySql удаленно, нужно выполнить следующие действия:
- С помощью панели управления хостингом, в разделе «Главное» заходим в «Базы Данных».
- Далее выбираете нужную базу данных и нажимаете «Пользователи».
- Затем выбираем нужного пользователя (в данном случае он один) и нажимаем «Изменить».
- Ставим галочку напротив графы «Удаленный доступ» и нажимаем «Ок».
Также нужно обратиться в поддержку хостинга и сообщить ip адрес, с которого будут происходить подключения к бд, иначе данная настройка работать не будет.
Готово! Теперь вы сможете подключаться к базе данных удаленно (чтобы подключиться удаленно через PHP, смотрите предыдущий способ, представленный выше).
PhpMyAdmin (PMA) — это программа для работы с базами данных. Подробно о всех возможностях PMA можно почитать в официальной документации проекта.
Ниже мы рассмотрим наиболее частые операции, выполняемые с помощью phpMyAdmin.
Зайти в PMA можно тремя способами:
Импорт базы данных
Самые популярные действия с базами данных на хостинге — это импорт и экспорт.
Импортирование базы данных — это загрузка сохраненной на локальном компьютере базы данных на сервер.
Чтобы осуществить импорт базы данных, необходимо выполнить следующие действия:
При загрузке дампов баз данных размером более 1000 Мб могут наблюдаться проблемы. В случае, если ваш дамп имеет больший размер, вы можете выполнить импорт через командную строку с помощью подключения по SSH.
Экспорт базы данных
Экспортирование базы данных — это создание резервной копии (дампа) базы данных и ее загрузка на локальный компьютер.
Чтобы осуществить быстрый экспорт базы данных, выполните следующее:
Экспорт отдельных таблиц
Если требуется выполнить экспорт только отдельных таблиц, войдите в phpMyAdmin и выполните следующее.
Изменение кодировки базы и всех таблиц
Изменить кодировку базы данных можно с помощью инструментов PHPMyAdmin.
Например, чтобы установить по умолчанию кодировку UTF-8, выполните следующее:
1. Перейдите в phpMyAdmin.
2. Выберите нужную базу в списке баз слева.
3. Перейдите в раздел Операции / Operations.
4. В блоке Сравнение / Collation выберите utf8_general_ci.
5. Отметьте галочками оба пункта.
Выполнение SQL-запросов
Определение текущей кодировки
Чтобы узнать кодировку базы данных, выполните следующий SQL-запрос:
Изменение кодировки базы данных
Чтобы изменить кодировку базы данных с помощью SQL-запроса, выполните запрос ниже, заменив «cp1251» на нужную вам кодировку:
Обратите внимание, что данный SQL-запрос не изменит кодировку таблиц базы данных!
Изменение кодировки таблиц
Для смены кодировки таблиц используйте запросы ниже, заменив 'cp1251' на нужную вам кодировку:
Читайте также: