Ergebnis 1 bis 10 von 10

Thema: LAMP Keine Verbindung zur Datenbank vorhanden

  1. #1
    Contao-Nutzer Avatar von joe.schraube
    Registriert seit
    22.04.2012.
    Ort
    Dresden
    Beiträge
    81

    Standard LAMP Keine Verbindung zur Datenbank vorhanden

    Am liebensten würde ich einen neuen Acount anlegen für die Frage, fühlt sich wirklich peinlich an wenn Mensch nach Stunden aufgeben muss an einem Vorgang den er schon x mal erfolgreich durchgeführt hat. ( das die Betreff Zeile - kjeine Verbindung zur Datenbank vorhanden - hir eine der häufigsten ist macht es auch nich t besser ... )

    Ich sitze seit einem Halben Jahr in Inden und jetzt Nepal und das Netz ist hier so lahm dass ich zur lokalen bearbeitunger meiner Seiten übergehen muss.

    Ubuntu 12.04 LAMP istalliert Apache läuft, http://localhost/ gibt aus :

    It works!
    This is the default web page for samsung Laptop joe server.


    mysqlServer läuft root@joe-laptop:/# service mysql restart
    mysql stop/waiting
    mysql start/running, process 24121

    http://localhost/phpmyadmin/ alles wie immer, schon x mal gemacht db angelegt Nutzer angelegt.

    Weil meine nun ( 28 h lang ) runtergeladene Webseite nicht will , erstmal ein frisches Contao in einem Ordner angelegt.

    http://localhost/test//contao/install.php ergibt nun seit Stunden Keine Verbindung zur Datenbank vorhanden und mir fällt nichts mehr ein.

    diese Seite hier http://dev.mysql.com/doc/refman/5.1/...ss-denied.html durchgeackert.

    worann kann es liegen ?

    apache läuft ja
    mysql läuft ja
    db angelegt ja
    Nutzer hat volle Privilegien Ja
    namen und passwörter richtig eingegeben ja

    ..... ????

  2. #2
    Contao-Urgestein
    Registriert seit
    10.07.2010.
    Beiträge
    4.403
    User beschenken
    Wunschliste

    Standard

    Mir kommt das irgendwie bekannt vor ;-)

    Als umsteiger von Windows und contao2go Nutzer bin ich mit meinem LinuxMint Maya auch ins kalte Wasser gesprungen. Da meine Mint die Selbe Version als Basis verwendet solltest Du mal ins Tutorial gucken welches ich zusammen gestellt habe (links):

    http://community.linuxmint.com/tutorial/view/1288 Guck mal speziell link2 an.

    Ich hatte was ähnliches da ich verschiedenes ausprobiert hatte. Überprüfe ob eine Firewall aktiv ist. Dann müsstest Du vielleicht noch den Port freigeben. Übrigens ist es möglich wenn Du was deinstallierst, das der Service noch am laufen ist. Den musst Du dann nachträglich (auch nach erfolgreicher deinstallation) deaktivieren.

    Das ist mir mit Firestarter (alternative Firewall) passiert. Deinstalliert und der Service war weiter aktiv!

    Grüsse aus Brasilen von einem Leidensgenosse (was lahmes Internet an geht). Wobei ich jetzt supperschnelles internet habe ... von 400k auf 1MB aufgerüstet

  3. #3
    Contao-Nutzer Avatar von joe.schraube
    Registriert seit
    22.04.2012.
    Ort
    Dresden
    Beiträge
    81

    Standard

    Einen Schritt weiter aber nicht am Ziel

    per Konsole Angelegte Dartenbanken und user funktionieren , per phpmyadmin über Webinterface geht nicht warum ?

    weiterhin steht im Ubuntuuserswiki

    Neuen Datenbank-Benutzer www-data mit dem Kennwort geheim erstellen (wenn die Datenbank im Rahmen eines LAMP-Servers eingesetzt werden soll)

    muss der mysql user bei localer installation www-data heissen ? warum ?

    Ich habe auf meinem Server Ubuntu und auf dem Laptop Ubuntu, welchen Unterschied macht es wenn ich stadt www.webmystik.de localhost eingebe ? Das könnte doch dem apache, mysql und Contao völlig egal sein von wo aus die Anfrage des Browsers kommt. Port 80 ist es doch auch im localen fall.



    meine vom Server geholte Contao Installation mag aber immernoch nicht es kommt : Fatal error: Uncaught exception Exception with message Query error: No database selected

    die Angaben im conf file der istallation stimmen db-name user pw


    freu mich über über erhellendes



    Code:
    Fatal error: Uncaught exception Exception with message Query error: No database selected (SELECT tl_page.* FROM tl_page WHERE tl_page.type='root' AND (tl_page.dns='localhost' OR tl_page.dns='') AND (tl_page.language IN('de','en') OR tl_page.fallback=1) AND (tl_page.start='' OR tl_page.start<1370321096) AND (tl_page.stop='' OR tl_page.stop>1370321096) AND tl_page.published=1 ORDER BY tl_page.dns DESC, FIND_IN_SET(tl_page.language, 'en,de') DESC, tl_page.sorting LIMIT 0,1) thrown in …/system/modules/core/library/Contao/Database/Statement.php on line 317
    
    #0 …/system/modules/core/library/Contao/Database/Statement.php(261): Contao\Database\Statement->query()
    #1 …/system/modules/core/library/Contao/Model.php(558): Contao\Database\Statement->execute('localhost')
    #2 …/system/modules/core/library/Contao/Model.php(426): Contao\Model::find(Array)
    #3 …/system/modules/core/models/PageModel.php(98): Contao\Model::findOneBy(Array, 'localhost', Array)
    #4 …/system/modules/core/classes/Frontend.php(326): Contao\PageModel::findFirstPublishedRootByHostAndLanguage('localhost', Array)
    #5 …/index.php(68): Contao\Frontend::getRootPageFromUrl()
    #6 …/index.php(411): Index->run()
    #7 {main}
    Geändert von joe.schraube (04.06.2013 um 05:45 Uhr)

  4. #4
    Contao-Urgestein
    Registriert seit
    10.07.2010.
    Beiträge
    4.403
    User beschenken
    Wunschliste

    Standard

    Fixing phpMyAdmin

    One common error that some people make is that they forget to mark apache2 during thephpMyAdmin configuration. When this happens you'll get a 404 Not Found error when trying to navigate to http://localhost/phpmyadmin/.
    hast das gemacht (Tutorial2)?

    Neuen Datenbank-Benutzer www-data mit dem Kennwort geheim erstellen (wenn die Datenbank im Rahmen eines LAMP-Servers eingesetzt werden soll)
    Du vermischst was ... der Apache arbeitet mit den www-data user rechten. Dem MySQL Server ist es egal wie der User heisst (wenn Du lokal arbeitest ist das auch kein grosses risiko) ... Du kannst auch root und kein pw nehmen. Aber der Lamp server ist eben nicht nur für Lokales verwenden gedacht ... desshalb auch all die Sicherheits Hinweise.

    muss der mysql user bei localer installation www-data heissen ? warum ?
    Nein, Du vermischst da was.

    Localhost ist an die Addresse 127.0.0.1 gebunden (kannst testen mit ping localhost). Wenn Du bei Contao Localhost eingibst ist das der Lokale Server wo auch die Seite gehostet ist. Da kann beim Server die IP ändernd, wenn localhost eingibst ist das contao egal. Es wird immer eine Lokale anfrage über 127.0.0.1 gemacht. 127.0.0.1 ist eine Loopback Adresse und ist nur auf dem PC/Server gültig (wird nicht geroutet). www.webmystik.de hingegen schon und ist eine einmalige addresse die im DNS Verzeichniss weltweit aufgelistet ist. Dafür bezahlst Du die jähliche Gebühr.
    Geändert von ciaobello (04.06.2013 um 05:33 Uhr)

  5. #5
    Contao-Nutzer Avatar von joe.schraube
    Registriert seit
    22.04.2012.
    Ort
    Dresden
    Beiträge
    81

    Standard

    Was ich vermische sehe ich noch nicht so ganz, was du schreibst ist soweit klar nur eklärt das nicht warum local nicht geht was auf meinem Server geht.

    wie gesagt localhost/test bringt mich zu einer neuen leeren Contaoistallation die läuft und funktioniert. soweit alles fein.

    wenn ich das Verzeichnis aufrufe in dem Contao liegt ( config wurde auf die neue mysql datenbank angepasst ) dann kommt der Fehler.

    Ein Unterschied zum Server ist noch dass ich da mit vHosts arbeite hier einfach localhost/contao-wurzelverzeichniss aufrufe.
    Macht das für Contao eine Unterschied ?

    wie rufe ich einen virtualhost am localhost auf ? localhost/domainname.de ?
    Geändert von joe.schraube (04.06.2013 um 06:22 Uhr)

  6. #6
    Alter Contao-Hase Avatar von bizon
    Registriert seit
    16.06.2010.
    Beiträge
    1.123

    Standard

    Der Aufruf von http://webmystic.de nach Lokal wird immer fehlschlagen, weil das Suffix .de ins www ausleitet und die Domain somit nicht für deinen lokalen Apache aufgelöst wird.


    Auf deinem Laptop hast du erfolgreich eine Contao Testinstallation in localhost/test durchgeführt. Es scheint also alles zu funktionieren.

    Die Kopie von webmystic.de legst du jetzt ebenfalls in einen Unterordner auf deinen lokalen Apache z.B. in localhost/webmystic

    Ebenfalls Lokal hast du zwei Datenbanken anlegt: z.B. test und webmystic

    Die localconfig.php der beiden jetzt vorhandenen Installationen unterscheidet sich nur durch die zwei verschiedenen Datenbanken und durch den WebsitePath (der steht je nach Contao-Version evtl. in der pathconfig.php).

    Aufruf der Testinstallation: http://localhost/test
    Aufruf der lokalen webmystic: http://localhost/webmystic

    Wahrscheinlich musst du auch die lokale .htaccess anpassen:
    RewriteBase /webmystic

  7. #7
    Contao-Nutzer Avatar von joe.schraube
    Registriert seit
    22.04.2012.
    Ort
    Dresden
    Beiträge
    81

    Standard

    ok danke das mit den virtualhost ist jetzt klar, einfach keine anlegen im apache und den ordnernamen im Browser aufrufen.

    dennoch : installiere ich ein frisches Contao alles fein, dafür sind ja ach sämtliche Anleitungen geschrieben.

    Hole ich aber ein completes CMS vom Server und will es local bearbeiten kann ich mich nicht einloggen. Leider find eich keien Anleitung zu meinem Fall der doch eigentlich gar nicht so unüblich sein sollte.

    Selbst wenn ich die localconfig von der neuistallation nehme und in das runtergeladene Contao einfüge und die db namen und user und pw ändere kann ich mich nicht anmelden.

    ------------edit --------------

    wenn ich die msql Datei anders exportiere klappt es,

    https://contao.org/de/manual/3.0/ins...ation-umziehen

    Ich kann es leider nicht reproduzieren, wenn ich eine Kopie von meinem localen CMS machen möchte kommen Fehlermeldungen ala Warning: mysqli::real_escape_string(): Couldn't fetch mysqli in …/system/modules/core/library/Contao/Database/Mysqli/Statement.php on line 48

    Ich werde jetzt mal versuchen die gleichen mysql versionen wie auf dem Server local zu installieren.

    Server : MySQL-Client-Version: 5.1.69 local MySQL-Client-Version: 5.5.31 phpmyadmin ist auch nich tder selbe.
    Geändert von joe.schraube (08.06.2013 um 02:54 Uhr)

  8. #8
    Contao-Urgestein
    Registriert seit
    10.07.2010.
    Beiträge
    4.403
    User beschenken
    Wunschliste

    Standard

    …/system/modules/core/library/Contao/Database/Mysqli/Statement.php on line 48
    Versuchs doch einfach mal mit MySQL bei den Datenbankeinstellungen in der contao/install.php. Du versuchst vermutlich eine Verbindung via MySQLi herzustellen?!
    Oder guck mal in die /system/localconfig.php da siehst Du auch mit was die Verbindung zu SQL hergestellt wird.

  9. #9
    Contao-Nutzer Avatar von joe.schraube
    Registriert seit
    22.04.2012.
    Ort
    Dresden
    Beiträge
    81

    Standard

    ja also was ich versuche ist die Anleitung auf der Contaowebseite umzusetzen, doch es scheint mit den unterschiedlichen Versionen von mysql-server und oder phpmyadmin Probleme zu geben. Die älteren Versionen zu installieren die ich auf dem Server habe ist leider auch kein Kinderspiel. Trau ich mich erstmal nicht so recht.

    merkwürdigerweise hat es einmal so geklappt und schlägt jetzt immer fehl

    in meiner contao/install.php steht

    Code:
    /**
    	 * Set up the database connection
    	 */
    	protected function setUpDatabaseConnection()
    	{
    		$strDrivers = '';
    		$arrDrivers = array();
    
    		if (function_exists('mysql_connect'))
    		{
    			$arrDrivers[] = 'MySQL';
    		}
    		if (class_exists('mysqli', false))
    		{
    			$arrDrivers[] = 'MySQLi';
    		}
    
    		foreach ($arrDrivers as $strDriver)

    in der localconfig.php steht

    Code:
    ### INSTALL SCRIPT START ###
    $GLOBALS['TL_CONFIG']['licenseAccepted'] = true;
    $GLOBALS['TL_CONFIG']['dbDriver'] = 'MySQLi';
    $GLOBALS['TL_CONFIG']['dbHost'] = 'localhost';
    ### INSTALL SCRIPT STOP ###

    Das steht aber genau so auch in der frischen Contao 3.0 Instalation die ich hier local zu testzwecken eingerichtet habe und die problemlos läuft.

    was ist mysqli ?
    doch woher kommt das ? habe kein MySQLi ausgewäht .... bewusst beim db Export oder so etwas.

    Ich versuche da jetzt mal MySQL reinzuschreiben aber gefühlsmässig fische ich da immer noch im trüben. Doch so neben bei wird mir klar das das locale Testen mit jüngeren Versionen von mysql und php eine recht gute Vorbereitung für das Update des Servers ist. Wenn es hier alles läuft kann ich dort sicherer ein Update wagen.


    nach dem Edit von MySQLi > MySQl sind 2 Fehlermeldunge weg es bleibt :


    Code:
    Fatal error: Uncaught exception Exception with message Query error: No database selected (SELECT tl_page.* FROM tl_page WHERE tl_page.type='root' AND (tl_page.dns='localhost' OR tl_page.dns='') AND (tl_page.language IN('de','en') OR tl_page.fallback=1) AND (tl_page.start='' OR tl_page.start<1370671635) AND (tl_page.stop='' OR tl_page.stop>1370671635) AND tl_page.published=1 ORDER BY tl_page.dns DESC, FIND_IN_SET(tl_page.language, 'en,de') DESC, tl_page.sorting LIMIT 0,1) thrown in …/system/modules/core/library/Contao/Database/Statement.php on line 317
    
    #0 …/system/modules/core/library/Contao/Database/Statement.php(261): Contao\Database\Statement->query()
    #1 …/system/modules/core/library/Contao/Model.php(558): Contao\Database\Statement->execute('localhost')
    #2 …/system/modules/core/library/Contao/Model.php(426): Contao\Model::find(Array)
    #3 …/system/modules/core/models/PageModel.php(98): Contao\Model::findOneBy(Array, 'localhost', Array)
    #4 …/system/modules/core/classes/Frontend.php(326): Contao\PageModel::findFirstPublishedRootByHostAndLanguage('localhost', Array)
    #5 …/index.php(68): Contao\Frontend::getRootPageFromUrl()
    #6 …/index.php(411): Index->run()
    #7 {main}
    und wenn ich das http://localhost/entheo1/contao/install.php skript aufrufe kommt

    Keine Verbindung zur Datenbank vorhanden! alle Einträge sind aber korekt. Ich werde auch mal versuchen mittels

    mysqldump -u username -p database_name > dump.sql zu ex - und importieren, dann wäre mal phpmyadmin noch aus dem Spiel. geht erst heute Nacht wieder in Asien ist der Sa der Sonntag und das Netz ist gerade extrem langsamm bis nicht mehr vorhanden......
    Geändert von joe.schraube (08.06.2013 um 07:34 Uhr)

  10. #10
    Contao-Urgestein
    Registriert seit
    10.07.2010.
    Beiträge
    4.403
    User beschenken
    Wunschliste

    Standard

    Keine Verbindung zur Datenbank vorhanden! alle Einträge sind aber korekt...
    Wen dem so wäre käme aber auch nicht die Meldung dass Du keine DB ausgewählt hast?!
    ...No database selected...
    Apropos ... install.php schreibt die Einstellungen nach localconfig.php es ist also nicht nötig dass Du da drin händisch ändern musst (MySQL & MsQLI kannst Du da auswählen).

    Wenn Du wissen willst was bei dir auf dem PC aktiviert ist dann mach dir eine info.php mit dem Befehl:
    PHP-Code:
    <?php
    echo phpinfo();
    ?>
    drin. Dann siehst Du ob php generell läuft und z.Bsp. ob bei dir MySQLi auch aktiviert ist.

    Und noch zu Deiner Info (Weil Dein Internet so langsam ist hab ich für Dich gegoogelt)
    Zitat Zitat von Wikipedia
    MySQLi
    From Wikipedia, the free encyclopedia
    The MySQLi Extension (MySQL Improved) is a relational database driver used in the PHP programming language to provide an interface with MySQL databases.
    MySQLi is an improved version of the older PHP MySQL driver, offering various benefits.[1]
    The developers of the PHP programming language recommend using MySQLi when dealing with MySQL server versions 4.1.3 and newer (takes advantage of new functionality).[1]

Aktive Benutzer

Aktive Benutzer

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)

Lesezeichen

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •