Меню Рубрики

Установка phpmyadmin для centos

Как установить phpmyadmin на CentOS 7

Phpmyadmin имеет длинный список полезных функций, таких как:

  • Интуитивно понятный и простой в использовании веб-интерфейс
  • Поддержка почти всех операций в MySQL
  • Импорт данных из CSV и SQL
  • Экспорт данных в различные форматы, такие как CSV, SQL, XML, PDF, ISO/IEC 26300 – формате opendocument text и таблицы, Word, Latex и др.
  • Легко администрировать несколько серверов MySQL из одной установки в phpmyadmin
  • Создание графической базы данных верстка в различных форматах
  • Создание сложных запросов с помощью запросов по образцу (qbe)
  • Глобальный поиск в базе данных или подмножество его
  • Преобразование сохраненных данных в любом формате с помощью набора стандартных функций, как отображение blob-данных в виде изображения или скачать-ссылка
  • И многое другое…

Требования

Для того, чтобы запустить phpmyadmin на VPS сервере под управлением CentOS 7 необходимы следующие требования к предустановленной

  • Веб-сервер: Apache, nginx или IIS и
  • PHP версии 5.3.0 или выше, с поддержкой сессии, Стандартная Библиотека PHP (SPL), поддержка json, и mbstring, zip и расширение gd2.
  • Сервера базы данных MySQL или mariadb версии 5.5 или новее
  • В CentOS 7 VPS с root доступом

Логин через SSH

Зайти для управлением CentOS 7 VPS через SSH как пользователь root

Обновить все пакеты

После того как вы вошли на сервер выполните следующую команду, чтобы убедиться, что все установленные пакеты находятся в актуальном состоянии

Установите стек Lamp

Как отмечено в разделе “Системные требования”, требуется стек Lamp (Apache и СУБД MySQL/mariadb и на PHP), чтобы запустить phpmyadmin. Мы начнем с установки веб-сервера Apache

После завершения установки, запустить веб-сервер и включить его, чтобы начать после загрузки сервера

Далее, установка PHP вместе с необходимыми расширениями PHP

И, наконец, завершить установку LAMP при установке сервера баз данных mariadb

Запустить службу и установить его для запуска при перезагрузке

Запустить ‘mysql_secure_installation’ после установки скрипта mariadb для укрепления безопасности сервера базы данных и установки пароля root. Вы можете использовать следующие варианты:

Установка phpmyadmin

phpmyadmin – не доступно в официальном репозитории в CentOS 7, поэтому нам придется включить репозиторий EPEL, выполнив следующую команду

После того, как репозиторий EPEL включен, мы можем приступить к установке phpmyadmin

Менеджер пакетов установит phpmyadmin и все необходимые зависимости и установка phpmyadmin будет завершена. Теперь вы можете открыть приложение и начать работу над вашими базами данных набрав в адресной строке http://IP_Address/phpmyadmin.

По умолчанию phpmyadmin будет доступен только с localhost. Если вы хотите, чтобы он был доступен отовсюду или определенный IP-адрес, откройте включен конфигурационный файл Apache и добавьте/отредактируйте следующие строки соответственно:

Где ip_address – это реальный IP-адрес.

Сохраните изменения и перезапустите веб-сервер Apache, чтобы изменения вступили в силу.

Для получения дополнительной информации о том, как настроить и использовать phpmyadmin почитайте официальную документацию: https://www.phpmyadmin.net/docs/

Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.

источник

Установка Phpmyadmin CentOS 7

Система управления базами данных mysql набрала огромной популярности в последнее время. Она используется на большинстве веб-серверов, поскольку для работы современных веб-технологий нужно быстрое и надежное хранилище данных.

Время от времени нам нужно вручную внести изменения в хранимые данные, но по умолчанию mysql поддерживает работу только через терминал. Это достаточно сложно, поэтому был разработан веб-интерфейс phpmyadmin. В этой статье мы рассмотрим как выполняется установка Phpmyadmin CentOS 7 и как все настроить для максимально правильной работы.

Установка Phpmyadmin CentOS 7

В репозиториях, которые поставляются по умолчанию вместе с дистрибутивом Phpmyadmin нет. Он находится в репозитории EPEL или Extra Packages for Enterprise Linux. Поэтому сначала нам нужно установить этот репозиторий:

sudo rpm -iUvh http://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm

Затем обновляем списки доступных пакетов из нового репозитория. В CentOS это делать не обязательно в отличие от Ubuntu, но будет так будет более правильно:

Заодно команда установит все доступные обновления. Дальше можно устанавливать Phpmyadmin:

sudo yum -y install phpmyadmin

Если вы используете веб-сервер Apache, то вам осталось перезапустить его и phpmyadmin будет доступен по адресу:

Установка новой версии Phpmyadmin

Но, таким образом, вы получите старую версию phpmyadmin 4.4, которая работает на php 5.4. Если вы хотите php 7 и самый свежий phpmyadmin, то его можно установить из репозитория remi. Сначала добавляем репозиторий в систему:

sudo rpm -Uvh http://rpms.remirepo.net/enterprise/remi-release-7.rpm

Обновляем доступные пакеты, как и выше:

Включаем поддержку новой версии PHP 7.1:

yum-config-manager —enable remi-php71

И теперь осталось только установить phpmyadmin Centos 7, нужную версию php он возьмет сам:

sudo yum install phpmyadmin

Дальше phpmyadmin будет доступен по тому же адресу при условии, что вы используете Apache.

Настройка Phpmyadmin Nginx

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

sudo ln -s /usr/share/phpMyAdmin /var/www/html/phpmyadmin

Тут /var/www/html/phpmyadmin — это папка с вашим проектом. Затем перезапустите php-fpm:

sudo systemctl restart php-fpm

В основной конфигурационный файл nginx.conf, в секцию http добавьте такую команду, это включит поддержку перехода по символическим ссылкам:

sudo vi /etc/nginx/nginx.conf

И еще, если у вас ISPManager поищите строчку disable_symlinks if_not_owner в настройке сайта и удалите ее иначе тоже ничего не заработает. Перезапустите nginx:

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

mv /var/www/html/phpmyadmin /var/www/html/pppma

Но для большей надежности можно использовать аутентификацию Nginx. Сначала создадим зашифрованный пароль:

Полученное значение нужно скопировать. Дальше создайте файл /etc/nginx/passwords и поместите в него имя пользователя и пароль через двоеточие, например:

sudo vi /etc/nginx/passwords

Теперь добавьте такой location в файл настройки вашего сайта, адрес pppma, в случае, если вы меняли название ссылки:

location /pppma <
auth_basic «Admin Login»;
auth_basic_user_file /etc/nginx/passwords;
>

Теперь при запросе этого адреса будет спрашиваться пароль.

И только после ввода этого пароля и пароля базы данных вы сможете войти в интерфейс управления.

Настройка phpmyadmin Apache

Радует то, что при работе с Apache Phpmyadmin будет доступен сразу же, без необходимости выполнять кучу дополнительных настроек. Но безопасность настраивать все же надо. Настройки phpmyadmin для Apache находится в файле /etc/httpd/conf.d/phpMyAdmin.conf нам будет достаточно добавить несколько строк. Но сначала создаем пароль:

htpasswd -c /etc/httpd/passwords admin

Дальше редактируем файл настроек:

Добавьте в секцию такие строки:

Options Indexes FollowSymLinks
AllowOverride All
AuthType Basic
AuthName «Restricted Content»
AuthUserFile /etc/httpd/passwords
Require valid-user

Теперь, как и в предыдущем варианте, при попытке открыть phpmyadmin вы увидите запрос пароля.

Как удалить Phpmyadmin

Удаление Phpmyadmin выполняется такой командой:

sudo yum remove phpmyadmin

Не забудьте после этого удалить оставшиеся символические ссылки и конфигурации.

Выводы

В этой небольшой статье мы рассмотрели как выполняется установка Phpmyadmin Centos 7. Теперь вы знаете как установить самую новую версию программы и как заставить ее работать в вашей системе. Надеюсь эта информация была полезной, если у вас остались вопросы, спрашивайте в комментариях!

источник

Установка phpmyadmin на CentOS 7

Phpmyadmin — популярный инструмент для управления через браузер базами данных mysql. Я почти всегда устанавливаю его на сервер, если там есть базы mysql. Мне он кажется наиболее простым и удобным средством управления. В статье опишу подробно процесс установки на web сервер apache и nginx.

Введение

Ранее я уже касался темы установки phpmyadmin в статье про настройку web сервера на базе nginx. Сейчас хочу рассмотреть более подробно этот вопрос не только на nginx, но и традиционном apache (httpd).

Несколько слов о том, что же из себя представляет инструмент под названием phpmyadmin. Это набор php скриптов, которые устанавливаются на веб сервер. С их помощью можно подключиться к локальному или удаленному mysql серверу и управять им через веб браузер. Я чаще всего с помощью phpmyadmin делаю следующие операции:

  1. Создание новых баз и пользователей, назначение прав.
  2. Экспорт или импорт баз не очень большого объема, до 50-ти мегабайт. Если база большего объема, использую утилиты командной строки (mysqldump и mysql) для управления сервером БД.
  3. Просмотр содержимого баз данных или информации о них.
Читайте также:  Установка elastix по русски

По сути, делаю практически все стандартные действия с базами данных. Без phpmyadmin можно обходиться, для самых простых конфигураций серверов (например голый zabbix сервер) мне хватает консольных утилит. Но если есть, к примеру, веб сервер с сайтами, я обязательно поставлю phpmyadmin. Мне так быстрее и удобнее.

Приступим к простой установке phpmyadmin на CentOS 7.

Подготовка web сервера apache

Далее я буду считать, что у вас уже есть установленный и настроенный сервер CentOS 7. Если это не так, то смотрите мои подробные инструкции с видео на тему установки и базовой настройки сервера CentOS 7.

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

Вы увидите полный список зависимостей, но в нем не будет самого веб сервера и интерпретатора php, только его модули. Веб сервер вам нужно предварительно установить и настроить самим. Сделем это на примере веб сервера httpd (апач). Устанавливаем его:

Теперь установим php, без него панель администрирования не заработает:

Запускаем веб сервер, добавляем его в автозагрузку и проверяем работу:

Заходите по адресу http://ip-адрес-сервер. Вы должны увидеть тестовую страницу апача. Теперь проверим, работает ли php. Создаем тестовую страничку в папке /var/www/html:

Назначаем владельца apache на созданный файл:

Теперь снова заходим по адресу http://ip-адрес-сервера, вы должны увидеть вывод phpinfo:

Если видите такой же вывод, значит все в порядке, веб сервер готов для работы с phpmyadmin. Приступаем к его установке.

Установка phpmyadmin

Устанавливаем phpmyadmin со всеми зависимостями:

После установки в каталоге с конфигурациями httpd /etc/httpd/conf.d появляется файл phpMyAdmin.conf. Сохраним сразу на всякий случай оригинальный файл, перед тем как начать его редактировать:

По-умолчанию, в конфиге закрыт доступ к панели управления для всех адресов, кроме 127.0.0.1. Чтобы открыть доступ для всех, приведите файл к следующему виду:

Я удалил все лишнее из файла, в том числе настройки, которые относились к версии apache 2.2. Перезапускаем httpd:

Заходим по адресу http://ip-адрес-сервера/phpmyadmin. Вы должны увидеть страницу логина:

В этот момент я понял, что мне некуда логиниться. На тестовом сервере, где я готовлю статью, нет mysql. Если у вас та же ситуация, что у меня, установите mariadb. Подробно об установке mysql на CentOS 7 я рассказал в статье, посвещенной настройке web-сервера, все подробности можете там посмотреть. Сейчас быстро ставим базу данных и запускаем ее:

После этого можно еще раз окрыть web интерфейс phpmyadmin и зайти под учетной записью рута. Откроется главная страница панели с общей информацией о сервере:

На этом установка закончена, веб панелью можно пользоваться. Некоторые полезные настройки мы рассмотрим далее в соответствующем разделе, а сейчас установим phpmyadmin на веб сервере nginx.

Установка на nginx

Настроим работу phpmyadmin на веб сервере nginx + php-fpm. Подробно вопрос настройки такого сервера я рассматривал ранее в статье установка и настройка веб сервера nginx + php-fpm на CentOS 7. Там речь шла именно о веб сервере и уклон был в эту сторону. Но phpmyadmin может понадобиться не только на веб серверах. Так что рассмотрим общий случай быстрой и простой настройки phpmyadmin на nginx.

Запускаем службы и добавляем в автозагрузку:

Заходим по адресу http://ip-адрес-сервера и проверяем. Вы должны увидеть тестовую страницу nginx:

Дальше устанавливаем phpmyadmin на web сервер с nginx:

Редактируем конфигурационный файл nginx для добавления установленной веб панели управления:

Приводим секцию server <> к следующему виду:

Я взял стандартные параметры и добавил несколько новых строк для корректной работы. Теперь нам нужно сделать символьную ссылку (сим линк) из папки со скриптами phpmyadmin в корневой каталог веб сервера nginx:

Дальше по идее все должно работать, но у меня не работало, пришлось перезагрузить весь сервер, так как не работал модуль php mbstring, хотя он установлен и подключен. Перезапуск php-fpm тоже не помогал, а перезагрузка помогла. Проверил 2 раза, оба раза воспроизвел ошибку. Разбираться не стал в чем причина такого поведения, просто перезагрузите сервер и продолжайте.

Идем по адресу http://ip-адрес-сервера/phpmyadmin. Должны увидеть стандартную страницу входа. У меня на ней было предупреждение:

Это сязано с тем, что в папке /var/lib/php нет директории session. Исправляем это:

Перезагружаем страницу, ошибка должна исчезнуть. Можно подключиться к mysql. Если сервер бд у вас не установлен, смотрите выше, как быстро его поставить и запустить. На этом установка закончена, рассматрим несколько полезных настроек phpmyadmin.

Настройка phpmyadmin

Пхпадмин готов к работе сразу после установки, дополнительные настройки не обазательны. Приведу полезный пример при использовании — ограничение доступа к phpmyadmin средствами веб-сервера. Для использования панели необходимо будет не только знать имя учетной записи mysql, но и пользователя и пароль для доступа непосредственно к панели.

Рассмотрим сначала пример с веб сервером apache. Будем использовать стандартное средство для ограничения доступа к каталогу с помощью .htaccees. Создадим такой файл в папке со скриптами phpmyadmin:

Теперь создадим файл с авторизационными данными:

user имя пользователя
password пароль

Чтобы авторизация заработала, необходимо в файле /etc/httpd/conf.d/phpMyAdmin.conf в разделе Directory добавить параметр AllowOverride, чтобы получилось вот так:

Перезапускаем апач и проверяем настройку. При обращении по адресу веб панели, должно выскочить окошко с авторизацией:

Проделаем то же самое на nginx. Так же создаем файл с паролем .htaccess:

Если у вас на сервере не установлен httpd, то скорее всего вы увидите ошибку:

Необходимой утилиты нет в системе. Установим htpasswd на centos:

Снова создаем файл с паролем:

Отредактируем конфигурационный файл nginx, добавив в секцию server <> новый location:

Сохраняете конфиг, перезапускаете nginx и проверяете доступ к странице. Должно выскочить такое же, как и с apache, окно авторизации.

Рассмотрим еще несколько полезных настроек phpmyadmin. После входа в панель, в разделе Настройки вы увидите сообщение:

Подключим необходимый модуль для сохранения настроек. Модуль это громко сказано, нам всего лишь необходимо создать отдельную базу данных для хранения настроек и активации некоторых расширенных возможностей. Файл для создания базы данных хранится в директории phpmyadmin по адресу /usr/share/phpMyAdmin/sql/create_tables.sql. Копируем содержимое этого файла и выполняем его тут же, в phpmyadmin в разделе SQL:

Теперь можно идти в настройки и изменять их. Я обычно отключаю проверку новой версии. Они выходят достаточно часто, обновлять мне все равно их лень, поэтому информация о новых версиях мне не нужна. Так же отключаю логотип, можно загрузить свой. Сами полистайте настройки, посмотрите, что вам интересно. Все пункты неплохо задокументированы, можно почитать за что отвечают. Иногда бывает полезно вывести отдельный столбец в списке таблиц с информацией по дате создания и обновления. Это настраивается в разеделе Настройки -> Основная панель -> Структура базы данных.

Если вы хотите подключиться к удаленному mysql серверу с помощью phpmyadmin, воспользуйтесь скриптом настройки подключения по адресу http://ip-адрес-сервера/phpmyadmin/setup/.

Заключение

Я рассмотрел основные моменты по установке и настройке phpmyadmin на веб сервер apache и nginx. Хочу подчеркнуть, что это мой личный опыт. Возможно, я где-то ошибась или поступаю не совсем верно. Если вы заметите это, прошу написать в комментариях. Я приму к сведению и исправлю статью. Я пишу статьи в том числе и для того, чтобы самому научиться чему-то новому. Комментарии к статьям мне в этом помогают.

Помогла статья? Есть возможность отблагодарить автора

Видео

Предалагаю посмотреть видео всего процесса установки и настройки phpmyadmin на примере веб сервера apache.

Онлайн курсы по Mikrotik

Автор Zerox

70 комментариев

Здравствуйте. Как сделать авторизацию, если phpmyadmin работает на отдельном виртуальном хосте. То есть site.ru для php-fpm и pma.site.ru для phpmyadmin. По данному руководству не получается. Всё сделал как написано, ошибок нет, но окно авторизации не выскакивает. Сервер на nginx.

Добавьте то же самое, что в примере для nginx в статье в location / своего виртуального хоста:

auth_basic «Enter password»;
auth_basic_user_file /usr/share/phpMyAdmin/.htpasswd;

У делал конфиг согласно вашей инструкции Nginx + php-fpm на CentOS 7. Там файлы phpmyadmin копируются в отдельную директорию для виртуального домена. Исходя из это вопрос. Нужно ли менять тогда путь до файлов phpmyadmin. То есть везде прописывать не /usr/share/phpMyAdmin/.htpasswd; а /web/sites/pma.site.ru/www/.htpasswd; И еще не могу понять в какой location добавлять. Или создавать новый location? Сейчас у меня nginx ругается
nginx: [emerg] invalid number of arguments in «auth_basic» directive in /etc/nginx/nginx.conf:105
Вот конфиг куда я добавил

Читайте также:  Установка ком на вольво внл

# phpmyadmin
server <
listen 80;
server_name pma.site.ru;
root /web/sites/pma.site.ru/www/;
index index.php index.html index.htm;
access_log /web/sites/pma.site.ru/log/access.log main;
error_log /web/sites/pma.site.ru/log/error.log;

\.php$ <
auth_basic «Enter password»;
auth_basic_user_file /web/sites/pma.site.ru/www/.htpasswd;

Попробовал по всякому. И новый location и существующий. И название локейшена менять. И везде он ругается на неверный аргумент auth_basic. Что я не так делаю?

Исправил проблему с nvalid number of arguments in «auth_basic»
оказывается nginx не понимает кавычки вида «» нужны кавычки вида «»
Ошибки пропали, но окно авторизации так и не появляется

*кавычки вида «» * редактор здесь их заменяет

Всё разобрался, спасибо за помощь (ирония).
auth_basic «Enter password»;
auth_basic_user_file /usr/share/phpMyAdmin/.htpasswd;
Оказывается для отдельного виртуального домена эти параметры нужно прописывать не в location, а сразу в секцию server.
И ещё у меня тупо хром не сбрасывал сессию http и поэтому не выскакивало окно авторизации.

По вашему мануалу я дошел до пункта, когда надо в адресную строку http://ip-адрес сервера/phpmyadmin
и он должен открыть phpmyadmin.

ln -s /usr/share/phpMyAdmin /usr/share/nginx/html/phpmyadmin

выполнив это действие в моей директории показывает
phpmyadmin -> /usr/share/phpMyadmin
Но при попытке ввести адрес сервера/phpmyadmin, отображается ошибка 404.

Могли бы вы подсказать, в чем может быть ошибка?

Где-то с путями или настройками ошиблись. Смотрите лог web сервера в /var/log/httpd, там будут подсказки по ошибке.

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

Суть многих проблем комментаторов в одной простой вещи Вы пользуетесь статьей как букварем переписываете все и вставляете себе без анализа, что зачем почему.

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

Поэтому приучите себя к 2-м моментам, смотреть несколько примеров и на основе этих примеров создать свое решение под свои задачи. Нельзя копи-пастом научится нужно понимать процесс.
Отсюда второй момент, учитесь понимать суть процесса и тогда любая задача будет решаться! Вне зависимости от условий, например смена платформы вас не смутит, вам только нужно будет привыкнуть к новому расположению дерева папок например.
Приведу пример. Вынужден был на некоторое время пересесть по работе на Солярку (операционная система Solaris) она не PC не x86 грубо говоря совсем по другому работает в физическом плане (архитектура процессора другая) но суть все равно Unix, адаптация заняла несколько минут и сводилась к чтению (освежению в памяти) манов по командам которые несколько отличаются и все. Остальное все как по маслу. Потому что зная суть Вы не ошибетесь (нет ошибаться будете но с пониманием ))) ну типа вот я дурачек запятую пропустил)
Надеюсь не наплодил холиваров.
Автору добра и печенек! Спасибо за статьи, полезно и качественно.

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

Доброго времени суток. Если есть возможность хотелось бы почитать Ваш вариант настройки httpd+nginx+php-fpm+mysql+phpmyadmin и все это на ssl и несколько пользователей. Например слабый хост без панели управления. Не так давно я столкнулся и пару моментов затупил пришлось пошарить в нете. Самое банальное что меня затупило это после настройки (ssl) несколько сайтов ушли в циклическую подгрузку я целый день тупил понять не мог что мешает загрузится.

А зачем тут httpd, если есть php-fpm? Или наоборот, зачем php-fpm, если уже еть httpd? Обычно если httpd используется, то он с php модулем идет. Не вижу смысла комбинировать их вместе. Кейс очень специфичный и редкий. Я вообще так никогда не настраивал.

Это было нужно для комбинации разных вариантов для 2-х пользователей. в одном варианте как бакенд+фронт и во втором как nginx+php-fpm. тот еще велосипед ))) с гигом оперативы и одним ядром…

подскажите пожалуйста куда капать начинающему.
выходит ошибка после

Ошибка: Пакет: php-tidy-5.4.16-7.el7.x86_64 (epel)
Необходимо: php(api) = 20100412-64
Установлено: php-common-5.6.40-7.el7.remi.x86_64 (@remi-php56)
php(api) = 20131106-64
Доступно: php-common-5.4.16-46.el7.x86_64 (base)
php(api) = 20100412-64
Ошибка: Пакет: php-process-5.4.16-46.el7.x86_64 (base)
Необходимо: php-common(x86-64) = 5.4.16-46.el7
Установлено: php-common-5.6.40-7.el7.remi.x86_64 (@remi-php56)
php-common(x86-64) = 5.6.40-7.el7.remi
Доступно: php-common-5.4.16-46.el7.x86_64 (base)
php-common(x86-64) = 5.4.16-46.el7
Ошибка: Пакет: php-tidy-5.4.16-7.el7.x86_64 (epel)
Необходимо: php(zend-abi) = 20100525-64
Установлено: php-common-5.6.40-7.el7.remi.x86_64 (@remi-php56)
php(zend-abi) = 20131226-64
Доступно: php-common-5.4.16-46.el7.x86_64 (base)
php(zend-abi) = 20100525-64
Ошибка: Пакет: php-bcmath-5.4.16-46.el7.x86_64 (base)
Необходимо: php-common(x86-64) = 5.4.16-46.el7
Установлено: php-common-5.6.40-7.el7.remi.x86_64 (@remi-php56)
php-common(x86-64) = 5.6.40-7.el7.remi
Доступно: php-common-5.4.16-46.el7.x86_64 (base)
php-common(x86-64) = 5.4.16-46.el7
Вы можете попробовать —skip-broken чтобы обойти проблему
Вы можете попробовать запустить: rpm -Va —nofiles —nodigest

Я так понял, у вас уже стоит php5.6, а phpmyadmin из стандартной репы хочет php5.4. Я бы не заморачивался и скачал вручную скрипты phpmyadmin да распаковал в любой виртуальный хост и запустил оттуда. Так проще и быстрее. Я обычно так поступаю.
https://www.phpmyadmin.net/downloads/

Вопрос к сеции «Приводим секцию server <> к следующему виду:»
стоит «index.html index.htm;»
это лишнее «index.htm» или так должно быть?

Вы оказались абсолютно правы.
В логе ошибок сервера nginx видно, что обращаюсь при наборе http:///phpmyadmin НЕ в /usr/share/nginx/html/phpmyadmin , а
директорию заббикса /usr/share/zabbix/phpmyadmin. (Заббикс ставил по Вашему описанию , но всё заработало сразу без проблем).
Вылечил по-ленивому:
создал ещё одну ссылку в таком виде: # ln -s /usr/share/phpMyAdmin /usr/zabbix/phpmyadmin

Спасибо за очень интересный ресурс !

Здравствуйте, Zerox !
У Вас прекрасный ресурс ! Мне очень интересно его читать.

Установил nginx, php 7.1, mariadb (всё работает), затем поставил phpmyadmin как здесь описано? но при попытке запустить phpmyadmin получаю 404 Not Found
nginx/1.14.2

Явно где-то ошибка в конфиге. По вашему урлу, по которому заходите, нет исходников phpmyadmin, поэтому и ошибка 404 Not Found. В логе с ошибками nginx можно посмотреть, в какую реально папку за скриптами он обращается при заходе через браузер на страницу с ошибкой.

Привет дружище, извини что отвлекаю, не можешь помочь с phpMyAdmin?
Как правильно настроить привилегии пользователей и как правильно настроить таблицу БД, а то я чё то запутался совсем и не могу понять что к чему. У меня проблема в том, что моему phpMyAdmin может подключиться любой пользовать по любому логину и паролю, как бы мне это исправить и что нужно настроить?

я конечно извиняюсь что вас отвлекаю, но может и с этим поможете?
sudo systemctl status mariadb
● mariadb.service — MariaDB database server
Loaded: loaded (/usr/lib/systemd/system/mariadb.service; disabled; vendor preset: disabled)
Active: active (running) since Thu 2018-11-29 17:28:56 MSK; 2min 4s ago
Process: 29482 ExecStartPost=/usr/libexec/mariadb-wait-ready $MAINP > Process: 29451 ExecStartPre=/usr/libexec/mariadb-prepare-db-dir %n (code=exited, status=0/SUCCESS)
Main PID: 29481 (mysqld_safe)
CGroup: /system.slice/mariadb.service
├─29481 /bin/sh /usr/bin/mysqld_safe —basedir=/usr
└─30036 /usr/libexec/mysqld —basedir=/usr —datadir=/var/lib/mysql —plugin-dir=/usr/…

Nov 29 17:28:56 my-sayt.ru systemd[1]: Starting MariaDB database server…
Nov 29 17:28:56 my-sayt.ru mariadb-prepare-db-dir[29451]: Database MariaDB is probably initiali…e.
Nov 29 17:28:56 my-sayt.ru systemd[1]: Started MariaDB database server.
Nov 29 17:28:57 my-sayt.ru mysqld_safe[29481]: 181129 17:28:57 mysqld_safe Logging to ‘/var/lo…g’.
Nov 29 17:28:57 my-sayt.ru mysqld_safe[29481]: cat: /var/run/mariadb/mariadb.pid: Permission denied
Nov 29 17:28:57 my-sayt.ru mysqld_safe[29481]: 181129 17:28:57 mysqld_safe Starting mysqld dae…sql
Hint: Some lines were ellipsized, use -l to show in full.

это что значит необходимо проверить права доступа к файлам и наличие всех необходимых таблиц в БД?
не поможете с решением подетальней если можно.

Тут логи обрезаны, ничего не понятно. Но я вижу, что сервис работает.

После обновления php по yum update php в centos 7 в /etc/httpd/conf.d
появилось три файла:
phpmyadmin.com
phpmyadmin

rpmsave
при переходе по адресу http://адрес-сайта.ru/phpmyadmin/
выходит ошибка 403 You don’t have permission to access /phpmyadmin/ on this server.
помогите разобраться пожалуйста!

У вас файл с настройками заменен на новый, где настройки дефолтные. Либо верните обратно файл phpmyadmin

rpmsave, либо в phpmyadmin.com внесите вручную настройки из rpmsave. Надо внимательно читать, что пишет пакетный менеджер при обновлении. Он наверняка задержался на этом момента и спросил, что делать с конфигурацией. Вы выбрали заменить новой версией файла.

то есть надо отредактировать файл phpmyadmin.com
скопировав все настройки из phpmyadmin

rpmsave так что ли получается?
а, с двумя оставшимися файлами что делать — можно удалить?

Надо осмысленно скопировать именно настройки, а не весь файл. Там наверно формат поменялся, раз с обновлением пришел и новый конфигурационный файл.

Читайте также:  Установка передних брызговиков дастер гард

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

пробую сделать дополнительную авторизацию, выскакивает окно для ввода пользователя и пароль. Но после ввода правильных данных nginx выдает что страница не найдена. Выдаёт 404 . Куда капать дальше и не знаю.

Доброго дня. Спасибо автору за очень полезную статью. Всё сделал так как написано тут но только на Apache и всё отлично работает отлично.

Добрый день.
Подскажите в чём может быть проблема, установил nginx, но когда захожу, то пишет что:

The requested URL /nginx was not found on this server.

[root@centos-7-1]# systemctl status nginx.service
● nginx.service — The nginx HTTP and reverse proxy server
Loaded: loaded (/usr/lib/systemd/system/nginx.service; enabled; vendor preset: disabled)
Active: failed (Result: exit-code) since Thu 2017-07-13 06:07:01 UTC; 24s ago
Process: 1180 ExecStart=/usr/sbin/nginx (code=exited, status=1/FAILURE)
Process: 1178 ExecStartPre=/usr/sbin/nginx -t (code=exited, status=0/SUCCESS)
Process: 1176 ExecStartPre=/usr/bin/rm -f /run/nginx.p > Jul 13 06:06:59 centos-7-1 nginx[1180]: nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
Jul 13 06:06:59 centos-7-1 nginx[1180]: nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
Jul 13 06:07:00 centos-7-1 nginx[1180]: nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
Jul 13 06:07:00 centos-7-1 nginx[1180]: nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
Jul 13 06:07:01 centos-7-1 nginx[1180]: nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
Jul 13 06:07:01 centos-7-1 systemd[1]: nginx.service: control process exited, code=exited status=1
Jul 13 06:07:01 centos-7-1 nginx[1180]: nginx: [emerg] still could not bind()
Jul 13 06:07:01 centos-7-1 systemd[1]: Failed to start The nginx HTTP and reverse proxy server.
Jul 13 06:07:01 centos-7-1 systemd[1]: Unit nginx.service entered failed state.
Jul 13 06:07:01 centos-7-1 systemd[1]: nginx.service failed.

Мануалы рабочие , по крайней мере по ним поставил и настроил : Centos 7 , apache , php 5.4 , mariadb , phpmyadmin и продолжаю дальше читать статьи и знакомиться . Единственное как пишут некоторые проблема возникла когда пытался установить phpmyadmin и zabbix все как указано у автора в статьях но возникли ошибки , потому что обновил php до версии 5.6 (тоже как у автора в статье) . Я пока мало что понимаю в Linux’ax , но удалив php 5.6 и поставив 5.4 все очень даже гладко установилось .
Автору большое спасибо за то что делится своим опытом и вкладывает в это свои силы и труд .

Можно не возвращаться обратно на версию 5.4, а установить из репозитория remo phpmyadmin c поддержкой php 5.6.

Обратите внимание, перед enablerepo двойной дефис «yum —enablerepo=remi,remi-php56 install phpMyAdmin»

Спасибо за замечание, подредактировал комментарий.

Добрый день.
Спасибо за развернутые инструкции, и такое количество манов по настройке и инсталяции.

Было бы корректней поправить статью, а не комментарий. люди тратят уйму времени на решение столь простой задачи, как было замечено выше эта статья тянется и предыдущей по настройке lamp, что стоит просто указать, если обновились до 5.6 надо ставить из репы.
На момент написания стать, как вы заметили, это тоже не работало, по причине зависимостей пакетов, точнее их отсутcтвия.

спасибо! за простое решение установки актуальной версии phpmyadmin с поддержкой php56 — без этой вставочки (remi-php56) прям какой-то «затык» получался!

Мануалы для самого автора! В реале выплывает то одно то другое… Ты на реальном примере делай. Например возьми хост reg.ru и покажи!

Возьми сам и покажи. Как я возьму реальный пример reg.ru, если этот домен мне не принадлежит. Придется все равно делать условно. Я не настаиваю, если есть лучше инструкции, пользуйся ими. И со мной поделись, я посмотрю, поучусь.

А как закрыть доступ к phpmyadmin если настроил на pma.site1.ru по вашей инструкции nginx-php-fpm-na-centos-7 (все работает так что я рад, вот сейчас бы еще разобраться как там его паролем закрыть дополнительно)…

Разобрался используя документацию nginx оказывается если сервер указан мне надобыло location делать / и все ок.

Нашел свою ошибку, исправился.

Помогите пожалуйста, создавая базу через «SQL» прописав в ручную все с «create_tables.sql.» команды не проходят и пишит ошибку

CREATE TABLE IF NOT EXISTS ‘pma_relation’ (
‘master_db’ varchar(64) NOT NULL default »,
‘master_table’ varchar(64) NOT NULL default »,
‘master_field’ varchar(64) NOT NULL default »,
‘foreign_db’ varchar(64) NOT NULL default »,
‘foreign_table’ varchar(64) NOT NULL default »,
‘foreign_field’ varchar(64) NOT NULL default »,
PRIMARY KEY (‘master_db’,’master_table’,’master_field’),
KEY ‘foreign_field’ (‘foreign_db’,’foreign_table’)
)
COMMENT=’Relation table’
DEFAULT CHARACTER SET utf8 COLLATE utf8_bin
Ответ MySQL: Документация

#1064 — You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near »pma_relation’ (
‘master_db’ varchar(64) NOT NULL default »,
‘master_’ at line 1

Это что за запрос? По моему ошибка в синтаксисе. Где-то не хватает точки с запятой на конце ;.

Вот запрос такой же как у Вас на фотографии на примере и тоже ошибка

1 CREATE DATABASE IF NOT EXISTS ‘phpmyadmin’
2 DEFAULT CHARACTER SET utf8 COLLATE utf8_bin;
3USE phpmyadmin;

CREATE DATABASE IF NOT EXISTS ‘phpmyadmin’
DEFAULT CHARACTER SET utf8 COLLATE utf8_bin;

#1064 — You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near »phpmyadmin’
DEFAULT CHARACTER SET utf8 COLLATE utf8_bin’ at line 1

Подскажите после команды yum install -y phpmyadmin получаю след ошибку You could try using —skip-broken to work around the problem, прописываю —skip-broken и снова запускаю установку но phpmyadmin не ставится как побороть?Centos 7 на нем уже поднят zabbix 3.2

Это не полный текст ошибки, это предлагаемый вариант решения. Покажи полный текст, может быть понятно будет в чем проблема.

]# yum -y install phpmyadmin
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
* base: mirror.h1host.ru
* epel: mirror.yandex.ru
* extras: mirror.h1host.ru
* updates: mirror.h1host.ru
Resolving Dependencies
—> Running transaction check
—> Package phpMyAdmin.noarch 0:4.0.10.17-2.el6 will be installed
—> Processing Dependency: php-mcrypt >= 5.2.0 for package: phpMyAdmin-4.0.10.17-2.el6.noarch
—> Processing Dependency: php-tcpdf-dejavu-sans-fonts for package: phpMyAdmin-4.0.10.17-2.el6.noarch
—> Processing Dependency: php-tcpdf for package: phpMyAdmin-4.0.10.17-2.el6.noarch
—> Processing Dependency: php-php-gettext for package: phpMyAdmin-4.0.10.17-2.el6.noarch
—> Running transaction check
—> Package php-mcrypt.x86_64 0:5.3.3-5.el6 will be installed
—> Processing Dependency: php(zend-abi) = 20090626 for package: php-mcrypt-5.3.3-5.el6.x86_64
—> Processing Dependency: php(api) = 20090626 for package: php-mcrypt-5.3.3-5.el6.x86_64
—> Processing Dependency: libmcrypt.so.4()(64bit) for package: php-mcrypt-5.3.3-5.el6.x86_64
—> Package php-php-gettext.noarch 0:1.0.11-12.el6 will be installed
—> Package php-tcpdf.noarch 0:6.2.11-1.el6 will be installed
—> Processing Dependency: php-tidy for package: php-tcpdf-6.2.11-1.el6.noarch
—> Processing Dependency: php-posix for package: php-tcpdf-6.2.11-1.el6.noarch
—> Package php-tcpdf-dejavu-sans-fonts.noarch 0:6.2.11-1.el6 will be installed
—> Running transaction check
—> Package libmcrypt.x86_64 0:2.5.8-9.el6 will be installed
—> Package php-mcrypt.x86_64 0:5.3.3-5.el6 will be installed
—> Processing Dependency: php(zend-abi) = 20090626 for package: php-mcrypt-5.3.3-5.el6.x86_64
—> Processing Dependency: php(api) = 20090626 for package: php-mcrypt-5.3.3-5.el6.x86_64
—> Package php-process.x86_64 0:5.4.16-36.3.el7_2 will be installed
—> Package php-tcpdf.noarch 0:6.2.11-1.el6 will be installed
—> Processing Dependency: php-tidy for package: php-tcpdf-6.2.11-1.el6.noarch
—> Finished Dependency Resolution
Error: Package: php-mcrypt-5.3.3-5.el6.x86_64 (epel)
Requires: php(zend-abi) = 20090626
Installed: php-common-5.4.16-36.3.el7_2.x86_64 (@updates)
php(zend-abi) = 20100525-64
Available: php-common-5.4.16-36.el7_1.x86_64 (base)
php(zend-abi) = 20100525-64
Available: php-common-5.4.16-36.1.el7_2.1.x86_64 (updates)
php(zend-abi) = 20100525-64
Error: Package: php-mcrypt-5.3.3-5.el6.x86_64 (epel)
Requires: php(api) = 20090626
Installed: php-common-5.4.16-36.3.el7_2.x86_64 (@updates)
php(api) = 20100412-64
Available: php-common-5.4.16-36.el7_1.x86_64 (base)
php(api) = 20100412-64
Available: php-common-5.4.16-36.1.el7_2.1.x86_64 (updates)
php(api) = 20100412-64
Error: Package: php-tcpdf-6.2.11-1.el6.noarch (epel)
Requires: php-tidy
You could try using —skip-broken to work around the problem
You could try running: rpm -Va —nofiles —nodigest

Ничего не понимаю. У тебя какая версия системы? В логе идет установка пакетов от версии centos 6, но при этом видно, что установлен пакет php-common-5.4.16-36.3.el7_2.x86_64 от 7-й версии. В любом случае тут на лицо проблемы с пакетами, с ними нужно внимательно разбираться. Я советую просто скачать исходники phpmyadmin с сайта и положить их в веб сервер, попробовать зайти и посмотреть, заработает или нет. Возможно все необходимые зависимости уже стоят в системе и все заработает и так.

Не обязательно ставить phpmyadmin именно через yum. По сути это просто набор php скриптов.

источник

Добавить комментарий

Adblock
detector