Nobody about something

Конфигурация сервера teamspeak с mysql5

Написано 4 ноября 2008 в 6:30 - Рубрики: *nix

Пример установки на Debian 4

  1. Ставим TeamSpeak как обычно:
    Скачиваем с официального сайта (http://www.goteamspeak.com/)
    Создаём пользователя teamspeak командой adduser
    Скопируем архив с teamspeak в домашнюю директорию пользователя.
    Затем (все дальнейшие действия следует выполнять как пользователь teamspeak), распакуем архив:

    $ tar xjvf ts2_server_rc2_202319.tar.bz2

    И запустим сервер

    $ cd tss2_rc2
    $ ./teamspeak2-server_startscript start

    Конфигурацонный файл server.ini создался, тимспик останавливаем

  2. Создаём mysql базу для тимспика. Создаём пользователя базы данных, которым будем в эту базу ходить.
    Предположим база называется ts, и пользователь ts
  3. Теперь надо сменить пароль для этого пользователя.
    заходим в shell,заходим рутом в mysql

    mysql -p

    и выполняем следующие команды:

    SET PASSWORD FOR 'ts'@'localhost' = OLD_PASSWORD('пароль');
    FLUSH PRIVELEGES;

    Для чего это нужно, обЪяснено будет позже

  4. Копируем библиотеку /usr/lib/libmysqlclient_r.so.10.0.0 в директорию, где находится TeamSpeak
  5. Приступаем к настройке. Редактируем файл server.ini.
    Нас интересует секция [DBEXPRESS]

    [DBEXPRESS]
    sqldir=./mysql_sql/
    Drivername=mysql
    Database=ts
    Hostname=localhost
    User_name=ts
    Password=пароль
    GetDriverFunc=getSQLDriverMYSQL
    VendorLib=./libmysqlclient_r.so.10.0.0
    LibraryName=./libsqlmy.so
    Active=1

    Приблизительно так это должно выглядеть

  6. Отступление:
    TeamSpeak рабоет с mysql только с 3-й версией. Соответственно клиентскую библиотеку он может использовать только от третьей версии (libmysqlclient_r.so.10.0.0).
    Также по непонятной причине он работает, только если библиотека расположена в его же директории.
    В третьей версии пароли шифровались другим методом, поэтому мы и задали пользователю пароль функцией OLD_PASSWORD. Эта функция шифрует пароль как раз старым методом.
  7. Теперь начинается колдунство.

    ls /usr/share/mysql/charsets/ | grep xml | awk '{print "ln -s /usr/share/mysql/charsets/" $1, "/usr/share/mysql/charsets/" $1 "conf"}' | sh
    echo "cp1251.xml 33" >> /usr/share/mysql/charsets/Index

    Этим мы скопировали xml файлы кодировок в xml.conf, и содали Index файл для одной из них. Вообще 33 – это utf8 кодировка, но почему то файла utf.xml не было.
    Это всё нужно опять же из-за клиента от mysql 3

  8. Запускаем TeamSpeak. Если всё было сделано правильно, то он стартует. Если база была пуста, то смотрим пароль суперадминистратора в логе.

Один комментарий на запись “Конфигурация сервера teamspeak с mysql5”

  1. tuupic пишет 25 декабря 2009 в 2:14

    Как выяснилось, в статье есть недочёты. Исправленный вариант можете найти по следующему URL
    http://forum.timspik.net/index.php?showtopic=57

Оставить комментарий