Jump to content

Recommended Posts

Posted

Hallo,

ich habe seit einiger Zeit Probleme mit der Verbindung meiner rAthena-Server Applikationen mit der SQL-Datenbank. Ich verstehe nicht ganz woran es liegen könnte, da ich die Passwörter etc. überprüft habe und verschiedene Ports ausprobiert habe.

Ich denke das schnellste wäre, wenn sich jemand das ganze über TeamViewer mal anschauen könnte.

 

Würde mich über jede Hilfe freuen

LG

Captain09

Posted (edited)

Als du deinen Benutzer angelegt hast in der SQL, was hast du da als 'Host' benutzt? localhost?

Probier mal: Textfeld verwenden und schreib dort die localhost IP hin - 127.0.0.1

Natürlich die Rechte nicht vergessen.

 

Wie sehen deine map_athena.conf und char_athena.conf aus? (/ServerXYZ/conf/)

 

Sie sollten so aussehen:

! In der Char und Map _athena.conf werden nicht die Daten deines SQL Benutzers gefordert sondern die, deines ''Admin Accounts''. Wenn nötig einen erstellen unter MySQL / ragnarok / login

 

[spoiler=map_athena]

// Interserver communication passwords, set in account.txt (or equiv.)
userid: xxxxx
passwd: ragnarok

// Character Server IP
// The map server connects to the character server using this IP address.
// NOTE: This is useful when you are running behind a firewall or are on
// a machine with multiple interfaces.
//char_ip: 127.0.0.1

// The map server listens on the interface with this IP address.
// NOTE: This allows you to run multiple servers on multiple interfaces
// while using the same ports for each server.
//bind_ip: 127.0.0.1

// Character Server Port
char_port: 6121

// Map Server IP
// The IP address which clients will use to connect.
// Set this to what your server's public IP address is.
//map_ip: 127.0.0.1

// Map Server Port
map_port: 5121

[spoiler=char_athena.conf]

// Server Communication username and password.
userid: xxxxx
passwd: ragnarok

// Server name, use alternative character such as ASCII 160 for spaces.
// NOTE: Do not use spaces or any of these characters which are not allowed in
//       Windows filenames \/:*?"<>|
//       ... or else guild emblems won't work client-side!
server_name: rAthena

// Wisp name for server: used to send wisp from server to players (between 4 to 23 characters)
wisp_server_name: Server

// Login Server IP
// The character server connects to the login server using this IP address.
// NOTE: This is useful when you are running behind a firewall or are on
// a machine with multiple interfaces.
//login_ip: 127.0.0.1

// The character server listens on the interface with this IP address.
// NOTE: This allows you to run multiple servers on multiple interfaces
// while using the same ports for each server.
//bind_ip: 127.0.0.1

// Login Server Port
login_port: 6900

// Character Server IP
// The IP address which clients will use to connect.
// Set this to what your server's public IP address is.
//char_ip: 127.0.0.1

// Character Server Port
char_port: 6121

 

Wichtig ist ebenfalls deine packet version (/ServerXYZ/db/packet_db.txt)

Da änderst du folgendes:

[spoiler=packet_db.txt]

packet_db_ver: XX
//packet_db_ver: default

in folgendes

//packet_db_ver: xx
packet_db_ver: default

 

Dann musst du deine Packet Version in den Source Code eintragen.

Dazu musst du /ServerXYZ/src/common/mmo.h öffnen.

Dort findest und änderst du folgendes

 

(strg + f um die Suchfunktion zu aktivieren)

[spoiler=mmo.h]

#ifndef PACKETVER
#define PACKETVER 20081126
//#define PACKETVER 20100223
#endif


zu folgendem


#ifndef PACKETVER
#define PACKETVER JJJJMMTT  //<= Deine Packet Version z.B. 20130708
//#define PACKETVER 20100223
#endif

 

 

Kommen wir nun zur /ServerXYZ/conf/inter_athena.conf/

Dort werden deine MySQL Daten eingetragen, in deinem Falle also

id ragnarok

pw ragnarok

 

[spoiler=inter_athena.conf]

// MySQL Login server
login_server_ip: 127.0.0.1
login_server_port: 3306
login_server_id: ragnarok
login_server_pw: ragnarok
login_server_db: ragnarok
login_codepage:
login_case_sensitive: no

ipban_db_ip: 127.0.0.1
ipban_db_port: 3306
ipban_db_id: ragnarok
ipban_db_pw: ragnarok
ipban_db_db: ragnarok
ipban_codepage:

// MySQL Character server
char_server_ip: 127.0.0.1
char_server_port: 3306
char_server_id: ragnarok
char_server_pw: ragnarok
char_server_db: ragnarok

// MySQL Map Server
map_server_ip: 127.0.0.1
map_server_port: 3306
map_server_id: ragnarok
map_server_pw: ragnarok
map_server_db: ragnarok

// MySQL Log Database
log_db_ip: 127.0.0.1
log_db_port: 3306
log_db_id: ragnarok
log_db_pw: ragnarok
log_db_db: ragnarok
log_codepage:
log_login_db: loginlog

 

 

Vor Start natürlich nochmal eAthena-10.sln mit Visual C++ öffnen und deine Dateien compilen.

 

 


 

Edited by Lmxs
Posted (edited)

Hallo,

Ich bin alle deine Schritte nochmal durchgegangen

 

So sieht es in meiner Datenbank aus:

http://puu.sh/k07so/a5009dfb10.png

http://puu.sh/k06RW/57b57774b1.png

 

Und hier meine Serverdateien:

 

map_athena.conf

// Interserver communication passwords, set in account.txt (or equiv.)
userid: admin
passwd: admin

// Character Server IP
// The map server connects to the character server using this IP address.
// NOTE: This is useful when you are running behind a firewall or are on
// a machine with multiple interfaces.
char_ip: 127.0.0.1

// The map server listens on the interface with this IP address.
// NOTE: This allows you to run multiple servers on multiple interfaces
// while using the same ports for each server.
//bind_ip: 127.0.0.1

// Character Server Port
char_port: 6121

// Map Server IP
// The IP address which clients will use to connect.
// Set this to what your server's public IP address is.
map_ip: 127.0.0.1

// Map Server Port
map_port: 5121

char_athena.conf

// Server Communication username and password.
userid: admin
passwd: admin

// Server name, use alternative character such as ASCII 160 for spaces.
// NOTE: Do not use spaces or any of these characters which are not allowed in
//       Windows filenames \/:*?"<>|
//       ... or else guild emblems won't work client-side!
server_name: rAthena

// Wisp name for server: used to send wisp from server to players (between 4 to 23 characters)
wisp_server_name: Server

// Login Server IP
// The character server connects to the login server using this IP address.
// NOTE: This is useful when you are running behind a firewall or are on
// a machine with multiple interfaces.
login_ip: 127.0.0.1

// The character server listens on the interface with this IP address.
// NOTE: This allows you to run multiple servers on multiple interfaces
// while using the same ports for each server.
//bind_ip: 127.0.0.1

// Login Server Port
login_port: 6900

// Character Server IP
// The IP address which clients will use to connect.
// Set this to what your server's public IP address is.
char_ip: 127.0.0.1

// Character Server Port
char_port: 6121

packet_db.txt

//packet_db_ver: 46
packet_db_ver: default

mmo.h

#ifndef PACKETVER
	#define PACKETVER 20130807
	//#define PACKETVER 20120410
#endif

inter_athena.conf

// MySQL Login server
login_server_ip: 127.0.0.1
login_server_port: 80
login_server_id: ragnarok
login_server_pw: ragnarok
login_server_db: ragnarok
login_codepage:
login_case_sensitive: no

ipban_db_ip: 127.0.0.1
ipban_db_port: 80
ipban_db_id: ragnarok
ipban_db_pw: ragnarok
ipban_db_db: ragnarok
ipban_codepage:

// MySQL Character server
char_server_ip: 127.0.0.1
char_server_port: 80
char_server_id: ragnarok
char_server_pw: ragnarok
char_server_db: ragnarok

// MySQL Map Server
map_server_ip: 127.0.0.1
map_server_port: 80
map_server_id: ragnarok
map_server_pw: ragnarok
map_server_db: ragnarok

// MySQL Log Database
log_db_ip: 127.0.0.1
log_db_port: 80
log_db_id: ragnarok
log_db_pw: ragnarok
log_db_db: ragnarok
log_codepage:
log_login_db: loginlog

Die Server bekommen leider immer noch keine Verbindung zur Datenbank :(

Edited by Captain09
Posted (edited)

in der login tabelle steht s1/p1  aber in der map conf steht admin/admin 
schonmal geändert?

ansonsten ähm, warum stehen die ports in inter_athena.conf alle auf 80?   wenn du in mysql workbench bist  muss der port mit denen die dort auf 80 stehen übereinstimmen (normalfall halt 3306)
zumal port 80 wird zb von skype  genutzt und ist dann nicht mehr für server frei 
 hoffe das hilft ein wenig weiter.
ansonsten kann ich auch mal per Teamviewer gucken wenn du magst, ob ich das problem lösen kann weiß ich aber nicht xD

e: 
du hast aber auch neu compiled nachdem du den sourcecode geändert hast oder?

Edited by patsi91
Posted

Hallo,

Ich bin alle deine Schritte nochmal durchgegangen

 

So sieht es in meiner Datenbank aus:

http://puu.sh/k07so/a5009dfb10.png

http://puu.sh/k06RW/57b57774b1.png

 

Und hier meine Serverdateien:

 

map_athena.conf

// Interserver communication passwords, set in account.txt (or equiv.)
userid: admin
passwd: admin

// Character Server IP
// The map server connects to the character server using this IP address.
// NOTE: This is useful when you are running behind a firewall or are on
// a machine with multiple interfaces.
char_ip: 127.0.0.1

// The map server listens on the interface with this IP address.
// NOTE: This allows you to run multiple servers on multiple interfaces
// while using the same ports for each server.
//bind_ip: 127.0.0.1

// Character Server Port
char_port: 6121

// Map Server IP
// The IP address which clients will use to connect.
// Set this to what your server's public IP address is.
map_ip: 127.0.0.1

// Map Server Port
map_port: 5121

char_athena.conf

// Server Communication username and password.
userid: admin
passwd: admin

// Server name, use alternative character such as ASCII 160 for spaces.
// NOTE: Do not use spaces or any of these characters which are not allowed in
//       Windows filenames \/:*?"<>|
//       ... or else guild emblems won't work client-side!
server_name: rAthena

// Wisp name for server: used to send wisp from server to players (between 4 to 23 characters)
wisp_server_name: Server

// Login Server IP
// The character server connects to the login server using this IP address.
// NOTE: This is useful when you are running behind a firewall or are on
// a machine with multiple interfaces.
login_ip: 127.0.0.1

// The character server listens on the interface with this IP address.
// NOTE: This allows you to run multiple servers on multiple interfaces
// while using the same ports for each server.
//bind_ip: 127.0.0.1

// Login Server Port
login_port: 6900

// Character Server IP
// The IP address which clients will use to connect.
// Set this to what your server's public IP address is.
char_ip: 127.0.0.1

// Character Server Port
char_port: 6121

packet_db.txt

//packet_db_ver: 46
packet_db_ver: default

mmo.h

#ifndef PACKETVER
	#define PACKETVER 20130807
	//#define PACKETVER 20120410
#endif

inter_athena.conf

// MySQL Login server
login_server_ip: 127.0.0.1
login_server_port: 80
login_server_id: ragnarok
login_server_pw: ragnarok
login_server_db: ragnarok
login_codepage:
login_case_sensitive: no

ipban_db_ip: 127.0.0.1
ipban_db_port: 80
ipban_db_id: ragnarok
ipban_db_pw: ragnarok
ipban_db_db: ragnarok
ipban_codepage:

// MySQL Character server
char_server_ip: 127.0.0.1
char_server_port: 80
char_server_id: ragnarok
char_server_pw: ragnarok
char_server_db: ragnarok

// MySQL Map Server
map_server_ip: 127.0.0.1
map_server_port: 80
map_server_id: ragnarok
map_server_pw: ragnarok
map_server_db: ragnarok

// MySQL Log Database
log_db_ip: 127.0.0.1
log_db_port: 80
log_db_id: ragnarok
log_db_pw: ragnarok
log_db_db: ragnarok
log_codepage:
log_login_db: loginlog

Die Server bekommen leider immer noch keine Verbindung zur Datenbank :(

Schließe mich meinen Vorendern an, in der Login Tabelle s1/p1 müssen mit der Map confi und Char confi übereinstimmen.

Posted

Ich lasse die Server momentan über wamp laufen, skype ist geschlossen und der Port 80 ist auf jeden Fall frei.

s1/p1 hab ich auf admin/admin umgeändert, keine Veränderung der Ausgabe in den Serverkonsolen.

Ich weiß ned weiter :/

Posted (edited)

die mysql db hast du dann auch über port 80 eingespeist?

wamp kenn ich jetzt ehrlichgesagt nicht soweit ich mich errinern kann
aber wie gesagt mein angebot stünde das ich per teamviewer mal drüber gucke.

rAsql ist aber nichtmehr in den aktuellen versionen enthalten oder? mein server ist noch irgendwo in rev 17xxx aufgesetzt und glaube sogar lange bevor zu github gewechselt wurde...
da war das noch für lokale testzwecke gut zu gebrauchen - kann man auch drüber spielen wenn niemand ausser einem selber auf den server will.
 

wenn du magst das ich rüber gucke, adde mich doch einfach mal in skype  -rausgenommen weil nichtmehr benötigt- kriegt man auf wunsch per PM wieder.

und  wie gesagt die frage steht immernoch  meinerseits : Hast du re-compiled nachdem du die packetver gesetzt hast in mmo.h ? wenn nicht wäre das ein grund das der mapserver crasht soweit ich weiß.


und ganz simpler lösungsversuch wäre noch: Firewall aus zum testen.
lässt du den server über localhost laufen kannst du dafür ja auch wlan ausmachen/LAN kabel ziehen  für die zeit. hatte gelesen das das bei dem fehlercode 10061 wohl helfen könnte bzw ursache war.

Edited by patsi91
  • 2 weeks later...
Posted (edited)

Datenbank Port 80 ~

 

Entweder du hast den Fixport für HTTP geändert, was Ich nicht glaube... dann ist das kein Wunder warum/weshalb das nicht funktioniert.

 

Wamp ist eine Kombination aus Web/Apache/Php/DB(Mysq) für Windows, wie LAMP in dem Fall für Linux. (Cleaninstall)

 

Trozdem hast du einen Webserver standart (Http) auf Port 80

 

Wie soll die Datenbank dann über Port 80 Kommunizieren? 

 

Der Standart Mysqlport ist 3306.

 

Gib 3306 zur Kommunikation Frei und änder deine Config auf 3306.

 

Habs gerade auf einem Frischen Wamp probiert, ohne Probleme.

 

 

Hat sich das Problem mittlerweile gelöst?

Edited by trickerytrickery
  • 3 weeks later...
Posted

[...]

 

 

Hat sich das Problem mittlerweile gelöst?

Jap, hab ihm das ganze auf MySQL Community Server Basis  auf port 3306 (ergo so wies im wiki steht)  hergerichtet  gehabt.

Das problem dann war dann allerdings der client , aber da  konnte ich nicht so gut helfen (meine eigene exe für meinen server hatte nix gebracht nach umstellung der packetver ).

Ich würde allerdings auf irgendwas relativ banales tippen warum das mit dem client nicht so wollte.

 

Posted
Sie nicht nur den Hafen von 3306 ändern können, auf 80,

der Datenbankserver auf Port 3306 zu hören, während die Ragnarok Server auf Port 80 zu sprechen.

Ich schlage vor, die Dinge nicht, wenn nicht erforderlich, zu ändern.

 

(sorry für die schlechte Sprache, ich habe gerade verwendet Google Translate)

Posted

warscheinlich ist die lösung ganz simpel  was das angeht wenn das problem nach wie vor besteht kannst du dich mal gerne bei mir melden vieleicht finde ich ja noch die ein oder andere ungereimtheit am clienten

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...