В данной заметке я практически рассмотрю, как в систему на базе “CentOS 6.4” накатить веб-приложение, в основе которого стоит язык программирования php на котором, реализован веб-интерфейс администрирования “СУБД MySQL“. С его помощью можно посредством дружественного и просто интерфейса управлять MySQL без использования длинных и сложных порой “SQL” команд.
Система:
[admin@TCentOS ~]$ uname -a && cat /etc/redhat-release
Linux TCentOS 2.6.32-358.23.2.el6.x86_64 #1 SMP Wed Oct 16 18:37:12 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux
CentOS release 6.4 (Final) – 64’х разрядная
По умолчанию в репозитариях системы “CentOS” нет пакета “phpMyAdmin“, поэтому подключим репозитарий (EPEL (Extra Packages for Enterprise Linux)), где данный пакет присутствует.
[admin@TCentOS ~]$ sudo rpm -Uvh http://download.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
Далее инсталлируем “MySQL” (v5.1.71) и произведен некоторую его настройку:
[admin@TCentOS ~]$ sudo yum install mysql-server -y
После инсталляции, MySQL не стартует автоматически. Произведем запуск вручную:
[admin@TCentOS ~]$ sudo service mysqld start
Initializing MySQL database: Installing MySQL system tables…
OK
Filling help tables…
OK
To start mysqld at boot time you have to copy
support-files/mysql.server to the right place for your system
PLEASE REMEMBER TO SET A PASSWORD FOR THE MySQL root USER !
To do so, start the server, then issue the following commands:
/usr/bin/mysqladmin -u root password ‘new-password’
/usr/bin/mysqladmin -u root -h TCentOS password ‘new-password’
Alternatively you can run:
/usr/bin/mysql_secure_installation
which will also give you the option of removing the test
databases and anonymous user created by default. This is
strongly recommended for production servers.
See the manual for more instructions.
You can start the MySQL daemon with:
cd /usr ; /usr/bin/mysqld_safe &
You can test the MySQL daemon with mysql-test-run.pl
cd /usr/mysql-test ; perl mysql-test-run.pl
Please report any problems with the /usr/bin/mysqlbug script!
Starting mysqld: [ OK ]
Далее инициализируем структуру MySQL системных таблиц:
[admin@TCentOS ~]$ sudo mysql_install_db
Installing MySQL system tables…
OK
Filling help tables…
OK
To start mysqld at boot time you have to copy
support-files/mysql.server to the right place for your system
PLEASE REMEMBER TO SET A PASSWORD FOR THE MySQL root USER !
To do so, start the server, then issue the following commands:
/usr/bin/mysqladmin -u root password ‘new-password’
/usr/bin/mysqladmin -u root -h TCentOS password ‘new-password’
Alternatively you can run:
/usr/bin/mysql_secure_installation
which will also give you the option of removing the test
databases and anonymous user created by default. This is
strongly recommended for production servers.
See the manual for more instructions.
You can start the MySQL daemon with:
cd /usr ; /usr/bin/mysqld_safe &
You can test the MySQL daemon with mysql-test-run.pl
cd /usr/mysql-test ; perl mysql-test-run.pl
Please report any problems with the /usr/bin/mysqlbug script!
После запустим скрипт для некоторой донастройки безопасности при работе с базой данных, зададим пароль для Административной учётной записи root, запретим удаленный вход под данной учётной записью и удалим тестовые базы.
[admin@TCentOS ~]$ sudo mysql_secure_installation
Отвечаем на вопросы :
- Enter current password for root: press Enter
- Set root password? Y
- Remove anonymous users? Y
- Disallow root login remotely? Y
- Remove test database and access to it? Y
- · Reload privilege tables now? Y
- New password: 712mbddr@@
- Re-enter new password: 712mbddr@@
Cleaning up…
All done! If you’ve completed all of the above steps, your MySQL
installation should now be secure.
Thanks for using MySQL!
Отлично установка MySQL успешно завершена в систему. Попробуем авторизоваться с использование административного логина и указанного выше пароля для доступа в консоль управления, где посредством команд можно управлять базами данных.
[admin@TCentOS ~]$ mysql -u root -p
Enter password: здесь вводим, тот который указали выше при настройке первоначальной безопасности работы с MySQL пароль, в моем случае это – 712mbddr@@
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 10
Server version: 5.1.71 Source distribution
Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type ‘help;’ or ‘\h’ for help. Type ‘\c’ to clear the current input statement.
mysql> подключение прошло успешно, сейчас мы в консоли управления
mysql> exit – выходим из консоли управления
Bye
На следующем шаге по подробному описыванию данной заметке установим из подключенного репозитария EPEL пакет phpMyAdmin (v3.5.8).
[admin@TCentOS ~]$ sudo yum install phpmyadmin –y
Далее нужно настроить доступ к оснастке управления
По умолчанию доступ к Web-интерфейс управления базами данных осуществляется только локально на том компьютере где развернуто это ПО, т.е. phpMyadmin, чтобы разрешить обращение по адресу http://Host{IP-addreess}/phpmyadmin с конкретного IP адреса или подсети, следует заменить значение 127.0.0.1 у следующих директив в этом файле:
[admin@TCentOS ~]$ sudo nano /etc/httpd/conf.d/phpMyAdmin.conf
. . .
Require ip your_workstation_IP_address
. . .
Allow from your_workstation_IP_address
. . .
Require ip your_workstation_IP_address
. . .
Allow from your_workstation_IP_address
. . .
К примеру, разрешаем доступ из локальной сети:
Require ip 127.0.0.1 192.168.1.0/24
Allow from 127.0.0.1 192.168.1.0/24
Сохраняем внесенные изменения и выходим из консольного редактора nano.
Теперь, чтобы сервер применил внесенные изменения, следует перезапустить службу WEB-сервиса Apache:
[admin@TCentOS ~]$ sudo service httpd restart
Если в консоли наблюдаете аларм следующего вида, то это значит, что у Вас не предопределена директива ServerName (должно соответствовать текущему имени хоста, на котором поднята служба Apache, т.е. вывод hostname) в конфигурационном файле apache:
[admin@TCentOS ~]$ sudo service httpd restart
Stopping httpd: [FAILED]
Starting httpd: httpd: Could not reliably determine the server’s fully qualified domain name, using 192.168.1.11 for ServerName
[ OK ]
, поправляем:
[admin@TCentOS ~]$ sudo nano /etc/httpd/conf/httpd.conf
ServerName TCentOS
Сохраняем внесенные изменения и выходим из консольного редактора nano. А после перезапускаем службу apache, она, конечно, завершится успешно, т.е. без ошибок.
[admin@TCentOS ~]$ sudo service httpd restart
Stopping httpd: [ OK ]
Starting httpd: [ OK ]
Переходим к проверке работоспобосности доступа к элементу управления базами данных через Web по ссылке /phpmyadmin. В браузере открываем, либо IP адрес текущего сервера, либо его DNS имя и добавляем в URL /phpmyadmin:
Пример: http://192.168.1.11/phpmyadmin
В поле:
User Name: вводим root
Password: вводим 712mbddr@@
В случае правильности ввода аутентификационных данных, получаем Web-ориентированный интерфейс управления SQL, как на примере скриншота ниже:
Мои поздравления, доступ для удобно управления вашими базами через Web-интерфейс установлен и работает. Вот собственно и всё, что я хотел представить в данной пошаговой заметке. C уважением, ekzorchik.