Архив метки: phpMyAdmin

Как пользоваться phpMyAdmin

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

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

Читать далее Как пользоваться phpMyAdmin

Установка 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, но будет так будет более правильно:

sudo yum -y update

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

sudo yum -y install phpmyadmin

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

http://ip_вашего_сервера/phpmyadmin

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

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

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

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

sudo yum update

Включаем поддержку новой версии 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

disable_symlinks off;

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

sudo nginx -s reload

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

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

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

openssl passwd

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

sudo vi /etc/nginx/passwords

admin:4inq6EdrlAHMA

Теперь добавьте такой 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

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

vi /etc/httpd/conf.d/phpMyAdmin.conf

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

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. Теперь вы знаете как установить самую новую версию программы и как заставить ее работать в вашей системе. Надеюсь эта информация была полезной, если у вас остались вопросы, спрашивайте в комментариях!

Максимальный размер загружаемого файла через PHP

Часто приходится сталкиваться с проблемой превышения допустимого размера загружаемого файла, с помощью протокола прикладного уровня HTTP или защищенного аналога HTTPS, при попытке загрузить на сервер файл большого размера методами GET или POST, потому, что в настройках PHP точно указан какой максимальный размер файла можно загрузить через форму и он явно ниже того, который вы хотите загрузить.

Так же с подобной проблемой часто сталкиваются веб мастера при попытке «поднять» большую по объёму базу данных стандартными средствами программного обеспечения для работы с БД — phpMyAdmin в работе с локальным серверным набором Denwer. Обычно для подобных нужд используют дополнительные программные средства наподобие sypex dumper и ему подобных. Но ведь мы же хотим сделать через phpMyAdmin, поэтому придется немного поднастроить конфигурацию php.  Кстати все ваши изменения можно наглядно увидеть на вкладке ipmort в графе разрешённого размера файла БД. Обычно, по умолчанию, там написано 2 мб, после ваших действия эта цифра должна измениться автоматически.

Что бы это изменить делаем следующие действия.

Например если импортируется с phpmyadmin на денвере, то увеличить ограничения в php.ini. Находится он по следующему локальному адресу:

Z:\usr\local\php5\php.ini

найти

post_max_size = 2M

(вместо 2M может стоять другая цифра, поэтому ищите по названию параметра)
и заменить к примеру на

post_max_size = 2000M

(Это максимальный размер файла загружаемого на сервер методом POST, тут главное не переусердствовать)

найти

upload_max_filesize = 2M

и заменить на

upload_max_filesize = 2000M

(это максимальный размер загружаемого файла)

ну и лимит времени обработки скрипта тоже можно увеличить

max_execution_time иmax_input_time

например поставить

max_execution_time = 18000

(это максимально допустимое время выполнения скрипта, при работе с большими объёмами данных и на локальном хосте можно выставить и побольше)

max_input_time = 18000

(это время за которое PHP скрипт должен разобрать все входные данные, переданные запросами вроде POST или GET. Время измеряется от момента, когда сервером получены все данные, до момента, когда скрипт начинает выполняться. Не столь важная директива для целей преследуемых данной статьёй)

и памяти можно увеличить

memory_limit = 128M

(это максимальный выделяемый размер памяти для обработки скрипта. Если у вас «тяжелые» файлы или с ними надо сделать достаточно ресурсоемкие действия, например распаковать большой архив базы данных, то выставляйте размер больше).

и в конце всех действий просто перезагрузить веб сервер.

Или с командной строкой

Z:\usr\local\mysql5\bin\mysql_run_to_import_dumps.exe -uЮЗЕР -pПАРОЛЬ -hlocalhost --default-character-set=utf8 --force БАЗА &lt; Z:\db_base_file.sql

Вот собственно и все не хитрые методы, которые помогут вам всячески увеличить допустимый размер загружаемого файла. Теперь импортировать базу данных размером более 100 мб через phpMyAdmin на локальном сервере не составит никакого труда.