Delphi / MyDAC / MySQL

klasi

Grünschnabel
Hallo zusammen,

ich habe nach Möglichkeiten auf eine MySQL Datenbank zuzugreifen gesucht und bin auf MyDAC gestossen. Die Komponenten machen einen guten Eindruck nur denke ich durch die vielen anderen Versuche (MyODBC...) dürfte meine Konfiguration ggf. nicht ganz ok sein :(

Ich hoffe hier jemanden zu finden der bereits mit MyDAC gearbeitet hat oder sich mit den login Eigenheiten von MySQL auskennt :rolleyes:

Mein Problem ist wie folgt:

Wenn ich mit dem ConnectDialog aus MyDAC Demos eine Verbindung herstellen möchte erhalte ich einen Dialog mit folgender Voreinstellung:

UserName = root
Password =
Server =
Port = 3306
Database = test

Wenn ich nichts ändere und auf ok klicke, dann wird tatsächlich eine Verbindung hergestellt (Datenbank mysql und test aus der Installation bereits vorhanden)

Der Datenbankstatus abgefragt mit mysqladmin ist wie folgt:

Connection id : 6
Current database :
Current user: ODBC@localhost
Server version: 3.23.58-nt
Protocol version: 10
Connection: localhost via TCP/IP
Client characterset: latin1
Server characterset : latin1
TCP port: 3306
Uptime: 25 min 31 sec

Die Einstellungen abgefragt mit Winmysqladmin sind wie folgt:

Inhalt My.ini file

#This File was made using the WinMySQLAdmin 1.4 Tool
#25.08.2004 19:28:01

#Uncomment or Add only the keys that you know how works.
#Read the MySQL Manual for instructions
Code:
[ mysqld]
basedir=C:/mysql
#bind-address=192.168.122.254
datadir=C:/mysql/data
#language=C:/mysql/share/your language directory
#slow query log#=
#tmpdir#=
#port=3306
#set-variable=key_buffer=16M
[WinMySQLadmin]
Server=C:/mysql/bin/mysqld-nt.exe
user=SQLAdmin
password=klasi
QueryInterval=10


Wenn ich jetzt den Connectdialog wie folgt ändere:

UserName = SQLAdmin
Password = klasi
Server = localhost
Port = 3306
Database = test

Entsprechend der Einstellungen in my.ini dann erhalte ich eine Fehlermeldung wie folgt:

Acces denied for user: 'SQLAdmin@localhost'(using password: YES) :-(

Wie kann ich herausfinden welche Einstellungen im Connect-Dialog funktionieren, also die richtigen Zugangsdaten ermitteln?

Aller Anfang ist schwer, ich hoffe es kann mir hier jemand zum Durchblick verhelfen.

MfG klasi
 
Zunächst mußt du wissen, ob User SQLAdmin Zugriff auf die Datenbank test hat.
Ist User SQLAdmin überhaupt mit irgend welchen Rechten ausgestattet?

Ich vermute, Du hast Dich noch nicht sehr intensiv mit MySql beschäftigt, oder?

vop
 
Hi vop,

mit deiner Vermutung liegst du richtig, deshalb mache ich alles streng nach Buchvorlage (MySQL von Michael Kofler Addison-Wesley Verlag), das Dumme ist nur dass die Befehle direkt mit mysql ausgeführt den selben Fehler anzeigen, "Entwicklung" hat keine Zugriffsberechtigung...

Deshalb stehe ich jetzt etwas auf dem Schlauch weil ich zum einen nicht weiß wie ich die Zugriffsdaten ermitteln kann zum anderen nicht weiß wie ich neue Benutzer und Zugriffsrechte anlegen kann da die Kommandos direkt in mysql eingegeben nicht funktionieren.

Meine Vermutug ging in Richtung installiertes myODBC da als current-user ODBC@localhost angezeigt wird. Hier hilft mir auch mein Fachbuch nicht weiter und mein Licht bleibt dunkel:-(

Ich hoffe hier einfach mal um Anfängerunterstützung :( jeder fängt mal klein an.

MfG klasi
 
Als erstes solltest Du dich mal mit MySql näher beschäftigen.

Auf der MySql-Site kannst Du lesen, wie man Benutzer einrichtet etc.

Versuche erst einmal, das MySql richtig nach deinem Testbedarf einzurichten.
Dann erst solltest Du mit Delphi und ODBC etc. drauf zugreifen.

BTW. Ich glaube mit MyDAC benötigst du nicht einmal ODBC.

vop
 
Hi vop,

eigentlich kann man bei der Installation von mySQL nichts falsch machen, also besorgte ich mir mySQL Administrator und mySQL Control Center von der mySQL Homepage. Nach langem hin und her zwischen beiden Programmen und einigen Fehlermeldungen konnte ich plötzlich im mySQL Administrator neue User anlegen und Rechte vergeben. Nun funktioniert auch mein Zugriff mit MyDAC auf die Datenbank - wie einfach manche Sache doch ist wenn man drauf kommt ;-)

Für MyDAC benötigt man keinen ODBC Treiber, das war nur ein Versuch bevor ich auf MyDAC gestossen bin. Den ODBC Eintrag in den Server Connections bin ich allerdings noch nicht losgeworden, irgendwie lässt sich das Ding nicht löschen.

MfG klasi
 
Zurück