Здравствуйте. Установил ejabberd, развернул, все работает. Далее была поставлена задача опубликовать и подружить его с MYSQL. Публикация проблем не вызвала. Проблема встала с адаптацией с MYSQL.
Есть ли на эту тему подробные инструкции. На многих сайтах есть информация,о нехватки какого-то модуля для взаимодействия с MYSQL.
Пытался делать по
http://ivanosipov.ru/?p=372. Но наткнулся на ошибки второго пункта при вводе команды
cd /root/src/ejabberd-modules/mod_ctlextra/trunk
./build.sh (Crush dump).
По инструкции с
http://www.sysadminwiki.ru/wiki/Ejabberd, нет доступа к схеме
https://git.process-one.net/ejabberd/mainline/blobs/raw/2.1.x/src/odbc/mysql.sql. и нет информации о докачке дополнительных модулей взаимодействия с MYSQL.
Проясните пожалуйста информацию по данной проблеме. Достаточно ли просто поставить mysql, создать базу и изменить в cfg метод подключения? Как будет себя вести Ejabberd + MySql с огромным количеством подключений (100 000 +). Как проверить номер версии установленного EJAbberd, если устанавливал с репозитория?
Я даже не знаю с чего начать. Стоит Ubuntu 12.04.4 LTS.
Пользователь решил продолжить мысль 26 Мая 2014, 17:32:24:
Вообщем я смог частично прикрутить MYSQL к Ejabberd. Установка и настройка самого Ejabberd написано здесь же (
https://help.ubuntu.ru/wiki/jabber_%D1%81%D0%B5%D1%80%D0%B2%D0%B5%D1%80).
1.Далее ставим пакеты
apt-get install subversion mysql-server mysql-client
2. Настраиваем MYSQL
mysql -u root -p
Cоздаем базу данных
CREATE DATABASE ejabberd;
Создаем юзера
GRANT ALL PRIVILEGES ON ejabberd.* TO "ejabberd"@"localhost" IDENTIFIED BY "password";
Обновляем права
FLUSH PRIVILEGES;
Exit
3.Настройка Ejabberd:
Качаем скрипт для заполнения таблиц в БД:
wget
http://svn.process-one.net/ejabberd/tags/ejabberd-2.1.2/src/odbc/mysql.sql4. Заходим в MYSQL и выполняем скачанный запрос
mysql -u root -p -D ejabberd
\. mysql.sql
EXIT
5.
Далее качаем модули подключения (как я понял, а лучше вы объясните, что это)svn co http://svn.process-one.net/ejabberd-modules/mysql/trunk mysql-odbc
6. Переходим в mysql-odbc ,Компилируем и копируем их
cd mysql-odbc/
./build.sh
7.Тут у меня возникла ошибка вида Crash Dump. Решение заключалось в установке полного пакета Erlang
sudo apt-get install erlang
8. Переходим в папку Ebin и копируем все, что связано с MYSQL и изменяем владельца
cd ebin/
cp mysql* /usr/lib/ejabberd/ebin/
chown -R ejabberd /usr/lib/ejabberd/ebin/
9. Останавливаем сервер и редактируем файл Ejabberd.cfg
sudo /etc/init.d/ejabberd stop
sudo nano /etc/ejabberd/ejabberd.cfg
10. В файле ставим аутентификацию БД
{auth_method, odbc}
11. Меняем названия модулей
Старые названия
{mod_last []},
{mod_offline []},
{mod_roster []},
{mod_vcard []},
Новые названия
{mod_last_odbc, []},
{mod_offline_odbc, []},
{mod_roster_odbc, []},
{mod_vcard_odbc, []},
12.Строка подключения к MYSQL
{odbc_server, {mysql, "localhost", "ejabberd", "ejabberd", "Password"}}.
13. Сохраняем файл и стартуем сервер
sudo /etc/init.d/ejabberd start
Вот и все.
Помогла следующая ссылка
http://forum.odmins-it.ru/index.php?topic=170.0Остаются еще вопросы. Это полный переход к MYSQL или какие-то данные еще хранятся во встроенной бд? Где можно узнать максимальное кол-во подключений? Как себя сервер будет вести с большим кол-вом пользователей (от 100 тыс и выше )?
Прошу прощение за корявое оформление.