Results 1 to 15 of 28
-
21-05-2007, 18:04 #1
-= TeamSpeak Lover =-
- Join Date
- Apr 2007
- Location
- Germany
- Posts
- 33
Howto: TeamSpeak 2.x mit MySQL-Server 5.x
Da mich der Server-Umzug eine Menge Zeit und Nerven gekostet hat und es eigentlich nur an Kleinigkeiten gelegen hat, will ich euch das kleine Mini-Howto nicht vorenthalten. Ich gehe davon aus, dass er ein oder andere vielleicht über die selben Steine stolpern wird wie ich und es ihm dann eine Hilfe ist.
Ich habe das hier beschriebene Vorgehen nun bereits zweimal erfolgreich unter Debian Sarge und Debian Etch getestet. Der Datenbank-Server muss bereits installiert sein und laufen.
Teamspeak-Server installieren
Der Server wird erstmal so installiert, wie es in der Anleitung (INSTALL.mysql) erklärt ist. In diesem Beispiel wird der Server in das Verzeichnis /opt/teamspeak installiert und läuft als Benutzer "teamspeak". Das neueste Release findet man auf der TS-Homepage; aktuell ist die Version 2.0.20.1.
Es sollten sich nun alle Dateien (server.ini, server.log, etc) im Verzeichnis /opt/teamspeak befinden und dem Teamspeak-Benutzer gehören.Code:mkdir /opt/teamspeak cd /opt/teamspeak groupadd teamspeak groupadd servers useradd -d /opt/teamspeak -g teamspeak -G servers teamspeak passwd teamspeak wget ftp://ftp.freenet.de/pub/4players/teamspeak.org/releases/ts2_server_rc2_20201.tar.bz2 tar xvjf ts2_server_rc2_20201.tar.bz2 cp -r tss2_rc2/* . rm -r tss2_rc2/ chown -R teamspeak:teamspeak .
MySQL 3.23.x Client-Bibliotheken installieren
Um Teamspeak mit dem MySQL Server 5.x nutzen zu können, werden in jedem Fall alte (MySQL 3.23) Client-Bibliotheken benötigt, da Teamspeak wiederum eine Bibliothek (libsqlmy.so) zum Zugriff auf MySQL nutzt, die veraltet und nicht mit den neuen Client-Bibliotheken kompatibel ist.
Zur Installation der alten Client-Bibliotheken müssen diese lediglich in das Verzeichnis /usr/lib kopiert und zwei symbolische Links erzeugt werden. Alle anderen Anwendungen, die aktuelle Bibliotheken nutzen, werden dadurch nicht beeinflusst.
Datenbank vorbereitenCode:cd /usr/lib wget http://dafox.nb4f.de/files/libmysqlclient.so.10.0.0 wget http://dafox.nb4f.de/files/libmysqlclient_r.so.10.0.0 ln -s libmysqlclient.so.10.0.0 libmysqlclient.so.10 ln -s libmysqlclient_r.so.10.0.0 libmysqlclient_r.so.10
Es muss ein Benutzer und eine leere Datenbank für den Teamspeak-Server angelegt werden. Wichtig hierbei ist, dass für diesen Benutzer das Kennwort mit der Funktion "OLD_PASSWORD()" nachträglich geändert wird, da die alte Bibliothek einen falschen Hash an die Datenbank sendet.
Wichtig ist in diesem Zusammenhang auch, dass der MySQL-Server mit Netzwerkunterstützung gestartet wurde (d.h. der skip-networking-Parameter in der Datei /etc/mysql/my.cnf ist auskommentiert). Ist dies nicht der Fall meldet der Server die unpassende Fehlermeldung "Invalid username/password".Code:mysql -u root -p mysql> create database teamspeak; mysql> grant all privileges on teamspeak.* to teamspeak@localhost; mysql> set password for teamspeak@localhost = OLD_PASSWORD('<PW>');
Konfigurationsdatei anpassen
Wichtig ist hier, dass anstatt localhost die IP-Adresse des Loopback-Interfaces (127.0.0.1) verwendet wird, damit der MySQL-Client eine TCP-Verbindung zur Datenbank aufbaut und nicht über UNIX-Sockets mit dem Server verbindet. Das erübrigt sich, wenn der MySQL-Server ohne Socket-Unterstützung gestartet wurde.
Eine zu diesem Beispiel passende Konfigurationsdatei:
Server automatisch startenCode:[DBEXPRESS] sqldir=mysql_sql/ Drivername=mysql Database=teamspeak Hostname=127.0.0.1 User_name=teamspeak Password=xxx GetDriverFunc=getSQLDriverMYSQL VendorLib=/usr/lib/libmysqlclient_r.so.10 LibraryName=./libsqlmy.so Active=1
Der Server ist nun eingerichtet und kann gestartet werden. Dafür wird das Script "/etc/init.d/teamspeak" erstellt und ausführbar gemacht:
Nachdem das Script ausführbar gemacht wurde (chmod +x /etc/init.d/teamspeak), kann der Server gestartet werden:Code:#!/bin/bash # User which will run the teamspeak server USER=teamspeak # The installation directory of the teamspeak server DIR=/opt/teamspeak # Run the start script su -c "cd $DIR && $DIR/teamspeak2-server_startscript $1" - $USER
Wenn das Script als root ausgeführt wird, wird der Teamspeak-Server automatisch als Benutzer "teamspeak" gestartet. Andere Systembenutzer werden dazu aufgefordert, das anfangs vergebene Kennwort für den Teamspeak-Benutzer einzugeben, um den Server zu starten.Code:/etc/init.d/teamspeak start
Damit der TS-Server auch beim Neustart des Systems (Runlevel 2 oder Runlevel 3) gestartet wird, muss ein Link auf das Startscript im Verzeichnis /etc/rc3.d, /etc/rc0.d/ und im Verzeichnis /etc/rc6.d/ eingerichtet werden.
Code:cd /etc/rc2.d/ ln -s ../init.d/teamspeak S99teamspeak
Code:cd /etc/rc0.d/ ln -s ../init.d/teamspeak K99teamspeak
TroubleshootingCode:cd /etc/rc6.d/ ln -s ../init.d/teamspeak K99teamspeak
Wenn der Server nicht startet, dann sollte man unbedingt einen Blick in die Logdatei (/opt/teamspeak/server.log) werfen.
Invalid username/password
- Wird die DB mit Netzwerkunterstützung gestartet?
- Wird in der server.ini die IP statt "localhost" verwendet?
- Wurde das Kennwort mit OLD_PASSWORD() in der Datenbank geändert?
Input/Output error
- Hat der TS-Benutzer Schreibrechte in /opt/teamspeak?
- Hat der TS-Benutzer Schreibrechte auf /dev/null?
dbError: Operation not supported
Siehe http://forum.goteamspeak.com/showthr...582#post114582Last edited by DaFox; 14-08-2007 at 20:54.
-
28-05-2007, 11:54 #2
-= TeamSpeak Lover =-
- Join Date
- Apr 2007
- Location
- Germany
- Posts
- 98
Erstmal ein fettes Lob für das Tut ! Ist dir gut gelungen muss ich sagen
Aber ein kleiner Fehler hat sich eingeschlichen (bei den Links) Es sollte so heißen:
MySQL 3.23.x Client-Bibliotheken installieren
Um Teamspeak mit dem MySQL Server 5.x nutzen zu können, werden in jedem Fall alte (MySQL 3.23) Client-Bibliotheken benötigt, da Teamspeak wiederum eine Bibliothek (libsqlmy.so) zum Zugriff auf MySQL nutzt, die veraltet und nicht mit den neuen Client-Bibliotheken kompatibel ist.
Zur Installation der alten Client-Bibliotheken müssen diese lediglich in das Verzeichnis /usr/lib kopiert und zwei symbolische Links erzeugt werden. Alle anderen Anwendungen, die aktuelle Bibliotheken nutzen, werden dadurch nicht beeinflusst.
Code:cd /usr/lib wget http://dafox.nb4f.de/files/libmysqlclient.so.10.0.0 wget http://dafox.nb4f.de/files/libmysqlclient_r.so.10.0.0 ln -s libmysqlclient.so.10.0.0 libmysqlclient.so.10 ln -s libmysqlclient_r.so.10.0.0 libmysqlclient_r.so.10
Aber ansonsten TOP ! Vielleicht könntest du ja mal schauen, an was es bei mir liegen könnte, dass es nicht klappt
( http://forum.goteamspeak.com/showthr...342#post159342 )
-
28-05-2007, 15:02 #3
Geiles Tutorial.
Und ohne den zusatz von Lil-rich hätte es auch nicht geklappt.
Danke Jungs !!!
-
11-06-2007, 18:34 #4
vielleicht sollte das mal jemand sticky machen?
-
26-07-2007, 20:04 #5
-= TeamSpeak Lover =-
- Join Date
- Aug 2005
- Location
- Germany
- Posts
- 76
-
13-08-2007, 15:25 #6
-= TeamSpeak User =-
- Join Date
- Aug 2007
- Location
- germany
- Posts
- 6
Hi!
Ich habe nur den Teil mit dem Systemstart gemacht. Weil mein TS-Server nicht mit mysql läuft. Leider startet aber meij server jetzt nicht nach reboot. ich kann ihn per /etc/init.d/teamspeak start starten, aber nach systemstart startet er nicht.
Der ts-server läuft unter dem benutzer "teamspeak" der ein passwort hat.
bitte um hilfe!
-
14-08-2007, 20:51 #7
-= TeamSpeak Lover =-
- Join Date
- Apr 2007
- Location
- Germany
- Posts
- 33
Du musst das ggf. im Runlevel 2 verlinken, bei Debian ist das sogar sehr wahrscheinlich. Es kann auch nicht schaden, dass Killscript neben Runlevel 0 zusätzlich im Runlevel 6 zu verlinken, damit der Server immer sauber gestoppt wird.
Schau mal in deine /etc/inittab, welches dein Default-Runlevel ist:
Wenn dort id:2:initdefault steht, dann musst du den Link anstatt in /etc/rc3.d in /etc/rc2.d erstellen. Ich habe das im Howto ergänzt.Code:grep default /etc/inittab
-
18-09-2007, 20:19 #8
-= TeamSpeak User =-
- Join Date
- Dec 2006
- Location
- NRW
- Posts
- 3
Hi DaFox,
ich habe das selbe Problem wie splinter263
meine Ausgabe bei grep default /etc/inittab :Originally Posted by splinter263 View Post
Hi!
Ich habe nur den Teil mit dem Systemstart gemacht. Weil mein TS-Server nicht mit mysql läuft. Leider startet aber meij server jetzt nicht nach reboot. ich kann ihn per /etc/init.d/teamspeak start starten, aber nach systemstart startet er nicht.
Der ts-server läuft unter dem benutzer "teamspeak" der ein passwort hat.
bitte um hilfe!
Du musst das ggf. im Runlevel 2 verlinken, bei Debian ist das sogar sehr wahrscheinlich. Es kann auch nicht schaden, dass Killscript neben Runlevel 0 zusätzlich im Runlevel 6 zu verlinken, damit der Server immer sauber gestoppt wird.
Schau mal in deine /etc/inittab, welches dein Default-Runlevel ist:
Code:
grep default /etc/inittab
Wenn dort id:2:initdefault steht, dann musst du den Link anstatt in /etc/rc3.d in /etc/rc2.d erstellen. Ich habe das im Howto ergänzt.
# runlevel 0 is System halt (Do not use this for initdefault!)
# runlevel 6 is System reboot (Do not use this for initdefault!)
was mach ich falsch?
Wo genau muss S99 und K99 gesetzt werden? Habe runlevel 0 (rc0.d) - 6 (rc6.d)
gruss und herzlichen Dank
Ostpower
-
10-10-2007, 13:27 #9
-= TeamSpeak User =-
- Join Date
- Oct 2007
- Location
- Germany
- Posts
- 3
Was mach ich mit dieser konfigurationsdatei?
Wo mus sie hin?
[DBEXPRESS]
sqldir=mysql_sql/
Drivername=mysql
Database=teamspeak
Hostname=127.0.0.1
User_name=teamspeak
Password=xxx
GetDriverFunc=getSQLDriverMYSQL
VendorLib=/usr/lib/libmysqlclient_r.so.10
LibraryName=./libsqlmy.so
Active=1Last edited by G-Evil; 10-10-2007 at 17:12.
-
10-10-2008, 07:11 #10
-= TeamSpeak User =-
- Join Date
- Oct 2008
- Location
- Deutschland
- Posts
- 1
Hallo,
ich hab nen TS-Server der läuft schon länger.
Nun wollte ich den auf Mysql umstellen.
Habe daszur server.ini hinzugefügt, natürlich mit meinen Daten.Code:[DBEXPRESS] sqldir=mysql_sql/ Drivername=mysql Database=teamspeak Hostname=127.0.0.1 User_name=teamspeak Password=xxx GetDriverFunc=getSQLDriverMYSQL VendorLib=/usr/lib/libmysqlclient_r.so.10 LibraryName=./libsqlmy.so Active=1
Wenn ich ihn nun starte, startet er zwar aber ohne mysql.
Er meldet euch keinen fehler iregendwie.
Woran kann das liegen ?
-
18-10-2008, 12:40 #11
-= TeamSpeak User =-
- Join Date
- Oct 2008
- Location
- Germany
- Posts
- 2
Erstmal danke für die gute Anleitung.
Es hat FAST alles geklappt. Teamspeak wurde gestartet, Inhalte der Datenbank wurden erstellt u.s.w.
Nun habe ich aber das Problem, dass ich mich als Admin gar nicht einloggen kann über das Webintarface. Er lädt und lädt und lädt, es passiert aber gar nichts.
Und wenn ich mich als Superadmin einlogge, was geht, kann ich aber keine Änderungen vornehmen. Dann kommt immer die Fehlermeldung: your selected server is invalid
Was habe ich da noch falsch gemacht? Der Server läuft ja und die Files in der Datenbank sind auch enthalten. Leider bekomme ich bei der suche immer eine Fehlermeldung bzw. nur eine leere Seite geht auf. Deshalb bitte ich um Entschuldigung, falls dieses schon irgendwo erwähnt worden ist.
So sieht die server.log aus:
System-------------- log started at 18-10-08 13:59 -------------
---------------------------------------------------------------
18-10-08 13:59:03,ALL,Info,server, Server init initialized
18-10-08 13:59:03,ALL,Info,server, Server version: 2.0.23.19 Linux
18-10-08 13:59:03,WARNING,Info,SQL, created table ts2_servers
18-10-08 13:59:03,WARNING,Info,SQL, created table ts2_server_privileges
18-10-08 13:59:03,WARNING,Info,SQL, created table ts2_channels
18-10-08 13:59:03,WARNING,Info,SQL, created table ts2_channel_privileges
18-10-08 13:59:03,WARNING,Info,SQL, created table ts2_clients
18-10-08 13:59:03,WARNING,Info,SQL, created table ts2_bans
18-10-08 13:59:04,ALL,Info,server, Starting VirtualServer id:1 with port:8767
18-10-08 13:59:04,ALL,Info,server, Started VirtualServer id:1 with port:8767
18-10-08 13:59:04,WARNING,Info,SERVER, Default VirtualServer created
18-10-08 13:59:04,WARNING,Info,SERVER, admin account info: username: admin password: xxxxx
18-10-08 13:59:04,WARNING,Info,SERVER, superadmin account info: username: superadmin password: xxxxx
18-10-08 13:59:05,ALL,Info,server, Server init finished
18-10-08 13:59:05,WARNING,Info,server, TeamSpeak Server daemon activated
18-10-08 13:59:48,ERROR,All,WEBINTERFACE, Progress_COMMAND Exception: EInvalidField.field b_sp_AdminEditServerWelcomeMessage not found
18-10-08 14:05:48,ERROR,All,WEBINTERFACE, Progress_COMMAND Exception: EInvalidField.field b_sp_AdminEditServerWelcomeMessage not found
18-10-08 14:06:40,ERROR,All,WEBINTERFACE, SetVariables Exception: EInvalidField.field b_sp_AdminEditServerWelcomeMessage not found
18-10-08 14:06:41,ERROR,All,WEBINTERFACE, SetVariables Exception: EInvalidField.field b_sp_AdminEditServerWelcomeMessage not found
18-10-08 14:06:43,ERROR,All,WEBINTERFACE, SetVariables Exception: EInvalidField.field b_sp_AdminEditServerWelcomeMessage not found
18-10-08 14:06:44,ERROR,All,WEBINTERFACE, SetVariables Exception: EInvalidField.field b_sp_AdminEditServerWelcomeMessage not found
18-10-08 14:06:46,ERROR,All,WEBINTERFACE, SetVariables Exception: EInvalidField.field b_sp_AdminEditServerWelcomeMessage not found
18-10-08 14:06:47,ERROR,All,WEBINTERFACE, SetVariables Exception: EInvalidField.field b_sp_AdminEditServerWelcomeMessage not found
18-10-08 14:07:05,ERROR,All,WEBINTERFACE, SetVariables Exception: EInvalidField.field b_sp_AdminEditServerWelcomeMessage not found
VServer
Ubuntu
Plesk 8.6
Ports in der Plesk Firewll eingetragen.
In Plesk habe ich über die Firewall die Ports UDP 8767, TCP 51234 und TCO 14534 jeweils den Eingang/ausgang und Weiterleitung von belibiegen Hosts erlaubt. Allerdings erst nachdem Ts schon gestartet war. Sollte ich noch irgendetwas neustarten?Last edited by DFCDay; 18-10-2008 at 13:37.
-
26-10-2008, 23:25 #12
-= TeamSpeak User =-
- Join Date
- Oct 2008
- Location
- GErmany
- Posts
- 1
Wie kann ich die Datenbank hinterher noch installieren.
Ich hab bereits einige server laufen wie bekomme ich die daten nun in die Datenbank.
Bitte um hilfe desse
-
01-11-2008, 00:19 #13
Die Datenbank des TeamSpeakservers ist nichts anderes als eine ganz normale SQLite-Datenbank. Deshalb benötigst du einen Converter, der dir die Datenbank ins MySQL-Format bringt. Dieses Tool kann dir hoffentlich helfen!
-
02-01-2009, 22:32 #14
-= TeamSpeak User =-
- Join Date
- Jan 2009
- Location
- AtHome
- Posts
- 3
Sehr geehrte Damen und Herren,
ich bin derzeit daran am Arbeiten das mein TS Server unter MySQL läuft, schon unteranderem deswegen, damit sich andere Personen über die WebSite registrieren können und durch die Suche kam ich eben auf diesen Lösungsweg.
Habe diesem Tutorial gefolgt, leider aber bekomme ich die Fehlermeldung "Invalid Username/Password" obwohl die Daten alle Korrekt eingetragen sind und auch in der Datenbank Korrekt sind.
Ich sitze bereits seit mehreren Tagen daran und hänge nun an diesem Punkt fest welcher so schnell wie möglich behoben werden sollte, denn solang diese Fehlermeldung nun kommt ist der TS Server erstmals Offline. Ich weiß zwar das ich den wieder Online nehmen könnte, aber ich will mir die Zeit ersparen alles hinterher zu Konvertieren.
Also das Operating System ist Suse Linux auf einem vServer. MySQL Version ist 4.021 womit es auch klappen sollte.
Bei weiteren Fragen bin ich Anwesend und hoffe das jemand eine Lösung weiß.
Vielen Dank
Mit freundlichem Gruß
Amai123
-
02-01-2009, 22:38 #15
Benutze zur Benutzerregistration einfach die TCP-Queryschnittstelle des Servers. Gibst du den befehl 'help' ein, bekommst du eine Liste aller Befehle, die zur Verfügung stehen.
Mit dem Befehl sql kannst du auch Datenbankabfragen auf die SQLite-Datenbank des Servers durchführen. Diese Möglichkeit ist um einiges leichter, als den Server über MySQL laufen zu lassen.
php5 kann übrigens auch auf die sqlite-Datenbank des TeamSpeakservers genauso wie auf eine mysql-Datenbank zugreifen.
Thread Information
Users Browsing this Thread
There are currently 1 users browsing this thread. (0 members and 1 guests)
Similar Threads
-
Router problems
By bigteam0385 in forum [TeamSpeak 2] Server SupportReplies: 4Last Post: 24-05-2011, 10:53 -
Teamspeak mit MySQL Startet nicht - Operation not Suported
By Dunkelbier in forum [TeamSpeak 2] Server SupportReplies: 1Last Post: 05-02-2007, 17:22 -
TeamSpeak 2.x with MySQL 5.x - Tutorial
By yahooadam in forum [TeamSpeak 2] Server SupportReplies: 2Last Post: 14-09-2006, 20:09 -
The novel lol
By Plebby in forum [TeamSpeak 2] Client SupportReplies: 0Last Post: 02-01-2006, 12:24 -
TS server and wn 98 probs ?
By ghboom in forum [TeamSpeak 2] Server SupportReplies: 0Last Post: 30-05-2003, 06:05


Reply With Quote





