Top-Themen

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

Connection to DB failed - vbs Skript (MySQL DB)

Frage Entwicklung Batch & Shell

Mitglied: Bacaaardi

Bacaaardi (Level 1) - Jetzt verbinden

09.09.2009, aktualisiert 09:21 Uhr, 8364 Aufrufe, 4 Kommentare

Hallo ich habe ein Skript (vbs) welches mir aus einer MySQL Datenbank meine Abfrage in ein xls kopiert.

Wenn sich das Skript versucht mit der MySQL-DB zu verbinden kommt folgende Fehlermeldung:

Can`t connect ti MySql server on '10.1.111.19' (10061)
Code: 80004005
Quelle: Microsoft Ole DB Provider for ODBC Drivers


Hier die Codestelle (Auszug):

01.
Set Conn = CreateObject("ADODB.Connection") 
02.
Conn.Provider = "MSDASQL" 
03.
Conn.Mode = adModeRead 
04.
Conn.CursorLocation = adUseClient 
05.
Conn.Open "DRIVER={MySQL ODBC 5.1 Driver};" & _ 
06.
          "DATABASE=KundenDB;" & _ 
07.
          "SERVER=10.1.111.19;", _ 
08.
          "only_read_user", "Passwort" 
09.
 
10.
Set RS = CreateObject("ADODB.Recordset") 
11.
RS.CursorLocation = adUseClient 
12.
'verwendete SQL-Anweisung 
13.
RS.Source = "SELECT * From Kunde;" 
14.
Set RS.ActiveConnection = Conn 
15.
RS.CursorType = adOpenForwardOnly 
16.
RS.LockType = adLockReadOnly 
17.
RS.Open
Trage ich die Daten händsich über den "MySQL Query Browser" ein dann klappt die Verbindung.
Database = Standardschema, sonst die Angaben aus dem Quellcode

Jemand eine Idee?
Mitglied: TsukiSan
10.09.2009 um 01:09 Uhr
Hallo Bacaaardi,

ohne den Script zu testen, lass doch mal in Zeile 07 das ";" nach
der Adresse weg. Eventuell liegt da schon der Fehler.

Gruß
Tsuki
Bitte warten ..
Mitglied: KikiMiki
10.09.2009 um 10:16 Uhr
Hi habe deinen Änderungsvorschlag, siehe Zeile 7 gemacht
es kommt die gleiche Fehlermeldung.

Wenn ich den Port noch angeben muss, wie ist dann die Notation?

01.
Set Conn = CreateObject("ADODB.Connection") 
02.
Conn.Provider = "MSDASQL" 
03.
Conn.Mode = adModeRead 
04.
Conn.CursorLocation = adUseClient 
05.
Conn.Open "DRIVER={MySQL ODBC 5.1 Driver};" & _ 
06.
          "DATABASE=KundenDB;" & _ 
07.
          "SERVER=10.1.111.19", _ 
08.
          "only_read_user", "Passwort" 
09.
 
10.
Set RS = CreateObject("ADODB.Recordset") 
11.
RS.CursorLocation = adUseClient 
12.
'verwendete SQL-Anweisung 
13.
RS.Source = "SELECT * From Kunde;" 
14.
Set RS.ActiveConnection = Conn 
15.
RS.CursorType = adOpenForwardOnly 
16.
RS.LockType = adLockReadOnly 
17.
RS.Open
Bitte warten ..
Mitglied: KikiMiki
10.09.2009 um 10:32 Uhr
Hier nochmal das ganze Skript:

Gebe ich die Parameter aus Zeile 59 bis 61 in einen MySQL Browser ein dann klappt die Verbindung
Die Zugangsdaten stimmten also.
Nur der Port fehlt im meinem Skript im Vergleich zum MySQL Browswe.

Der Port ist 3304. Wo trage ich diesen in meinem Skript ein?

gebe ich in Zeile 60 folgendes ein
01.
"SERVER=10.10.111.19:3304;", _
klappt die Verbindung auch nicht


01.
Option Explicit 
02.
 
03.
'---- CursorTypeEnum Values ---- 
04.
Const adOpenForwardOnly = 0 
05.
' Const adOpenKeyset = 1 
06.
' Const adOpenDynamic = 2 
07.
' Const adOpenStatic = 3 
08.
 
09.
'---- LockTypeEnum Values ---- 
10.
Const adLockReadOnly = 1 
11.
' Const adLockPessimistic = 2 
12.
' Const adLockOptimistic = 3 
13.
' Const adLockBatchOptimistic = 4 
14.
 
15.
'---- CursorLocationEnum Values ---- 
16.
' Const adUseServer = 2 
17.
Const adUseClient = 3 
18.
 
19.
'---- ConnectModeEnum Values ---- 
20.
' Const adModeUnknown = 0 
21.
Const adModeRead = 1 
22.
' Const adModeWrite = 2 
23.
' Const adModeReadWrite = 3 
24.
' Const adModeShareDenyRead = 4 
25.
' Const adModeShareDenyWrite = 8 
26.
' Const adModeShareExclusive = &Hc 
27.
' Const adModeShareDenyNone = &H10 
28.
' Const adModeRecursive = &H400000 
29.
Dim objExcel, objWb, SkriptPfad 
30.
Dim objSheet 
31.
Dim Conn, RS 
32.
Dim rowCount, i, headerSet 
33.
Dim x 'Zähler für Statusbar 
34.
 
35.
MsgBox "Mit dem OK-Button wird der Import aus der DB gestartet."& vbCrLf & "Je nach SQL-Statement kann der Import mehrere Minuten dauern!" & vbCrLf & "Schließen Sie offene xls-Dokumente und vermeiden die Arbeit mit Excel während des Imports."& vbCrLf & "Sie werden über den Abschluss des Imports informiert!",64, "Info" 
36.
 
37.
x = 0 'Anfangswert für Zähler - Anzahl importierter Datensätze 
38.
 
39.
rowCount = 1 
40.
 
41.
SkriptPfad = WScript.ScriptFullName 'Pfadermittlung 
42.
SkriptPfad = Left(SkriptPfad, Len(SkriptPfad) - Len(WScript.ScriptName)) 'Pfadermittlung 
43.
 
44.
Set objExcel = CreateObject("Excel.Application") 
45.
Set objWb = objExcel.Workbooks.Open(SkriptPfad & "../Report.xls")'öffnet die angegebene xls 
46.
 
47.
objExcel.Visible = False 'die geöffnete xls ist während dem Import nicht sichtbar 
48.
objExcel.Sheets("Datenbasis").Select 'wählt die angegebene Mappe der zuvor geöffneten xls 
49.
objExcel.Range("Datenbasis!$1:$65536").ClearContents 'löscht alle Inhalte von angegebener Mappe 
50.
 
51.
'Angabe des Tabellenblattes 
52.
Set objSheet = objExcel.ActiveWorkbook.WorkSheets("Datenbasis") 'Import in angegebenes Tabellenblatt 
53.
 
54.
Set Conn = CreateObject("ADODB.Connection") 
55.
Conn.Provider = "MSDASQL" 
56.
Conn.Mode = adModeRead 
57.
Conn.CursorLocation = adUseClient 
58.
Conn.Open "DRIVER={MySQL ODBC 5.1 Driver};" & _ 
59.
"DATABASE=KundenDB;" & _ 
60.
"SERVER=10.10.111.19;", _ 
61.
"only_read_user", "Passwort" 
62.
 
63.
Set RS = CreateObject("ADODB.Recordset") 
64.
RS.CursorLocation = adUseClient 
65.
'verwendete SQL-Anweisung 
66.
RS.Source = "Select * from Kunde;" 
67.
Set RS.ActiveConnection = Conn 
68.
RS.CursorType = adOpenForwardOnly 
69.
RS.LockType = adLockReadOnly 
70.
RS.Open 
71.
 
72.
Do While Not RS.EOF 
73.
'objExcel.StatusBar = x & " Datensätze aus DB importiert" 'Text für Statusbar 'macht nur Sinn bei objExcel.Visible = True 
74.
'Die Spalenüberschriften einfügen Bezug aus dem SQL-Statement 
75.
If( headerSet = 0 ) Then 
76.
For i = 0 to RS.Fields.Count - 1 
77.
objSheet.Cells(rowCount, i+1).Value = RS.Fields.Item(i).Name 
78.
Next 
79.
headerSet = 1 
80.
End If 
81.
'Die dazugehörigen Werte einfügen 
82.
For i = 0 to RS.Fields.Count -1 
83.
objSheet.Cells(rowCount+1, i+1).Value = RS.Fields.Item(i).Value 
84.
Next 
85.
rowCount = rowCount + 1 
86.
RS.MoveNext 
87.
 
88.
x = x + 1 
89.
Loop 
90.
'objExcel.Statusbar = False 'Statusbar bereinigen 'macht nur Sinn bei objExcel.Visible = True 
91.
 
92.
objExcel.Sheets("Fälligkeit").Select 'wählt die angegebene Mappe der zuvor geöffneten xls 
93.
objExcel.Cells(7, 5) = Date & " / " & Time & " Uhr" 'schreibt das Datum und die Zei des letzten Imports in das Sheet ICeD-Fälligkeitsliste in definierte Zelle 
94.
objExcel.Cells(8, 5) = x & " Datensätze" 'schreibt die Anzahl der importierten Datensätz in definierte Zelle von Sheet 
95.
 
96.
RS.Close 
97.
Set RS = Nothing 
98.
 
99.
Conn.Close 
100.
Set Conn = Nothing 
101.
 
102.
MsgBox "Datenimport aus DB abgeschlossen! Die Datenbasis zeigt den Stand vom " & Date & " bis " & Time & "!" & vbCrLf & "Aktualisieren Sie die den Report über die Schaltfläche >>alle Pivots aktualisieren< 
103.
objExcel.Visible = True 'macht die zuvor geöffnete Datei nach Import sichtbar
Bitte warten ..
Mitglied: KikiMiki
10.09.2009 um 13:11 Uhr
Habe die Lösung gefunden:

01.
Conn.Open "DRIVER={MySQL ODBC 5.1 Driver};" & _ 
02.
"SERVER=10.111.92.173;UID=read_user;PWD=qwertz;Port=3304;database=db_Kunde"
Damals hatten wir den Port 3306. Dieser wird standardmäßig verändert.

Da wir jetzt über den Port 3304 gehen muss dieser explizit angegeben werden. Wenn nicht versucht das Skript auf 3306 zu verbinden...
Bitte warten ..
Ähnliche Inhalte
Webentwicklung
Connection failed: Ein Socketvorgang konnte nicht ausgeführt werden
gelöst Frage von mabue88Webentwicklung2 Kommentare

Hallo, auf einer HTML-Seite verwende ich AJAX um zyklisch (mittels Polling) Daten aus einer Datenbank auszulesen. Grundsätzlich funktioniert das. ...

Server-Hardware
Supermicro IPMI Connection failed nach Update
gelöst Frage von Fenris14Server-Hardware10 Kommentare

Guten Tag Community, ich habe mal wieder ein sehr delikates Problem und finde einfach die Lösung nicht. Ich habe ...

Java
DB-Mysql-Treiber
Frage von MrsPlanetJava2 Kommentare

Hallo zusammen, wenn ich versuche meine App zu starten, bekomme ich eine Fehlermeldung, dass der Mysql-Treiber nicht gefunden werden ...

Verschlüsselung & Zertifikate
Meldung "Secure Connection Failed" bei Zugriff auf Server mit Firefox
Frage von InternetterVerschlüsselung & Zertifikate2 Kommentare

Hallo zusammen, ein Kollege hat auf einem Server (im Intranet) eine Website eingerichtet. Wenn ich diese aufrufen will kommt ...

Neue Wissensbeiträge
Viren und Trojaner

Deaktivierter Keylogger in HP Notebooks entdeckt

Information von bitcoin vor 17 StundenViren und Trojaner1 Kommentar

Ein Grund mehr warum man Vorinstallationen der Hersteller immer blank bügeln sollte Der deaktivierte Keylogger findet sich im vorinstallierten ...

Router & Routing

Lets Encrypt kommt auf die FritzBox

Information von bitcoin vor 21 StundenRouter & Routing

In der neuesten Labor-Version der FB7490 integriert AVM unter anderem einen Let's Encrypt Client für Zugriffe auf das Webinterface ...

Internet

Was nützt HTTPS, wenn es auch von Phishing Web-Seiten genutzt wird

Information von Penny.Cilin vor 3 TagenInternet17 Kommentare

HTTPS richtig einschätzen Ob man eine Webseite via HTTPS aufruft, zeigt ein Schloss neben der Adresse im Webbrowser an. ...

Webbrowser

Bugfix für Firefox Quantum released - Installation erfolgt teilweise nicht automatisch!

Erfahrungsbericht von Volchy vor 4 TagenWebbrowser8 Kommentare

Hallo zusammen, gem. dem Artike von heise online wurde mit VersionFirefox 57.0.1 sicherheitsrelevante Bugs behoben. Entgegen der aktuellen Veröffentlichung ...

Heiß diskutierte Inhalte
Batch & Shell
Trusted Sites für alle User auf dem PC einpflegen
Frage von xXTaKuZaXxBatch & Shell12 Kommentare

Aufgabestellung: Es sollen auf 1 PC (bzw. mehreren PCs) vertrauenswürdige Sites per Powershell eingetragen werden, die für alle User ...

Voice over IP
Telefonstörung - Ortsrufnummern kein Verbindungsaufbau
Frage von Windows10GegnerVoice over IP10 Kommentare

Hallo, sowohl bei uns als auch beim Opa ist es über VoIP nicht möglich Ortsrufnummern anzurufen. Es kommt nach ...

Vmware
DOS 6.22 in VMWare mit CD-ROM
gelöst Frage von hesperVmware10 Kommentare

Hallo zusammen! Ich hab ein saublödes Problem. Es ist eine VMWare mit DOS 6.22 zu erstellen auf dem ein ...

Cloud-Dienste
PIM als SaaS Nutzungsgebühr
Frage von vanTastCloud-Dienste8 Kommentare

Moin, wir haben uns ein PIM (Product Information Management) nach unseren Ansprüchen für viel Geld als SaaS-Lösung bauen lassen. ...