Настройка phpmyadmin (эта статья)
16.08.2010 Tigrusha
а ешё надо root паминять для тех кто не знает как ишем 2 файлика config.inc и config.inc.php в папки phpMyAdmin ишим /* Authentication type and info */
$cfg["Servers"][$i]["auth_type"] = "config";
$cfg["Servers"][$i]["user"] = "root";
$cfg["Servers"][$i]["password"] = "";
$cfg["Servers"][$i]["AllowNoPassword"] = true;
и миня ем на сваего ползывателя ток сначала в бази саздть не забудте
09.01.2011 serdjuzz
подскажите пожалуйста:
когда набираю в браузере(Chrome и IE пишут:
Веб-страница по адресу http://localhost/phpmyadmin, возможно, временно недоступна или постоянно перемещена по новому адресу.
Дополнительная информация об этой ошибке
Исходное сообщение об ошибке показано ниже
Ошибка 101 (net::ERR_CONNECTION_RESET): Неизвестная ошибка.
Что не так?
спасибо
09.01.2011 serdjuzz
вот всегда так)))
спросишь и разберешься)))
спасибо, хелп ваш зрелый = это я туплю
20.01.2011 Алексей
Спасибо за такой мануал! Очень все подробно и качественно написано. Вот единственное что у меня не получилось сделать, так это чтобы phpMyadmin могли заходить из инета (работает тока по локалке). При наборе в браузере http://имя сайта/phpmyadmin - выдает ошибку:
New XAMPP security concept:
Access to the requested object is only available from the local network.
This setting can be configured in the file "httpd-xampp.conf".
Вижу что копать надо в файле "httpd-xampp.conf" но не знаю что поправить.
Админ, не подскажешь? Заранее спасибо.
21.01.2011 админ
Алексей, в статье "Настройка и защита apache под windows" я коснулся этой темы.
Смотрим самый конец статьи.
Цитирую
===============
В последних версиях xampp доступ к административным скриптам возможен только при локальном входе, внешний доступ закрыт, phpmyadmin тоже доступен только локально.
Если хотите открыть внешний доступ для phpmyadmin или другим стандартным скриптам, опять смотрим файл
Тут есть подобная конструкция
.....
Эта конструкция и запрещает доступ снаружи, конечно сам запрет находится внутри этой конструкции, но если вам нужно открыть внешний доступ например для phpmyadmin, то просто удалите его из этого списка.
==============
То есть из строки
удалите phpmyadmin
14.03.2011 Андрей
Когда я прописываю у себя http://localhost/phpmyadmin/ то мне выдаёт ошибку Не удалось установить подключение для пользователя указанного в директиве controluser, с помощью параметров определенных в конфигурационном файле config.inc.php . Помогите пожалуйста!
15.03.2011 админ
Андрей, речь идет про пользователя pma.
Не правильно указаны логин или пароль для pma.
В файле настроек нужно указать для него логин пароль, если вы его меняли.
$cfg["Servers"][$i]["controluser"] = "pma";
$cfg["Servers"][$i]["controlpass"] = "";
26.05.2011 Дмитрий
После всех настроек phpAdmin вообще перестал открываться. На нажатия кнопки в панели не реагирует. После ввода в командную строку в локале выдает ошибку 403 и "доступ закрыт". Извне так же ошибка. Куда копать? Все настроено в строгости с вашей инструкцией.
27.05.2011 Админ
Дмитрий, скорее всего в настройках сервера что-то сделали.
403 это скорее всего направлен запрос на каталог, который не имеет индексного файла и в настройках сервера запрещен листинг файлов.
Мне кажется, что где то в настройках апача прописали не верный путь до phpmyadmin.
27.05.2011 Дмитрий
в общем перепроверил все по новой и выяснил такую штуку. Если в файле
/xampp/apache/conf/extra/httpd-xampp.conf
.....
То все.. phpmyadmin становится недоступным вообще. Ни из локала, ни снаружи. В файле hosts все прописано, что нужно. пути все правильны.
Правда еще одну ошибку выдавало:
В файле php.ini если прописать директорию D:/xampp/, то выдавало ошибку. Оказалось нужно прописывать D:\xampp\. В этом файле половина путей прописана со слэшами то в одну, то в другую сторону. Может сборка 1.7.4 не оттестирована подобающим образом?
30.05.2011 админ
Дмитрий, вот со слешами странная ситуация.
Действительно есть такая проблема, слеши в разные стороны.
У некоторых это вызывает проблемы, у некоторых нет.
У некоторых работают слеши в одну сторону, у некоторых в другую.
А у многих работают все слеши.
Почему такая ерунда с этими слешами, я не могу понять
10.08.2011 Олег
Установил, сделал защиту, настроил php,mysql,phpmyadmin, мне больше пока не надо так вот появилось такое
Access forbidden!
You don"t have permission to access the requested directory. There is either no index document or the directory is read-protected.
If you think this is a server error, please contact the webmaster.
Error 403
localhost
10.08.2011 23:38:10
Apache
в phpmyadmin могу зайти, но что делать не знаю. помогите пожалуйсто.
11.08.2011 Олег
А да забыл добавить что все работало пока я не перезагрузил Apache
22.08.2011 Виктор
Олег, в настройках значит стоит запрет на чтение директории без индексного файла или еще где то запрет.
Но это уже надо смотреть все по месту, так сложно сказать почему запрещен доступ к директории.
21.09.2011 максим
поменял пароль на root и способ входа установил cookie
Теперь при входе в а вадминку выдает ошибку
Error
MySQL said: Documentation
#1130 - Host "localhost" is not allowed to connect to this MySQL server
Connection for controluser as defined in your configuration failed.
phpMyAdmin tried to connect to the MySQL server, and the server rejected the connection. You should check the host, username and password in your configuration and make sure that they correspond to the information given by the administrator of the MySQL server.
02.09.2012 Антон
Здравствуйте! столкнулся с такой же проблемой как Дмитрий
" Если в файле
/xampp/apache/conf/extra/httpd-xampp.conf
убрать параметр phpmyadmin из строки
.....
То все.. phpmyadmin становится недоступным вообще. Ни из локала, ни снаружи. В файле hosts все прописано, что нужно. пути все правильны."
не подскажите как быть и что и как исправить надо что бы работало все
15.01.2013 zenon
отличная статья, спасибо
20.02.2013 Gannibal
Подскажите пожалуйста а как удалить правельно те что на скрине выделил стрелками.
Http://radikal.ru/F/s45.radikal.ru/i108/1302/a0/2868efa2d6f6.jpg.html
10.02.2014 Кривая статья
После установки пароля нет доступа к админке. Проще в 10 раз на время НЕ использования phpmyadmin папку хамрр перемещать в другой директорий. И никто в жизни ее не найдет.
26.07.2016 Евгений
Типичная абсолютно бесполезная статья, написаная непонятно кем и непонятно для чего!
"Зайдите во вкладку Привилегии..." А вот НЕТ ТАКОЙ ВКЛАДКИ в PHPmyadmin!!! НЕТ И ВСЁ! Нахрена писать такие статьи???
Я потому и начал искать материалы, что эта тупая программа впринципе не содержит в интерфейсе ничего похожего на настройки доступа. И автор этой "статьи" ничем не помог.
При работе в phpMyAdmin, следует учесть, что особенности входа в систему могут отличаться, в зависимости от используемых инструментов, операционной системы и среды разработки (админки). Давайте рассмотрим основные варианты.
Внимание!!! Если вы не знаете, как быстро и просто войти в phpMyAdmin на localhost, то есть доступный и максимально быстрый вариант – сохраните ссылку непосредственно в браузере, и вы сможете всегда иметь доступ к панели управления. Прямая ссылка для версий 4 и 5: http://localhost/openserver/phpmyadmin/ . Способ работает при верно настроенном окружении.
Как зайти в phpMyAdmin на хостинге
В зависимости от того, какой вы выбрали, вход в панель управления может несколько отличаться. Однако, для Денвера существует несколько стандартных вариантов, позволяющих быстро попасть в ISPManager. Зайдя в панель управления, вы можете создать профиль phpMyAdmin. Тут же будет храниться информация о логине, пароль root. Вся эта информация доступна на вкладке «Настройки сервера» в разделе «Серверные базы данных». Если же вы помните пароль и знаете логин, то для входа в веб-интерфес достаточно перейти по ссылке в личном кабинете ISPManager или по стандартной ссылке http://адрес_сайта/myadmin/ .
Если базы данных были созданы верно, то вам откроется окно входа, где необходимо ввести пароль и логин для входа.
Особенности взаимодействия на Денвер
Если вы, как и большинство веб-мастеров, предпочитаете работать с помощью Денвера и если вы не знаете, как зайти в phpMyadmin на Denver, то эта инструкция для вас:
Запускаем Denver через ярлык «Start Denver».
В браузере прописывает адрес http://localhost .
Нам нужен адрес http://localhost/Tools/phpMyAdmin , кликнув по которому мы сможем попасть непосредственно в «phpMyAdmin».
Поскольку при покупке хостинга большинство провайдеров автоматически создают аккаунт пользователя и базу данных для сайта, то скорее всего, вам останется только создать пользователя на локальном сервере, так как непосредственно на сервере хостера уже настроен.
Как создать пользователя на локальном компьютере
Для начала необходимо зайти на вкладку «Привилегии» на странице phpMyAdmin. Тут видна информация по всем подключенным пользователям и аккаунтам. Алгоритм действий следующий:
Добавить нового пользователя –> ввести данные нового пользователя (логин и пароль) –> отмечаем все привилегии и жмем баннер с надписью «GO».
Если регистрация прошла успешно, ты вы сможете увидеть всплывающее окно-подтверждение о создании нового пользователя. Все, теперь, чтобы работать с MySQL и php-скриптом для входа потребуются лишь авторизационные данные, которые вы ввели при регистрации.
Для эффективной эксплуатации веб-интерфейса, необходимо ориентироваться в командной строке и знать стек базовых команд для управления.
Особенности работы phpMyAdmin с операционной системой linux
Для примера возьмем самую простую и доступную версию ОС Unix – Ubuntu. Для того, чтобы зайти в phpMyAdmin на Убунту 16.04 (последняя стабильная сборка) выполняется стандартный алгоритм действий:
Устанавливаем phpMyAdmin из репозитория.
В терминале вводим комбинации:
sudo apt-get update sudo apt-get install
phpmyadmin php-mbstring php-gettext
В процессе установки программа будет предлагать на выбор несколько конфигураций, необходимо выбрать apache2. Установка и настройка программного обеспечения проводится полностью автоматически. Все, что потребуется сделать самостоятельно – отметить конфигурации ПХП. Для этого нужно в терминале ввести команды:
sudo phpenmod mcrypt
sudo phpenmod mbstring
После выполнения всех шагов, проводится перезапуск ПО и анализ внесенных изменений командой sudo systemctl restart apache2.
Если установка прошла успешно, то при вводе команды https://доменное_имя_или_IP_адрес/phpmyadmin у вас появится окно входа, где вы сможете ввести все необходимые регистрационные данные и войти в веб-интерфейс.
Если забыли пароль от базы данных
Эксплуатация phpMyAdmin может незначительно отличаться в зависимости от админки.
Если вы забыли пароль, то чтобы восстановить доступ на, а также пароль root потребуется сделать ряд шагов:
Для Windows
- Остановить сервер БД.
- Запустить базы данных с опцией skip-grant-tables.
- Подключиться к серверу через команду mysql -u root.
- Установить новый пароль – mysql> update user set password=PASSWORD(‘root_password’) where user=’root’ and host=’localhost’.
- Завершающим этапом служит остановка всех процессов и перезапуск сервера для проверки нового пароля.
Для Ubuntu
- Останавливаем систему – sudo service mysql stop.
- Запускаем базы данных – sudo /usr/bin/mysqld_safe --skip-grant-tables --user=root &.
- Выполняем изменения и сохраняем их sudo mysql.user SET Password=PASSWORD(‘новый пароль) WHERE User=’root’.
- После этого необходимо выйти из системы и перезагрузить базы данных командой service mysql restart или service mysql start.
![](https://i0.wp.com/richhost.biz/uploads/files/2017-09/Ubuntu.png)
Вебмастер, работающий в определенных админках сайта (wordpress, joomla и др.), довольно часто сталкиваемся с необходимостью взаимодействовать с базами данных. СУБД MySQL – это наиболее популярная и востребованная база данных, которая хорошо работает с PHP. Большинство сайтов рунета написаны с помощью именно этого ЯП. Более того, пхп является одним из самых востребованных и популярных языков для фронт-енд и бек-енд программирования сайтов. Есть несколько вариантов получить доступ к MySQL:
- С помощью командной строки.
- С помощью веб-приложений.
Первый способ – оптимальное решение для программистов и пользователей, которые хорошо знаю bash. Для всех остальных лучшим решением служат специальные веб-интерфейсы. Наиболее популярным вариантов является PhpMyAdmin, который позволяет управлять и настраивать базы данных через браузер, без знаний программного кода для этой СУБД.
Функции PhpMyAdmin
- Система поиска по БД.
- Создание и корректировка таблиц, баз данных, записей.
- Прямое исполнение SQL-команд.
- Создание новых пользователей.
По сути, PhpMyAdmin – это интернет-приложение, созданное для администрирования баз данных. Приложение написано на языке программирования php и имеет открытый программный код с лицензией General Public License, что дает право каждому желающему пользоваться всеми возможностями веб-интерфейса совершенно свободно.
Ее основное назначение - упростить эксплуатацию БД и дать возможность всем желающим администрировать MySQL без изучения программного кода. Автоматизация и высокая степень безопасности сделали этот веб-интерфейс необычайно востребованным и популярным среди вебмастеров, работающих в русскоязычном сегменте интернета.
От автора: опять заплутали, и не знаете, как зайти в MySQL? Не вы первый! Собирайте всех заблудившихся, и сейчас отправимся прямиком в гости к ней. К кому «к ней»? К самой популярной СУБД всемирной паутины!
Где в Денвере находится MySQL
Имеется в виду не столица штата Колорадо в США, а пакет программ для создания и тестирования приложений на PHP. В состав набора для «джентльменов» входит локальный сервер Apache, MySQL сервер и оболочка phpMyAdmin. Именно с помощью данного программного пакета чаще всего «новички» познают все тонкости работы с этой системой управления БД.
Перед тем, как зайти в MySQL через браузер, нужно запустить локальный сервер, затем в адресной строке набрать localhost, и в появившемся окне «Ура, заработало!» в разделе утилиты выберите phpMyAdmin.
После чего окажетесь там-же (в phpMyAdmin).
Проходим к базам данных через «лабиринт»
Мы с вами отправимся в «дремучий» лес, и постараемся через него «пробраться» к серверу баз. Не подумайте, что мы от кого-то прячемся, просто сейчас мы будем действовать, как. Поехали!
Перед тем, как зайти в MySQL через командную строку, следует выяснить, где находится главная директория сервера баз данных. Если вы используете СУБД в «чистом» виде без «примесей» (вне «джентльменского» набора), то корневая папка сервера расположена здесь: C:\Program Files\MySQL\MySQL Server 5.5\bin\mysql.exe
Если вы используете Денвер, то искомый фал находится по этому пути: Z:\usr\local\mysql-5.5\bin\mysql.exe,
где Z – это виртуальный диск, который создается после запуска локального веб-сервера. У вас он может быть под другим именем (точнее, буквой).
Нас интересует именно файл mysql.exe. Запустим его на выполнение, указав имя сервера баз данных, пароль и пользователя, под которым зайдем в MySQL.
Как включить MySQL через командную строку: заходим в «Пуск», среди стандартных программ выбираем «Командная строка». Запускаем утилиту, и с этого момента опишем всю процедуру «хождения» в дремучем лесу пошагово, чтобы вся группа «заблудившихся» не потерялась еще раз Стартуем:
В черное окно CMD (командной строки) вводим путь, где хранится исполняемый файл MySQL, а рядом указываем имя пользователя СУБД и пароль. Так как у нас локальный сервер, то мы вводим после идентификатора u имя пользователя root без пароля.
На самом деле это неправильно, и для каждого пользователя сервера MySQL должен быть установлен пароль. Более подробно все вопросы безопасности СУБД мы рассмотрим в одной из наших следующей публикации.
Вот весь кусок «кода»: Z:\usr\local\mysql-5.5\bin\mysql.exe -u root
Если все прошло успешно, то ниже в окне командной строки должна появиться информация о версии запущенного сервиса, год выпуска и другая «ненужная» для нас информация.
Теперь, чтобы проверить правильность подключения, введем после оператора mysql> запрос, который отобразит все базы данных хранящиеся на сервере. Код запроса:
db1 – это имя нужной нам базы.
На скриншоте мы видим, что запрашиваемая база данных содержит всего одну таблицу.
Копаем глубже!
Как говорится, «аппетит» приходит после получения результатов выполнения кода. Поэтому постараемся копнуть еще глубже, чтобы получить данные, которые хранятся в таблице. Перед тем, как войти в MySQL еще раз, приведем пример SQL-запроса, с помощью которого мы сможем осуществить задуманное:
SELECT * FROM animal;
SELECT * FROM animal ; |
Вводим запрос, запускаем на выполнение и…. Почему-то сервер выдал нам ошибку.
И все потому, что мы забыли указать MySQL, какая из баз нас интересует. Вот сервер и «ругается», что ни одна из БД не выделена. Это еще раз доказывает, что работа с СУБД через командную строку сильно отличается от взаимодействия с ней через программную оболочку.
В phpMySQL данный запрос был бы успешно выполнен и сервер возвратил выборку из всех строк, содержащихся в запрашиваемой таблице.
Исправим наше общее упущение (свою вину всегда трудно признавать), и перед тем, как войти в MySQL через консоль снова, подготовим «специфический» запрос, с помощь которого мы укажем системе нужную БД:
После ввода данной строки и ее выполнения сервер выведет сообщение, подтверждающее, что нужная база данных выделена.
И теперь введем и запустим запрос на выборку всех данных из таблицы animal еще раз. «Да будут данные!» - сказал администратор, и запустил на выполнение SELECT. Докопались до базы db1, и получили содержимое таблицы animal. Не зря перед тем, как войти в базу данных MySQL, мы провели целый «ритуал», и написали правильное «заклинание» на языке SQL.
Что можно еще накопать?
Вглубь мы «докопались» до самого дна MySQL. Теперь давайте «копнем» немного в сторону. Какие еще сведения можно получить через командную строку, опрашивая MySQL? Хотите узнать структуру таблицы, типы данных всех столбцов, первичный ключ? Пожалуйста! Запустите на выполнение этот запрос:
describe animal;
describe animal ; |
Иногда, чтобы знать, как включить сервер MySQL, требуется получить список всех зарегистрированных пользователей СУБД. Для этого используется следующий запрос.
Во время создания нового проекта сайта вебмастеру приходится решать множество задач, касаемо размещаемого контента, его отображения, обеспечения удобной навигации по разделам и т.д. При этом внесение изменений осложняется необходимостью их соотнесения с базами данных, расположенных на сервере хостинга. Это влечёт за собой существенные траты времени и сил. Для того чтобы минимизировать издержки и облегчить проведение изменений многими специалистами используется инструмент http://localhost/Tools/phpMyAdmin, позволяющий имитировать серверное пространство на ПК. В качестве примера можно рассмотреть программную оболочку Denver и один из дополнительных инструментов PhpMyAdmin.
Итак, Denver представляет собой программу, которая позволяет создать локальный сервер прямо на компьютере, а localhost/Tools/phpMyAdmin – это один из инструментов (набор специальных скриптов на PHP), используемый для обеспечения доступа к базам данных, расположенных на этом сервере. С их помощью можно осуществить управление и внесение изменений в базы данных проекта сайта, без необходимости изучения специальных команд MySQL.
Преимущества технологии
Применение подобной технологии позволяет получить целый ряд преимуществ:
![](https://i1.wp.com/lifehacki.ru/wp-content/uploads/2017/07/baza-dannih.jpg)
После того, как проект сайта будет готов, его без проблем можно перенести с локального сервера на реальный, и начать полноценно пользоваться сайтом.
Что касается непосредственно инструмента PhpMyAdmin, то его использование избавляет от необходимости изучения команд MySQL и делает процесс внесения изменений в базы данных простым и доступным даже для пользователей, имеющих ограниченные знания программирования.
Как зайти и пользоваться localhost/Tools/phpMyAdmin
Чтобы использовать средство для работы с базами данных, необходимо просто проследовать по адресу http://localhost/Tools/phpMyAdmin.
В результате откроется интерфейс инструмента, который позволяет создавать, изменять и удалять новые таблицы в базах данных с помощью интуитивно понятных команд. Эти таблицы и будут использоваться для непосредственного размещения контента сайта. Интерфейс инструмента достаточно прост и понятен, все важные элементы подписаны, так что разобраться будет несложно даже для новичка.
Почему http://localhost/Tools/phpMyAdmin не открывается
Создавая ваш первый серьезный веб-проект, рано или поздно вы столкнетесь с работой над базами данных, и технологии MySQL в частности. Сервер баз данных MySQL замечательно подходит для малых и развивающихся проектов на начальной стадии развития из-за простоты работы с ним. Еще больше облегчает работу система phpMyAdmin, которая предоставляет пользователю доступ и графический интерфейс работы с базой данных, управление таблицами, создание резервных копий и множество иных полезных функций. Само собой, это ускоряет рабочий процесс и позволяет высвободить время разработчиков для более полезных дел.
Как войти в phpMyAdmin на Denwer?
Самый популярный для Windows называется Denwer, и он, как вы уже могли догадаться, включает в себя phpMyAdmin. Но есть одна проблема, с которой пользователи встречаются постоянно: в phpMyAdmin как зайти в админку?
Если вы используете "Денвер", то для быстрого входа в админпанель системы управления phpMyAdmin вы можете добавить себе в закладки браузера специальную ссылку: http://localhost/Tools/phpMyAdmin.
Но вскоре вам придется залить сайт на настоящий хостинг, и если вы планируете реализовать свою разработку до конца, заранее изучите следующие вопросы: как работать с интерфейсом phpMyAdmin? Как зайти в административную панель управления?
Инструкция по входу в ISP Manager и CPanel
Если на вашем удаленном веб-хостинге используется контрольная панель ISPmanager то выполните вход, с помощью ссылок в примере ниже:
Если же установлена панель CPanel, то вопросы о том, с phpMyAdmin, как зайти на хост, не создадут проблем. Используйте следующую ссылку: https: //ваш_сайт.ком:2083/3rdparty/php My Admin/ - вам нужно будет убрать пробелы.
Вместо слов "ваш сайт.ком" используйте домен вашего ресурса, приобретенный и прикрепленный к хостингу заранее. Если вы не владеете необходимым доменом на данный момент, вы можете выполнить авторизацию по IP-адресу, и в таком случае в phpMyAdmin как зайти, вы будете знать точно.
Если вы используете какую-либо непопулярную панель управления либо не знаете, есть ли она вообще, попробуйте дописать после слеша в адресе вашего сайта название контрольной панели, либо укажите это слово в качестве поддомена - данное сочетание используется у некоторых хостеров.
Наши пользователи могут использовать СУБД MySQL на своих виртуальных веб-серверах в рамках, предусмотренных соответствующими тарифами. Работающая в данный момент Версия: 5.6 Основная кодировка: cp1251 (Windows). Дополнительно поддерживается KOI8-R и UTF-8.
В стоимость тарифных планов виртуального хостинга, где поддерживаются услуги MySQL, входит определенное число MySQL-баз и один MySQL пользователь. Сверх этого базы создаются за дополнительную плату по действующему прейскуранту.
Под базами данных (БД) понимаются системы хранения и обработки данных, для доступа к которым используется язык SQL (Structured Query Language). Существует множество различных систем управления базами данных (СУБД), но в условиях хостинга как правило применяется СУБД MySQL . Причинами тому являются фактическая ориентация этой СУБД на хостинговые задачи, доступность на всех популярных серверных операционных системах, а также простота настройки и администрирования.
Выбирая между различными СУБД нужно учитывать, что если ваш веб-проект не отличается особой на него нагрузкой и сложностью решений, а вы, как программист и администратор, не обладаете достаточной квалификацией и опытом в работе с различными СУБД, альтернатив MySQL для вас в этом случае не очень много и наверняка стоит остановить выбор именно на MySQL. Адресуем вас к статье «Почему MySQL? » на сервере hostinfo.ru , где вы в подробностях узнаете о плюсах и минусах именно этой системы. Также на сайте разработчиков MySQL есть полная документация на русском языке.
Параметры и способы соединения с MySQL
- Имя хоста (сервера), на котором размещен MySQL: uXXXXX.mysql.сайт
- Порт: 3306
- Логин: соответствует названию виртуальной площадки - uXXXXX
- Пароль: указан в письме, которое пользователь получает при регистрации
- Имя базы данных: соответствует названию виртуальной площадки - uXXXXX
В целях безопасности прямой доступ к серверам MySQL из интернета закрыт (исключение составляет ssh-туннель), а клиентам предоставляются следующие возможности администрирования и использования БД:
- доступ к командной строке MySQL из unix shell
- работа с БД из скриптов пользователя на Perl , PHP и т.д.
- управление базой через веб-интерфейс phpMyAdmin . Реквизиты доступа сообщаются при регистрации, логин и пароль совпадают с реквизитами доступа к самой базе данных
SSH-туннелирование для соединения с удаленной базой данных MySQL
Используем ПО: Putty v.0.70 (последний стабильный релиз на 2017-07-08.)
Первоначальные установки удаленного соединения:
- Host Name: сайт - Хост для соединения по SSH, где uXXXX - номер вашей площадки.
- Port: 22
- Protocol: SSH
- Source Port: 3306 - порт для локального подключения после установки туннеля.
- Destination: Local - указываем явным образом, что подключение будет осуществляться на локальный порт, указанный выше.
- Destination: uXXXX.mysql.сайт:3306 - хост, с которым будет осуществляться туннелирование по определенному порту (3306 - стандартно для MySQL)
Теперь необходимо добавить настройки в меню Forwarded ports нажатием кнопки «Add» как показано на рисунке ниже, для достижения следующего результата:
Оригинальная документация доступна на сайте разработчиков.
Настройка закончена, переходим в первое меню «Session», как на рисунке 1, и нажимаем кнопку «Open» для установки соединения с удаленным сервером по протоколу SSH. Проходим авторизацию по логину и паролю, и попадаем в bash, находясь локально на вашей площадке /home/uXXXX.
Тем временем, согласно нашим настройкам, происходит туннелирование соединения c локальным MySQL сервером, используя SSH протокол и внутренние средства Putty. Таким образом, соединяясь на локальный порт localhost:3306 и используя любое ПО для работы с MySQL сервером, мы получаем доступ к администрированию удаленной базы данных, одновременно защищая свое соединение по протоколу SSH.
phpMyAdmin - доступ к MySQL через веб-браузер
Для доступа к MySQL из обычного веб-браузера клиенты могут воспользоваться инструментом phpMyAdmin . Для этого обратитесь к странице.
Реквизиты доступа к нему высылаются автоматически на контактный адрес, с момента приобретения тарифного плана с поддержкой БД MySQL.
Единственный способ быть уверенным в 100% восстановлении данных - самостоятельно выполнять регулярное резервное копирование информации. Для этого необходимо воспользоваться утилитой mysqldump , которая доступна через unix shell .
Пример команд для экспорта и импорта базы данных:
mysqldump -u имя_пользователя -p -h имя_сервера_БД имя_базы > dump.sqlДанные будут сохранены в файле dump.sql. Далее (в случае необходимости) восстанавливаем данные из резервной копии (дампа) так:
mysql -u имя_пользователя -p -h имя_сервера_БД имя_базыЗапускаемые указанным образом утилиты для работы с MySQL будут запрашивать пароль к базе данных. Нужно вводить пароль соответствующего пользователя БД. Если пароль был утерян, вы можете самостоятельно изменить его в, в разделе Древо услуг (выпадающее меню расположено в самой верхней строчке панели управления справа).
По умолчанию система считает, что данные в базе хранятся в кодировке UTF-8. Если ваши данные хранятся в другой кодировке, то после создания резервной копии (дампа) для последующего корректного восстановления данных необходимо открыть созданный файл текстовым редактором и исправить в нём строчку:
/*!40101 SET NAMES utf8 */;
Например, для кодировки Windows-1251 нужно указать:
/*!40101 SET NAMES cp1251 */;
Дополнительные опции утилиты mysqldump:
--add-drop-table - опция, которая добавляет команду DROP TABLE перед созданием таблиц. Перед восстановлением таблиц из дампа, таблицы с таким же именем в рабочей базе данных будут удалены и пересозданы из резервной копии. Рекомендуется использовать для предотвращения возможных ошибок после восстановления;
--add-locks - опция, которая добавляет команды LOCK TABLES перед выполнением и UNLOCK TABLE после выполнения каждого дампа таблицы. Применяется для ускорения доступа к MySQL;
--quote-names - опция, сообщающая утилите о необходимости ставить кавычки для названий таблиц и столбцов. Рекомендуется к использованию для MySQL версий, младше 4.1.1. В старших версиях она активирована по умолчанию.
При этом утилита mysqldump выдает ошибку:
mysqldump: Out of memory (Needed XXXXX bytes) mysqldump: Got error: 2008: MySQL client run out of memory when retrieving data from serverВ итоге строчка для создания копии базы данных получается следующей:
mysqldump --opt -u имя_пользователя -p -h имя_сервера_БД --add-drop-table имя_базы > dump.sqlлибо такой:
mysqldump --quick -u имя_пользователя -p -h имя_сервера_БД --add-drop-table имя_базы > dump.sqlДля совместимости дампа, сделанного на стороннем сервере мы рекомендуем создавать дамп базы данных с ключом:
--set-variable max_allowed_packet=2M -O max_allowed_packet=2MЕсли во время импорта вы получите ошибку вида
mysqldump: Error 2020: Got packet bigger than "max_allowed_packet" bytes when dumping table `some_table_name ` at row: 2 значит в вашей базе данных присутствуют данные, которые невозможно разделить на отдельные части, каждая не больше двух мегабайт.Как правило, такое случается, если базу данных MySQL используют для хранения содержимого различных файлов, например, картинок или музыки, не размещая их непосредственно в файловой системе. В таком случае, если размер какого-нибудь файла превышает определённое значение - база данных становится непригодной для использования на наших серверах и потребуется либо удалить такие данные из вашей базы, либо рассмотреть вариант использования сервера баз данных на VPS-сервере, где можно установить нужное ограничение max_allowed_packet в необходимое значение, либо не использовать его вообще.
Если на вашем сервере установлена версия MySQL 4.0.x, то для корректного переноса данных со сторонних серверов необходимо при экспорте базы данных использовать ключ:
Compatible=mysql40
Как работать с MySQL из скриптов на Perl
Для работы с MySQL из Perl-скриптов как правило используют модуль DBI . Это позволяет удобно открывать и закрывать соединения к СУБД, подготавливать и выполнять запросы к базе, обрабатывать ошибки и так далее. Если вы не имеете опыта работы с MySQL из Perl, рекомендуем вам книгу «Программирование на Perl DBI» (рус. , англ.).
Итак, пример работы с MySQL из Perl DBI:
#!/usr/bin/perl use DBI; my $host = "u12345.mysql.сайт"; # вымышленный MySQL-сервер my $port = "3306"; # порт, на который открываем соединение my $user = "u12345"; # имя пользователя (вымышленное) my $pass = "password"; # пароль my $db = $user; # имя базы данных -по умолчанию равно имени пользователя print "Content-type: text/html\n\n"; $dbh = DBI->connect("DBI:mysql:$db:$host:$port",$user,$pass); $sth = $dbh->prepare("select field1 from table2");# готовим запрос $sth->execute; # исполняем запрос while ($ref = $sth->fetchrow_arrayref) { print "$$ref\n"; # печатаем результат } $rc = $sth->finish; # закрываем $rc = $dbh->disconnect; # соединениеВ этом примере мы сначала определяем переменные с параметрами доступа к MySQL, далее выдаем HTTP-заголовок, так как это у нас скрипт для запуска через веб, затем соединяемся с базой, подготавливаем и отправляем select-запрос, получаем и печатаем результаты, после чего закрываем соединение. Это простейший скрипт для работы с MySQL из Perl. Более подробные примеры вы можете найти в этой статье.
Как работать с MySQL из скриптов на PHP
Для работы с MySQL вы можете использовать встроенный в язык PHP средства, поддержка которых уже осуществляется на хостинге. PHP имеет развитый и понятный интерфейс к этой СУБД, что делает работу с MySQL именно из PHP наиболее простой и удобной особенно для начинающих веб-мастеров и веб-программистов.
# соединяемся с сервером и выбираем свою базу данных mysql_connect("u12345.mysql.сайт","u12345","password"); mysql_select_db("database"); # готовим и выполняем запрос к БД $query = "SELECT * FROM table"; $result = mysql_query($query) or die(mysql_error()); # выводим результаты выполнения запроса while($i = mysql_fetch_row($result)) { echo $i; echo $i; ..... }Полная документация на русском языке по работе с MySQL из PHP-скриптов находится. Кроме описаний, там же вы найдете советы опытных пользователей и примеры использования функций, упоминаемых в документации. Также рекомендуем вам статью « » на сервере hostinfo.ru.
Загрузка данных с помощью LOAD DATA
Начиная с версии MySQL 3.23.49, LOAD DATA LOCAL по умолчанию запрещено по соображениям безопасности, и его надо специально включать.
MySQL-сервер у нас работает с включенным LOAD DATA LOCAL, но необходимо включение данной функциональности со стороны клиента.
Для утилиты mysql есть несколько вариантов включения данной опции:
- Параметр --local-infile=1
- Создать в домашней директории файл .my.cnf и в нем разрешить эту опцию для группы, которой пользуется данная утилита: local-infile=1
Включение данного режима из perl"а: необходимо в dsn при подключении указать файл конфигурации mysql (т.к. библиотека libmysql по умолчанию никаких дополнительных файлов конфигурации не читает) и группу в нем, в файле создать эту группу, и для этой группы выставить local-infile=1:
Например, вписываем в ~/.my.cnf
Local-infile=1 а в скрипте подключение оформляем так: my $dsn = "DBI:mysql:database:hostname;mysql_read_default_group=perl;". "mysql_read_default_file=~/.my.cnf"; my $dbh = DBI->connect($dsn, "username", "password") ||die ": Can"t connect to MySQL: $!";
Включение данного режима из PHP: у вас обязательно должен быть установлен свой собственный, скомпилированный интерпретатор PHP.
В функции mysql_connect() необходимо использовать аргумент 128 (значение константы CLIENT_LOCAL_FILES) в качестве пятого параметра.
$dbh = mysql_connect($server, $user, $pass, false, 128);Дополнительные MySQL-база и MySQL-доступ (MySQL-пользователь)
Пользователям предоставляется определенное количество баз MySQL в рамках приобретенного тарифа. При этом автоматически подключается одна база, и реквизиты доступа к ней сообщаются в письме с уведомлением о заведении услуг. Клиенты могут самостоятельно создавать дополнительные базы данных и MySQL-доступы.
Для этого необходимо в в разделе Древо услуг выбрать площадку, для которой необходимо создать дополнительную услугу и в таблице «MySQL» выбрать команду «добавить» для услуги «MySQL-доступ (доп.)» или «MySQL-база (доп.)». Пароли доступа к базам данных можно изменить, вызвав команду «изменить» у требуемого MySQL-доступа.
Дополнительная документация и полезные ссылки
MySQL является самой популярной среди разработчиков СУБД. Популярность ее сопровождается и наличием исчерпывающей и очень качественной документации. Научившись пользоваться ею, вы не будете иметь проблем с доступом к качественным описанием нужных возможностей MySQL.
- «Использование MySQL в PHP сценариях » - hostinfo.ru
- «MySQL в веб-проектах » - hostinfo.ru
Для подключения к phpMyAdmin вы можете использовать уже созданную базу данных u1234567_default (где u1234567 — ваш логин хостинга), которая автоматически создаётся при заказе хостинга. Реквизиты доступа к данной БД приведены в статье .
Внимание База данных u1234567_default создаётся только при заказе тарифных планов от «Host-0» и выше. Если вы заказывали тарифный план «Host-Lite», а потом повысили его до более высокого, данная БД не создаётся. Вам необходимо создать БД самостоятельно по инструкции:
Не могу войти в phpMyAdmin
Чтобы зайти в phpMyAdmin, необходимо использовать логин и пароль пользователя базы данных . Не путайте логин и пароль пользователя базы данных с логином и паролем от услуги хостинга (u1234567).
Если пароль базы данных не подходит, вы можете изменить его на новый при помощи инструкции:
Как создать, удалить или изменить таблицу в базе данных phpMyAdmin?
Внимание! Редактирование базы данных может привести к некорректной работе вашего сайта. Перед внесением изменений создайте бэкап вашего сайта или обратитесь к разработчикам.
Как добавить новую таблицу в базу данных?
Во время создания нового проекта сайта вебмастеру приходится решать множество задач, касаемо размещаемого контента, его отображения, обеспечения удобной навигации по разделам и т.д. При этом внесение изменений осложняется необходимостью их соотнесения с базами данных, расположенных на сервере хостинга. Это влечёт за собой существенные траты времени и сил. Для того чтобы минимизировать издержки и облегчить проведение изменений многими специалистами используется инструмент http://localhost/Tools/phpMyAdmin, позволяющий имитировать серверное пространство на ПК. В качестве примера можно рассмотреть программную оболочку Denver и один из дополнительных инструментов PhpMyAdmin.
Итак, Denver представляет собой программу, которая позволяет создать локальный сервер прямо на компьютере, а localhost/Tools/phpMyAdmin – это один из инструментов (набор специальных скриптов на PHP), используемый для обеспечения доступа к базам данных, расположенных на этом сервере. С их помощью можно осуществить управление и внесение изменений в базы данных проекта сайта, без необходимости изучения специальных команд MySQL.
Преимущества технологии
Применение подобной технологии позволяет получить целый ряд преимуществ:
![](https://i1.wp.com/lifehacki.ru/wp-content/uploads/2017/07/baza-dannih.jpg)
После того, как проект сайта будет готов, его без проблем можно перенести с локального сервера на реальный, и начать полноценно пользоваться сайтом.
Что касается непосредственно инструмента PhpMyAdmin, то его использование избавляет от необходимости изучения команд MySQL и делает процесс внесения изменений в базы данных простым и доступным даже для пользователей, имеющих ограниченные знания программирования.
Как зайти и пользоваться localhost/Tools/phpMyAdmin
Чтобы использовать средство для работы с базами данных, необходимо просто проследовать по адресу http://localhost/Tools/phpMyAdmin.
В результате откроется интерфейс инструмента, который позволяет создавать, изменять и удалять новые таблицы в базах данных с помощью интуитивно понятных команд. Эти таблицы и будут использоваться для непосредственного размещения контента сайта. Интерфейс инструмента достаточно прост и понятен, все важные элементы подписаны, так что разобраться будет несложно даже для новичка.