Bevor wir anfangen, ist es natürlich wichtig, dass wir ein Backup haben (Sollte absolut Selbstverständlich sein). Dazu gibt es einen Befehl, um ein Backup einer auf SQLite bestehenden Datenbank zu machen. Wir navigieren dazu in das Verzeichnis des Teamspeak Server (Falls nach meinem Tutorial gemacht: /home/teamspeak) und führen dort folgenden Befehl aus:
Code:
sqlite3 ts3server.sqlitedb .dump >> ts3sqldump.sql
Wir müssen an unser exportierten Datenbank noch ein wenig was verändern, weswegen wir die .sql Datei mit einem Texteditor bearbeiten. Wir führen folgende Schritte durch:
- PRAGMA foreign_keys=OFF; entfernen.
- BEGIN TRANSACTION; entfernen.
- COMMIT; entfernen.
- Alle Zeilen entfernen, in welchen "sqlite_sequence" (ohne "") vorkommt.
- Alle " durch ` ersetzen.
Alle "autoincrement" in "auto_increment" (jeweils ohne "") umwandeln.
Nun ist die Datei ready, um Sie über ein entsprechendes Tool wieder in die Datenbank einzupflegen (Beispielsweise PHPMyAdmin oder MySQL Dumper. Ich empfehle jedoch ersteres). Hierbei kann es zu folgendem Fehler kommen:
Code:
CREATE TABLE tokens ( server_id integer unsigned, token_key varchar(50) NOT NULL, token_type integer, token_id1 integer unsigned, token_id2 integer unsigned, token_created integer unsigned, token_description varchar(255), token_customset varchar);
Nun müssen wir im Ordner des Servers eine Datei Namens "ts3db_mysql.ini" mit folgendem Inhalt füllen. Passe jedoch die Daten entsprechend deiner Datenbank und Benutzer an:
Code:
[config] host='localhost' port='3306' username='ts3' password='passwort1234' database='ts3' socket='/var/run/mysqld/mysqld.sock'
Im selben Ordner öffnen wir nun die ts3server.ini Datei. Falls diese noch nicht besteht, erstellt Sie einfach mittels vi oder nano. Der Inhalt sollte etwa so aussehen:
Code:
machine_id= default_voice_port=9987 voice_ip=0.0.0.0 licensepath= filetransfer_port=30033 filetransfer_ip=0.0.0.0 query_port=10011 query_ip=0.0.0.0 query_ip_whitelist=query_ip_whitelist.txt query_ip_blacklist=query_ip_blacklist.txt dbplugin=ts3db_mysql dbpluginparameter=ts3db_mysql.ini dbsqlpath=sql/ dbsqlcreatepath=create_mysql/ dbconnections=10 logpath=logs logquerycommands=0 dbclientkeepdays=30 logappend=0
Nun kommen wir zum Testen - dabei testen wir zu erst, ob das benötigte MySQL Plugin richtig geladen wurde. Das geht mit folgendem Befehl:
Code:
ldd libts3db_mysql.so
Code:
linux-vdso.so.1 => (0x00007fffe4b7a000) libmysqlclient.so.15 => /usr/lib/libmysqlclient.so.15 (0x00007fe18384f000) libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0x00007fe18353b000) libm.so.6 => /lib/libm.so.6 (0x00007fe1832b8000) libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x00007fe1830a2000) libc.so.6 => /lib/libc.so.6 (0x00007fe182d40000) libcrypt.so.1 => /lib/libcrypt.so.1 (0x00007fe182b08000) libnsl.so.1 => /lib/libnsl.so.1 (0x00007fe1828f0000) libz.so.1 => /usr/lib/libz.so.1 (0x00007fe1826d9000) librt.so.1 => /lib/librt.so.1 (0x00007fe1824d0000) /lib64/ld-linux-x86-64.so.2 (0x00007fe183db1000) libpthread.so.0 => /lib/libpthread.so.0 (0x00007fe1822b4000)
Wir starten nun testweise unseren Teamspeak3 Server mittels des minimal-startscript. Die Textausgabe sollten wir mittels eines kleinen Zusatzes aktivieren, um Fehler anzeigen zu lassen:
Code:
./ts3server_minimal_runscript.sh inifile=ts3server.ini
Code:
2012-03-26 11:28:30.309343|INFO |ServerLibPriv | | TeamSpeak 3 Server 3.0.3 (2012-03-17 06:12:11) 2012-03-26 11:28:30.310117|INFO |DatabaseQuery | | dbPlugin name: MySQL plugin, (c)TeamSpeak Systems GmbH 2012-03-26 11:28:30.310164|INFO |DatabaseQuery | | dbPlugin version: 1 2012-03-26 11:28:30.327685|WARNING |Accounting | | Unable to find valid license key, falling back to limited functionality 2012-03-26 11:28:30.340447|INFO |FileManager | | listening on 0.0.0.0:30033 2012-03-26 11:28:30.379590|INFO |VirtualServer | 1| listening on 0.0.0.0:9987 2012-03-26 11:28:30.379733|INFO |CIDRManager | | updated query_ip_whitelist ips: 127.0.0.1, 2012-03-26 11:28:30.379923|INFO |Query | | listening on 0.0.0.0:10011
Code:
COMMANDLINE_PARAMETERS="inifile=ts3server.ini" #add any command line parameters you want to pass here
-------------
Quelle:

Nutzungsrechte:
Ich bin der Eigentümer






