D8 Serverinstallation lauffähig auf einem Localhost klonen?
am 21.02.2017 - 23:49 Uhr in
Hallo
an welchen Dateien sind Anpassungen erforderlich, um eine funktionierende D8-Serverinstallation lauffähig auf einem Localhost (unter Mamp Pro 3, Mac OSX 9.5) zu installieren? Ich habe die Dateien der Serverinstallation komplett per FTP auf meinen Localhost kopiert, also keine neue D8-Installation.
MySQL habe ich über die settings.php eingebunden; die entsprechenden Benutzer-Privilegien (analog den Einträgen in der setting.php) über myPHPadmin angelegt. Beim Aufruf der lokalen Installation (wahlweise http://webseite oder http://webseite:3308) erhalte ich die Fehlermeldung „Firefox kann keine Verbindung zu dem Server unter webseite:3306 aufbauen“, alternativ „The provided host name is not valid for this server“.
Im mySQL Error-Log finde ich keinen Eintrag. Darum vermut ich, dass die Datenbank überhaupt nicht angeprochen wird.
Lokale Neuinstallationen funktionieren einwandfrei. Aber ich brauche halt eine geklonte Version.
Danke für alle sachdienlichen Rauchzeichen
- Anmelden oder Registrieren um Kommentare zu schreiben
Was hast du angepasst?
am 22.02.2017 - 07:29 Uhr
3306 klingt für mich nach dem Port, unter dem mySQL üblicherweise läuft.
Was steht denn in der Settings-Datei, welche Datenbank wie angesprochen werden soll?
Du schiebst nirgends, dass du die Datenbank geclont hast - ich hoffe, das hast du auch getan,
Grüße
Ronald
Hallo klar, Port 3306 ist
am 22.02.2017 - 19:03 Uhr
Hallo
klar, Port 3306 ist Standardport für mySQL. Die SQL DB habe ich ebenfalls geklont, der Nutzer name ist dort mit allen Rechten eingetragen.
Die mySQL-DB ist in den settings.php wie folgt eingetragen:
$databases['default']['default'] = array (
'database' => 'name',
'username' => 'name',
'password' => 'password',
'prefix' => '', #'drp813_',
'host' => 'localhost',
'port' => '3306',
'namespace' => 'Drupal\\Core\\Database\\Driver\\mysql',
'driver' => 'mysql',
);
$settings['install_profile'] = 'standard';
$config_directories['sync'] = 'sites/default/files/config_rGiNuY***/sync'; #gekürzte Angabe
Habe heute noch einmal die gesamte Installation auf den Localhost geklont. Nun erhalte ich immerhin Fehlermeldungen:
Chrome liefert folgende Fehlermeldung:
The website encountered an unexpected error. Please try again later.
Drupal\Core\Database\DatabaseExceptionWrapper: SQLSTATE[42S02]: Base table or view not found: 1146 Table 'name.sessions' doesn't exist: SELECT session FROM {sessions} WHERE sid = :sid LIMIT 0, 1; Array ( [:sid] => VBiXmPh1dO0-***tqc ) in Drupal\Core\Session\SessionHandler->read() (line 61 of core/lib/Drupal/Core/Session/SessionHandler.php).
Und in der Log-Datei finde ich dann diese Einträge:
PHP Fatal error: Uncaught Error: Call to a member function get() on null in /Users/anwender/Sites/installation/core/lib/Drupal/Core/Session/SessionHandler.php:76
Stack trace:
#0 /Users/anwender/Sites/installation/vendor/symfony/http-foundation/Session/Storage/Handler/WriteCheckSessionHandler.php(89): Drupal\Core\Session\SessionHandler->write('5EINkUXX5vpqmjB...', '')
#1 /Users/anwender/Sites/installation/core/lib/Drupal/Core/Session/WriteSafeSessionHandler.php(75): Symfony\Component\HttpFoundation\Session\Storage\Handler\WriteCheckSessionHandler->write('5EINkUXX5vpqmjB...', '')
#2 /Users/anwender/Sites/installation/vendor/symfony/http-foundation/Session/Storage/Proxy/SessionHandlerProxy.php(77): Drupal\Core\Session\WriteSafeSessionHandler->write('5EINkUXX5vpqmjB...', '')
#3 [internal function]: Symfony\Component\HttpFoundation\Session\Storage\Proxy\SessionHandlerProxy->write('5EINkUXX5vpqmjB...', '')
#4 [internal function]: session_write_close()
#5 {main}
thrown in /Users/anwender/Sites/installation/core/lib/Drupal/Core/Session/SessionHandler.php on line 76
Immer noch ratlos, jetzt aber mit einer ersten Spur ...
Problem gelöst!
am 23.02.2017 - 20:18 Uhr
Die Fehlermeldungen sind wohl teilweise auf "fehlerhafte" Einträge in der mySQL-Datenbank zurückzuführen (ich hatte die HostDB mit falschen Einstellungen exportiert).
Nachdem ich versuchsweise zunächst die Inhalte der Datenbank durch Werte einer funktionierenden lokalen Installation ersetzt und die entsprechenden Berechtigungen in der setting.php angepasst habe, konnte ich die Seite laden, allerdings natürlich mit den Inhalten der lokalen Installation.
Dann habe ich eine frisch geklonte Version der Host DB in mySQL geladen und in der setting.php das Präfix-Kennzeichen wieder aktiviert (das hätte ich nicht deaktivieren dürfen). Jetzt läuft der Klon.
Mögen klügere Mitleser von meinen Fehlern profitieren ;-)