В админке Joomla 3 после установки можно выставить основные параметры настроек базы данных для полноценной работы сайта на этой CMS. Однако, для того, чтобы, например, поменять пароль пользователя базы данных, доступа из админки недостаточно. Для полноценного доступа ко всем настройкам работы с базой данных нужен доступ к корневой папке с файлами на сервере, а конкретно к файлу configuration.php
. О том, какие переменные в конфиге за что отвечают в работе с базой данных, рассмотрим в этой статье.
- Внешний вид настроек базы данных в админке Joomla 3
- Переменные настроек базы данных в конфиге
configuration.php
Joomla 3 - Соответствие переменных конфига
configuration.php
полям в админке Joomla 3 - Резюме
Внешний вид настроек базы данных в админке Joomla 3
Как было описано и показано в → этой статье, «Настройки базы данных» находятся в «Общих настройках» на вкладке «Сервер» админки Joomla 3 и выглядят так:
Как видно на картинке выше, имеется пять полей для настроек коннекта и работы с базой данных:
- Поле «Тип базы данных»
- Поле «Хост»
- Поле «Имя пользователя базы данных»
- Поле «Имя базы данных»
- Поле «Префикс таблиц базы данных»
Переменные настроек базы данных в конфиге configuration.php
Joomla 3
Теперь рассмотрим, какие переменные в файле конфига configuration.php
Joomla 3 отвечают за работу с базой данных. Их на одно больше, чем полей в админке Joomla, так как есть поле, в котором хранится пароль пользователя базы данных. Именно это поле (видимо по причинам безопасности) не отображается в админке и его нельзя изменить стандартными средствами из админ.панели. Итак. переменные:
public $dbtype = 'mysqli';
public $host = 'localhost';
public $user = 'Тут Имя Пользователя Базы Данных';
public $password = 'Тут Пароль Пользователя Базы Данных';
public $db = 'Тут Имя Базы Данных';
public $dbprefix = 'тут префикс таблиц БД_';
Соответствие переменных конфига configuration.php полям в админке Joomla 3
Переменная $dbtype
Переменная $dbtype
содержит строку, обозначающую тип базы данных, на которой работает сайт. Обычно это mysqli
. То есть СУБД MySQLi.
Переменной $dbtype
соответствует поле «Тип базы данных» в админке Joomla.
Переменная $host
Переменная $host
содержит строку, обозначающую имя хоста базы данных с которой работает сайт. Оно зависит от настроек сервера. В 99% случаев это localhost
.
Переменной $host
соответствует поле «Хост» в админке Joomla.
Переменная $user
Переменная $user
содержит строку, с именем пользователя базы данных с которой работает сайт. Оно зависит от настроек базы данных сервера и вводится при создании новой базы данных или его нужно запросить у хостера, если он запрещает самостоятельно создавать базы данных и/или менять их настройки на сервере.
Переменной $user
соответствует поле «Имя пользователя базы данных» в админке Joomla.
Переменная $password
Переменная $password
содержит строку, с паролем пользователя базы данных с которой работает сайт. Пароль пользователя зависит от настроек базы данных сервера и вводится при создании новой базы данных или его нужно запросить у хостера, если он запрещает самостоятельно создавать базы данных и/или менять их настройки на сервере.
Переменной $password
нет в админке Joomla и её значение можно изменить только в конфигурационном файле configuration.php
.
Переменная $db
Переменная $db
содержит строку, с именем (названием) базы данных с которой работает сайт. Оно зависит от настроек базы данных сервера и вводится при создании новой базы данных или его нужно запросить у хостера, если он запрещает самостоятельно создавать базы данных и/или менять их настройки на сервере.
Переменной $db соответствует поле «Имя базы данных» в админке Joomla.
Переменная $dbprefix
И последняя переменная $dbprefix
содержит строку, с префиксом таблиц базы данных с которой работает сайт. Оно вводится при установке Joomla 3 на сервер и служит для того, чтобы не платить хостерам за новую базу данных, а использовать одну базу данных для работы с несколькими сайтами. Для того, чтобы несколько сайтов работали на одной базе данных достаточно, чтобы у этих сайтов были разные префиксы таблиц (для каждого сайта свой префикс). Это слегка замедляет работу сайтов, но не сильно заметно при малых нагрузках и, при этом, можно сэкономить несколько десятков рублей в месяц, не платя за хостинг отдельной базы данных под каждый сайт. Ну и плюс ещё в том, что бэкап делать быстрее — сделать дамп одной базы данных проще, чем нескольких.
Однако минус всё-таки есть. Если падает сервер базы данных или как-то нарушается его работа, то все сайты, завязанные на одну базу данных, перестают работать.
Переменной $dbprefix
соответствует поле «Префикс таблиц базы данных» в админке Joomla.
Резюме
Резюмируя все написанное выше, можно сказать, что настраивать работу базы данных сайта на Joomla 3 в конфигурационном файле configuration.php
также просто, как и через админку (если не проще). Плюс пароль пользователя базы данных можно поменять только в конфиге.
Работая с файлом конфига следует помнить, что он представляет из себя класс языка программирования PHP — class JConfig
. Поэтому важно соблюдать синтаксис php внося изменения в этот файл.
Заберите ссылку на статью к себе, чтобы потом легко её найти!
Раз уж досюда дочитали, то может может есть желание рассказать об этом месте своим друзьям, знакомым и просто мимо проходящим?
Не надо себя сдерживать! ;)