mysql und Fernzugriff

Alle weiteren Dienste, die nicht in die drei oberen Foren gehören.
Antworten
ThomasH2
Beiträge: 10
Registriert: 24.03.2006 23:19:41

mysql und Fernzugriff

Beitrag von ThomasH2 » 24.03.2006 23:29:26

Hallo Forum,

ich habe auf einer vor einigen Wochen neu installierten Debian Maschine MySQL 4.0 installiert.
Leider erhalte ich von einer entfernten WinXP-Maschine keinen Zugriff. Weder über den MySQL Query-Browser noch via ODBC.
Ping ist möglich, die XP-Firewall ist abgeschaltet.

Auf der Debian Maschine selbst kann ich mich lokal anmelden.

Wenn ich

telnet ip 3306

(ip = 192.168.0.200)
auf dem Debian-Server ausführe, erhalte ich eine Ausgabe in der Telnetkonsole
wenn ich

telnet ip 3306

von dem WindowsXP-PC aufrufe, wird der verbindungsaufbau umgehend zurückgewiesen.

Unter webmin für mysql habe ich die DB testweise für jeden externen Host freigeschaltet. Nichts geht.

Wie kann ich weiter vorgehen?

Gruss Thomas

PS: die Fehlermeldung via ODBC oder QueryBrowser lautet
MySQL Error Number 2003
Cna't connect zu MySQL Server on ip

Benutzeravatar
herrchen
Beiträge: 3257
Registriert: 15.08.2005 20:45:28
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Berlin

Re: mysql und Fernzugriff

Beitrag von herrchen » 24.03.2006 23:39:02

ThomasH2 hat geschrieben: von dem WindowsXP-PC aufrufe, wird der verbindungsaufbau umgehend zurückgewiesen.
mit welcher meldung?

herrchen

Benutzeravatar
Silke
Beiträge: 559
Registriert: 17.05.2005 15:58:20
Wohnort: Hannover
Kontaktdaten:

Beitrag von Silke » 25.03.2006 07:21:07

Moin,

Debian konfiguriert standardmäßig MySQL so, dass der Zugriff nur von localhost
möglich ist. Hab grad nicht im Kopf, wie die entsprechende Direktive heißt, ist aber
in der /etc/mysql/my.conf recht einfach zu finden.

Gruß,
- Silke -
Der Vorteil der Klugheit liegt darin, dass man sich dumm stellen kann. Das Gegenteil ist schon schwieriger.
- Kurt Tucholsky -

ThomasH2
Beiträge: 10
Registriert: 24.03.2006 23:19:41

Beitrag von ThomasH2 » 25.03.2006 10:14:38

danke für die Infos:
die Fehlermeldung steht ganz ganz unten in meinem ersten Posting.

Silke,
meine
/etc/mysql/my.cnf (conf habe ich nicht)
sieht so aus:

# Instead of skip-networking the default is now to listen only on
# localhost which is more compatible and is not less secure.
bind-address = 127.0.0.1

muss ich statt localhost die ip des linux hosts eintragen?

Gruss Thomas:


Hier die ganze Datei:

#
# The MySQL database server configuration file.
#
# You can copy this to one of:
# - "/etc/mysql/my.cnf" to set global options,
# - "/var/lib/mysql/my.cnf" to set server-specific options or
# - "~/.my.cnf" to set user-specific options.
#
# One can use all long options that the program supports.
# Run program with --help to get a list of available options and with
# --print-defaults to see which it would actually understand and use.
#
# For explanations see
# http://dev.mysql.com/doc/mysql/en/serve ... ables.html

# This will be passed to all mysql clients
# It has been reported that passwords should be enclosed with ticks/quotes
# escpecially if they contain "#" chars...
# Remember to edit /etc/mysql/debian.cnf when changing the socket location.
[client]
port = 3306
socket = /var/run/mysqld/mysqld.sock

# Here is entries for some specific programs
# The following values assume you have at least 32M ram

# This was formally known as [safe_mysqld]. Both versions are currently parsed.
[mysqld_safe]
socket = /var/run/mysqld/mysqld.sock
nice = 0

[mysqld]
#
# * Basic Settings
#
user = mysql
pid-file = /var/run/mysqld/mysqld.pid
socket = /var/run/mysqld/mysqld.sock
port = 3306
basedir = /usr
datadir = /var/lib/mysql
tmpdir = /tmp
language = /usr/share/mysql/english
skip-external-locking
#
# Instead of skip-networking the default is now to listen only on
# localhost which is more compatible and is not less secure.
bind-address = 127.0.0.1
#
# * Fine Tuning
#
key_buffer = 16M
max_allowed_packet = 16M
thread_stack = 128K
#
# * Query Cache Configuration
#
query_cache_limit = 1048576
query_cache_size = 16777216
query_cache_type = 1
#
# * Logging and Replication
#
# Both location gets rotated by the cronjob.
# Be aware that this log type is a performance killer.
#log = /var/log/mysql.log
#log = /var/log/mysql/mysql.log
#
# Error logging goes to syslog. This is a Debian improvement :)
#
# Here you can see queries with especially long duration
#log-slow-queries = /var/log/mysql/mysql-slow.log
#
# The following can be used as easy to replay backup logs or for replication.
#server-id = 1
log-bin = /var/log/mysql/mysql-bin.log
# See /etc/mysql/debian-log-rotate.conf for the number of files kept.
max_binlog_size = 104857600
#binlog-do-db = include_database_name
#binlog-ignore-db = include_database_name
#
# * BerkeleyDB
#
# The use of BerkeleyDB is now discouraged and support for it will probably
# cease in the next versions.
skip-bdb
#
# * InnoDB
#
# InnoDB is enabled by default with a 10MB datafile in /var/lib/mysql/.
# Read the manual for more InnoDB related options. There are many!
#
# * Security Feature
#
# Read the manual, too, if you want chroot!
# chroot = /var/lib/mysql/
#
# If you want to enable SSL support (recommended) read the manual or my
# HOWTO in /usr/share/doc/mysql-server/SSL-MINI-HOWTO.txt.gz
# ssl-ca=/etc/mysql/cacert.pem
# ssl-cert=/etc/mysql/server-cert.pem
# ssl-key=/etc/mysql/server-key.pem



[mysqldump]
quick
quote-names
max_allowed_packet = 16M

[mysql]
#no-auto-rehash # faster start of mysql but no tab completition

[isamchk]
key_buffer = 16M

ThomasH2
Beiträge: 10
Registriert: 24.03.2006 23:19:41

Beitrag von ThomasH2 » 25.03.2006 21:48:23

ich bin irgendwie sehr stark irritiert (komme aus der Windoof-Welt), dass in sämtlichen Dokus nichts über mein Problem steht. Logisch, dass man am Wo.ende auch keine Antwort erwarten kann. Nachdem ich mir nun das komplette mysql-Handbuch reingezogen habe
http://dev.mysql.com/doc/refman/4.0/de/index.html
,fand ich keinen Hinweis. Das Forum habe ich mir auch komplett auf mysql durchgelesen und fand ebenfalls nichts.

Einzige Schlußfolgerung: Niemand nutzt mysql im lokalen Netz von anderen PCs aus.

Wie auch immer, nach 2h Zeitverschwendung musste ich zu der primitiven try and error Methode übergehen und konfig-Einträge ändern, von denen ich absolut nicht weiss, wofür die gut sind.

geändet habe ich schließlich:

#bind-address = 127.0.0.1
bind-address = 192.168.0.201


Vermutlich ist das Stuss hoch 10, aber damit bekomme ich wenigstens den Fernzugriff hin.

Benutzeravatar
britneyfreek
Beiträge: 85
Registriert: 19.12.2005 05:11:20
Wohnort: Dresden

Beitrag von britneyfreek » 26.03.2006 04:17:28

du bist an der richtigen stelle!

Code: Alles auswählen

bind-address
bindet den mysql-daemon bei verwendung an eine ip. wenn also

Code: Alles auswählen

bind-address=127.0.0.1
verwendet wird, kannst du nur von dem rechner zugreifen, auf dem auch der server läuft.

um kompletten netzzugriff auf allen ip's/nic's zu haben kommentiere die option bind-address einfach aus.
dann lauscht der mysql-daemon auf allen enden.

ThomasH2
Beiträge: 10
Registriert: 24.03.2006 23:19:41

Beitrag von ThomasH2 » 26.03.2006 12:52:26

Hallo britneyfreek,

ich danke Dir für die Info.

Steht das irgendwo in einer Dokumentation geschrieben?

Ich habe auch noch ein Haufen Zugriffsprobleme unter ODBC/Access (Tabelleneinbinden geht nicht als root, sondern nur als normaler user ..), da käme mir eine gute Doku gerade recht.

Gruss Thomas

DeletedUserReAsG

Beitrag von DeletedUserReAsG » 26.03.2006 14:02:53


ThomasH2
Beiträge: 10
Registriert: 24.03.2006 23:19:41

Beitrag von ThomasH2 » 26.03.2006 21:01:48

danke niemand, im ersten link bin ich nicht fündig geworden,
der 2te Link liefert einen Startparameter des daemons

ich würde sagen, alles etwas knapp beschrieben :(

DeletedUserReAsG

Beitrag von DeletedUserReAsG » 27.03.2006 11:12:22

Im ersten Link ist der Aufbau der my.cnf beschrieben, und es wird gezeigt, wie die Startparameter aus dem zweiten Link in diese Datei eingebunden werden. Das Options-File ist in weiten Teilen nur ein Mittel, die Startoptionen und -parameter zusammenzufassen.

cu

Nerospeed
Beiträge: 14
Registriert: 10.02.2007 01:46:31
Wohnort: Hannover
Kontaktdaten:

Beitrag von Nerospeed » 06.10.2007 18:27:19

Hallo,
ich habe zwei Server mit Debian Etch und mySQL 5.0. Nun ist ja in der my.cnf die Zeile bind 172.0.0.1 aktiv. Ich kann also nur innerhalb des Server auf eine Datenbank zugreifen.
Nun wollte ich aber gerne, dass die beiden Server, sich gegenseitig erlauben, aufeinander zuzugreifen. Also das der Port 3306 nur für die beiden untereinander sichtbar ist.

Wie würde sowas gehen.

MfG nero

gms
Beiträge: 7798
Registriert: 26.11.2004 20:08:38
Lizenz eigener Beiträge: MIT Lizenz

Beitrag von gms » 06.10.2007 22:59:47

gibts verschieden Lösungen dafür:
Firewall, Tunnel, die beiden Server über zusätzliche NIC's verbinden,...

Gruß
gms

Antworten