ubuntuusers.de

mit Windows auf einen MySQL Server auf Linux

Status: Ungelöst | Ubuntu-Version: Server 8.04 (Hardy Heron)
Antworten |

comp2000

Anmeldungsdatum:
22. Januar 2008

Beiträge: 88

Guten abend erst mal

Ich habe einen UbuntuServer mit Apache2, Samba,FTP-Server und alles läuft prima 😛 .Nun habe ich auf meinen Vista Rechner PaperOffice 2008 was einen MySQL Server benötig.Warum bin ich nur auf die Idee gekommen den auf einen LinusServer auf zu setzen ☹ Die Installation ging mit apt-get install mysql-server phpmyadmin ohne Fehlermeldung durch.Dabei wurde ich nach einem Password für root gefragt was ich auch vergeben habe. Dann habe ich mit:

> netstat -tap | grep mysql
tcp        0      0 *:mysql                 *:*                     LISTEN      4477/mysqld

geprüft und es sieht alles ok aus. Dann habe ich mit Webmin bei MySQL einen Benutzer angelegt mit allen Rechten und in der /etc/mysql/my.cnt die Bindung auf localhost Komentiert (#) davor.Dann auf den Vista Rechner das Programm gestartet die IP vom LinuxServer mit Port:3306 und den Benutzer mit Password eingetragen.Aber beim Test kommt nur ganz einfach Verbindung zur Datenbank kann nicht her gestellt werden. 😢 Also zwei Nächte gegooglt...... Gibt es denn eine Möglichkeit von Vista oder WinXP den MySQL Server zu testen was mehr aufschluss bringt?Mit Webmin und phpmyadmin kann ich mich mit root anmelden und komme auf dem MySQL-Server. Wenn ich mit Vista per Telnet auf den LinuxServer mit Port:3306 verbinde kommt:

@
 5.0.51a-3ubuntu5.4`b+M"^612,?HRFDeN9n@5(e

Also eine Verbingung von Vista über das LAN zum LinuxServer mit MySQL scheint es zu geben oder? Dann habe ich alles direkt am LinuxServer aus probiert was Google gezeigt:

> /etc/init.d/mysql status
 * /usr/bin/mysqladmin  Ver 8.41 Distrib 5.0.51a, for debian-linux-gnu on i486
Copyright (C) 2000-2006 MySQL AB
This software comes with ABSOLUTELY NO WARRANTY. This is free software,
and you are welcome to modify and redistribute it under the GPL license

Server version		5.0.51a-3ubuntu5.4
Protocol version	10
Connection		Localhost via UNIX socket
UNIX socket		/var/run/mysqld/mysqld.sock
Uptime:			5 hours 51 min 37 sec

Threads: 1  Questions: 262  Slow queries: 0  Opens: 23  Flush tables: 1  Open tables: 17  Queries per second avg: 0.012

er scheint also zu leben oder???

> mysql -u root test

ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)

diese Fehlermeldung bringt mich zu verzeifeln (root hat doch ein password bekommen und ich kann mich ja damit auch unter Webmin anmelden)

> mysql -u benutzer

kann ich mich anmelden aber ohne password

Ich sehe echt kein Land mehr oder woran es liegen soll, ok vielleicht habe mich mich mit MySQL auch übernommen....ach echt schade Aber vielleicht hat doch jemand die rettende Idee vielen dank........ comp2000

bodensee

Anmeldungsdatum:
4. November 2006

Beiträge: 1971

Hallo,

funktioniert denn auf dem Linux Server ein telnet localhost:3306 ?

Wobei ich ernsthaft bezweifle, dass ein telnet auf eine Datenbank funktioniert. Da muss es doch einen Client auf dem Vista Rechner geben, der sich mit der Datenbank verbinden soll.

Ich habe mir mal spasseshalber das Basishandbuch von PaperOffice heruntergeladen: http://www.realify.de/support.helpdesk.offline.php?option=download unter Installation von MySQL steht auf Seite 31 etwas von MySQL Connector auf den Clients installieren. hast Du das gemacht? Funktioniert das?

Ollfried

Anmeldungsdatum:
27. November 2007

Beiträge: 195

comp2000 schrieb:

> mysql -u root test

ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)

diese Fehlermeldung bringt mich zu verzeifeln (root hat doch ein password bekommen und ich kann mich ja damit auch unter Webmin anmelden)

mysql -u root -p test

Dann fragt er nach dem Passwort.

use mysql
select Host,User from user;

wird Dir zeigen, dass root sich nur von localhost anmelden darf.

use mysql
update user set Host="%" where User="root";

erlaubt es root zum Beispiel, sich von jedem Host anzumelden.

comp2000

(Themenstarter)

Anmeldungsdatum:
22. Januar 2008

Beiträge: 88

am LinuxServer ist ein telnet auf locahost:3306 nicht möglich ja du hast recht das Prgramm unter Vista greift nicht per telnet auf die MySQL zu sonder ein Client der wie du richtig gelesen hast bei der Installation von PaperOffice auch installiert wurde.Aber eben wenn ich alle Daten wie oben beschrieben in den Client eingebe fragt er ob eine Testverbindung auf bauen soll und wenn ja kommt eben nur... Konnte keine Verbindung zur Datenbank aufbauen. Das mit dem Telnet habe ich er Googlet ... wenn man unter Windows per Telnet versucht auf dem LinuxServer mit MySQL unter Port:3306 versucht eine Verbindung auf zu bauen sieht man ob überhaupt was passiert.Und laut anwort siehe oben erkennt telnet auf dem Port:3306 ja die MySQL und Ubuntu Version.

@
 5.0.51a-3ubuntu5.4`b+M"^612,?HRFDeN9n@5(e

wie gesagt hatte das nur unter google gefunden ob es wirklich brauchbar ist weiß ich nicht aber vielleicht findet man ja in der gemeinschaft eine Lösung

bodensee

Anmeldungsdatum:
4. November 2006

Beiträge: 1971

Du siehst da lediglich, dass auf Port 3306 etwas auf Anfragen lauscht, nicht mehr und nicht weniger. Der Ansatz ist falsch.

Also ich tippe mal auf ein Problem mit der Datenbank an sich. Ich würde einen Linux Client auf dem Linux Server installieren und von dort aus erst einmal den Zugriff testen. Erst wenn man lokal auf die DB kommt, würde ich übers Netz versuchen. Und garantiert wenn der Zugriff lokal funktioniert, gehts auch übers Netz. Firewall bei Vista ist abgeschalten?

schmauch

Avatar von schmauch

Anmeldungsdatum:
27. April 2009

Beiträge: 115

Wohnort: Wettswil a. A.

Und du hast den MySQL Server so konfiguriert, dass er übers Netz erreichbar ist? Ich zitiere aus der Wiki MySQL:

Nach der Installation ist der MySQL-Server so konfiguriert, dass er nur vom localhost - also vom lokalen Rechner aus - erreichbar ist.

Gruss Schmauch

comp2000

(Themenstarter)

Anmeldungsdatum:
22. Januar 2008

Beiträge: 88

@Ollfried danke ich konnte so root ein password geben und ihn von localhost auf % von allen Rechner an melden setzen. Leider habe ich immer noch das Problem das ich mich von Windows aus weder unter root noch unter dem erstellten Benutzer beider MySQL Datenbank anmelden kann.Kommt immer noch Verbindung zur Datenbank konnte nicht her gestellt werden

@schmauch ja habe ich..... wie oben geschrieben habe ich in der /etc/mysql/my.cnf

#bind-address            = localhost

korrigiert

schmauch

Avatar von schmauch

Anmeldungsdatum:
27. April 2009

Beiträge: 115

Wohnort: Wettswil a. A.

Trag da mal die IP-Adresse des Rechners ein, also z.B:

bind-address            = 192.168.XXX.XXX

Beachte, dass du die XXX mit der entsprechenden Zahl ersetzen musst. Beachte ferner, dass zu Beginn der Zeile keine Raute (#) steht, weil sonst die Zeile auskommentiert und somit nicht ausgewertet wird.

Schliesslich: Wenn du die Konfiguration änderst, werden die erst nach einem Neustart des Servers aktiv. Dazu:

sudo /etc/init.d/mysql restart

Gruss Schmauch

comp2000

(Themenstarter)

Anmeldungsdatum:
22. Januar 2008

Beiträge: 88

@schmauch

wow wenn ich in der /etc/mysql/my.cnf die Bindung an die IP vom Windowsrechner lege

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

bekomme ich beim /etc/init.d/mysql restart eine Fehlermeldung

> /etc/init.d/mysql restart
 * Stopping MySQL database server mysqld
   ...done.
 * Starting MySQL database server mysqld
   ...fail!

also muss es was mit dem Netzwerk zutun haben oder??? 😲

schmauch

Avatar von schmauch

Anmeldungsdatum:
27. April 2009

Beiträge: 115

Wohnort: Wettswil a. A.

Nein, du musst die IP Adresse des Linux Rechners nehmen 😉

comp2000

(Themenstarter)

Anmeldungsdatum:
22. Januar 2008

Beiträge: 88

@schmauch wenn ich aber da die IP vom LinuxServer eintrage dann kann ich ja MySQL nur local also vom LinusRechner aus erreich aber wenn ich die IP vom LinuxServer eintrage kommt beim restart keine Fehlermeldung mehr

schmauch

Avatar von schmauch

Anmeldungsdatum:
27. April 2009

Beiträge: 115

Wohnort: Wettswil a. A.

Nein, du kannst dann vom Windows-Rechner auf den Linux-Rechner zugreifen.

Du musst aber die Adresse eintragen, die der Linux-Rechner im LAN hat und nicht 127.0.0.1

Von Windows her musst du dann dieselbe Adresse verwenden, um darauf zuzugreifen.

comp2000

(Themenstarter)

Anmeldungsdatum:
22. Januar 2008

Beiträge: 88

ok habe ich versucht.. hier noch mal meine my.cnf

#
# The MySQL database server configuration file.
#
# You can copy this to one of:
# - "/etc/mysql/my.cnf" to set global options,
# - "~/.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/server-system-variables.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
#

#
# * IMPORTANT
#   If you make changes to these settings and your system uses apparmor, you may
#   also need to also adjust /etc/apparmor.d/usr.sbin.mysqld.
#

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=192.168.2.3
#
# * Fine Tuning
#
key_buffer		= 16M
max_allowed_packet	= 16M
thread_stack		= 128K
thread_cache_size	= 8
#max_connections        = 100
#table_cache            = 64
#thread_concurrency     = 10
#
# * Query Cache Configuration
#
query_cache_limit       = 1M
query_cache_size        = 16M
#
# * Logging and Replication
#
# Both location gets rotated by the cronjob.
# Be aware that this log type is a performance killer.
#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
#long_query_time = 2
#log-queries-not-using-indexes
#
# The following can be used as easy to replay backup logs or for replication.
# note: if you are setting up a replication slave, see README.Debian about
#       other settings you may need to change.
#server-id		= 1
#log_bin			= /var/log/mysql/mysql-bin.log
expire_logs_days	= 10
max_binlog_size         = 100M
#binlog_do_db		= include_database_name
#binlog_ignore_db	= include_database_name
#
# * BerkeleyDB
#
# Using BerkeleyDB is now discouraged as its support will cease in 5.1.12.
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!
# You might want to disable InnoDB to shrink the mysqld process by circa 100MB.
#skip-innodb
#
# * Security Features
#
# Read the manual, too, if you want chroot!
# chroot = /var/lib/mysql/
#
# For generating SSL certificates I recommend the OpenSSL GUI "tinyca".
#
# 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

#
# * NDB Cluster
#
# See /usr/share/doc/mysql-server-*/README.Debian for more information.
#
# The following configuration is read by the NDB Data Nodes (ndbd processes)
# not from the NDB Management Nodes (ndb_mgmd processes).
#
# [MYSQL_CLUSTER]
# ndb-connectstring=127.0.0.1


#
# * IMPORTANT: Additional settings that can override those from this file!
# The files must end with '.cnf', otherwise they'll be ignored.
#
!includedir /etc/mysql/conf.d/

so hier die ganze Datei wie du siehst hat die Bindung an die IP es Server nix gebracht....kann mich mit einem Client unter Windows immer noch nicht anmelden

schmauch

Avatar von schmauch

Anmeldungsdatum:
27. April 2009

Beiträge: 115

Wohnort: Wettswil a. A.

Der Neustart von MySQL ging ohne Fehler über die Bühne?

Wenn ja, kannst du vom Linux-Server zugreifen?

mysql -u root -p

Was meldet der Client von Windows? Welche Einstellungen verwendest du dort? Verwendest du den Client von Paper Office? Hast du die Möglichkeit, die Verbindung mit einem anderen Client zu prüfen?

bodensee

Anmeldungsdatum:
4. November 2006

Beiträge: 1971

Ist denn root überhaupt der Database Admin? Ist das evtl. nicht sa oder sowas?

Antworten |