Installationsprobleme bei Hosteurope

Gesperrt
DerEineDa
Beiträge: 17
Registriert: Mi 30. Nov 2005, 17:31
Kontaktdaten:

Beitrag von DerEineDa »

Ich bekomme eine ähnliche Fehlermeldung:

Kann keine Tabellen in der gewählten MySQL-Datenbank anlegen
Setup hat versucht, eine Testtabelle in der Datenbank db1028779-Content anzulegen und ist gescheitert. Bitte weisen Sie ihrem Datenbankbenutzer entsprechende Rechte zu, oder fragen Sie einen Administrator.
Bin aber bei Hosteurope und die Zugangsdaten sind auch 100%ig richtig. Gibt es keinen Workaround?
Halchteranerin
Beiträge: 5478
Registriert: Di 2. Mär 2004, 21:11
Wohnort: Halchter, wo sonst? ;-)
Kontaktdaten:

Beitrag von Halchteranerin »

DerEineDa hat geschrieben:Bin aber bei Hosteurope
Dann solltest du nicht in einem all-inkl-Thread posten, denn das ist kein Provider-Problem. Dein Problem ist auch irgendwo im Forum beschrieben und ruehrt daher, weil die Datenbanken bei Hosteurope einen Bindestrich im Namen haben. Such und du wirst finden ... Ich weiss naemlich nicht mehr, ob man da irgendwie Abhilfe schaffen konnte, oder ob du da bis zur naechsten Contenido-Version warten musst.
Bitte keine unaufgeforderten Privatnachrichten mit Hilfegesuchen schicken. WENN ich helfen kann, dann mache ich das im Forum, da ich auch alle Postings lese. PN werden nicht beantwortet!
DerEineDa
Beiträge: 17
Registriert: Mi 30. Nov 2005, 17:31
Kontaktdaten:

Beitrag von DerEineDa »

Dann solltest du nicht in einem all-inkl-Thread posten, denn das ist kein Provider-Problem.
Konnte ich ja nicht ahnen :P

Aber danke, ich bemühe mal die Suchfunktion. Wäre aber echt übel wenn das nicht klappt nur weil da n Bindestrich im Datenbanknamen ist.
Louis
Beiträge: 206
Registriert: Mo 27. Okt 2003, 12:28
Kontaktdaten:

Beitrag von Louis »

Bevor ihr euch jetzt hauen wollt hier der Link :wink: http://www.contenido.de/forum/viewtopic.php?t=10069

Es geht definitiv nicht, die 4.6.2 läßt sich bei HostEurope auf den neuen Webpacks (ab 13.12.2004) nicht ohne manuellen Aufwand installieren - auf den alten geht es soweit ich weiß.

PS: In dem gelinkten Thread steht auch nochmal ganz klar, dass es bei allinkl von Server zu Server unterschiedlich ist, offensichtlich läuft nicht überall die gleiche SQL-Version.
Wir können den Wind nicht ändern, aber die Segel anders setzen
(Aristoteles)
DerEineDa
Beiträge: 17
Registriert: Mi 30. Nov 2005, 17:31
Kontaktdaten:

Beitrag von DerEineDa »

Danke für den Link, aber ich habe es bereits gelöst indem ich die entsprechende PHP-Datei selber umgeschrieben habe. Wenn's auf Hosteurope erstmal installiert ist, dann klappt das ohne Probleme.
Louis
Beiträge: 206
Registriert: Mo 27. Okt 2003, 12:28
Kontaktdaten:

Beitrag von Louis »

DerEineDa hat geschrieben:Danke für den Link, aber ich habe es bereits gelöst indem ich die entsprechende PHP-Datei selber umgeschrieben habe. Wenn's auf Hosteurope erstmal installiert ist, dann klappt das ohne Probleme.
War auch mehr der Vollständigkeit halber :wink:

Kannst du die genaue Lösung hier mal posten?

Ich wollte nämlich gerade auch mein neues WP auf 4.6 ziehen und bin vorläufig erstmal gescheitert.....
Wir können den Wind nicht ändern, aber die Segel anders setzen
(Aristoteles)
DerEineDa
Beiträge: 17
Registriert: Mi 30. Nov 2005, 17:31
Kontaktdaten:

Beitrag von DerEineDa »

Nun habe ich voreilig den Setup-Ordner nach der Installation gelöscht, und damit auch meine veränderte Datei ;)

Im Grunde habe ich aber einfach alle MySQL-Checks deaktiviert, indem ich bei den entsprechenden Funktionen direkt TRUE zurückgeben lasse. Ich habe das mal schnell nochmal gemacht und das sollte so klappen, auch wenn ich es nicht getestet habe. Da ich hier im Forum keine Dateien anhängen kann, habe ich es auch mal schnell auf den Webspace bei Hosteurope geladen, wo auch Contenido läuft. Ich werde die Datei aber nicht ewig online lassen :)

http://incotrain.he-hosting.de/contenid ... .mysql.zip

Wie gesagt habe ich alle Überprüfungen ausgeschaltet, also bitte unbedingt selber checken, ob alle Einstellungen richtig sind!

Die PHP-Datei darin bitte in den Ordner /setup/lib/ kopieren und die alte Datei überschreiben (bei Bedarf vorher Backup machen).
Halchteranerin
Beiträge: 5478
Registriert: Di 2. Mär 2004, 21:11
Wohnort: Halchter, wo sonst? ;-)
Kontaktdaten:

Beitrag von Halchteranerin »

ich habe das Thema vom anderen getrennt, da es beim besten Willen nicht zur Ueberschrift mit all-inkl passte!
Bitte keine unaufgeforderten Privatnachrichten mit Hilfegesuchen schicken. WENN ich helfen kann, dann mache ich das im Forum, da ich auch alle Postings lese. PN werden nicht beantwortet!
Louis
Beiträge: 206
Registriert: Mo 27. Okt 2003, 12:28
Kontaktdaten:

Beitrag von Louis »

Halchteranerin hat geschrieben:ich habe das Thema vom anderen getrennt, da es beim besten Willen nicht zur Ueberschrift mit all-inkl passte!
Stimmt.

Habe bei HE im Forum noch einen Lösungsansatz gefunden:
tk hat geschrieben:Einfach in der Datei setup/lib/functions.mysql.php in den Zeilen 66 und 91 Backticks jeweils um die Variable $database ergänzen, also '$db->query("CREATE DATABASE `$database`");' bzw. '$db->query("USE `$database`");' schreiben und schon läuft das Setup anstandslos durch.
@DerEineDa: danke für die Datei, ich probier's mal aus.
Zuletzt geändert von Louis am So 4. Dez 2005, 13:18, insgesamt 2-mal geändert.
Wir können den Wind nicht ändern, aber die Segel anders setzen
(Aristoteles)
Louis
Beiträge: 206
Registriert: Mo 27. Okt 2003, 12:28
Kontaktdaten:

Beitrag von Louis »

Soooo, etwas später als erwartet die Testergebnisse:

[edit]
Der Tip aus dem HE-Forum hat im ersten Anlauf nicht geklappt, später aber doch - keine Ahnung warum, muss wohl am Wetter liegen.....
So sieht die setup/lib/functions.mysql.php Zeile 59-99 bei mir jetzt aus

Code: Alles auswählen

function checkMySQLDatabaseCreation ($db, $database)
{
	if (checkMySQLDatabaseExists($db, $database))
	{
		return true;
	} else {

		$db->query("CREATE DATABASE `$database`");

		if ($db->Errno != 0)
		{
			return false;
		} else {
			return true;
		}
	}
}

function checkMySQLDatabaseExists ($db, $database)
{
	$db->query("SHOW DATABASES LIKE '$database'");

	if ($db->next_record())
	{
		return true;
	} else {
		return false;
	}
}

function checkMySQLDatabaseUse ($db, $database)
{
	$db->query("USE `$database`");

	if ($db->Errno == 0)
	{
		return true;
	} else {
		return false;
	}
}
Wer sich traut die ganzen DB-Prüfungen zu umgehen kann natürlich auch alle Prüfungen pauschal auf TRUE setzen, dann sieht die Datei wie folgt aus (Änderungen von DerEineDa):
[/edit]

Code: Alles auswählen

<?php

function hasMySQLExtension ()
{
	if (isPHPExtensionLoaded("mysql") == E_EXTENSION_AVAILABLE)
	{
		return true;	
	} else {
		return false;	
	}
}

function hasMySQLiExtension ()
{
	if (isPHPExtensionLoaded("mysqli") == E_EXTENSION_AVAILABLE)
	{
		return true;	
	} else {
		return false;	
	}
}

function doMySQLConnect ($host, $username, $password)
{
	$db = new DB_Contenido($host, "", $username, $password);
	
	if ($db->connect() == 0)
	{
		return array($db, false);
	} else {
		return array($db, true);	
	}
}

function fetchMySQLVersion ($db)
{
	$db->query("SELECT VERSION()");
	
	if ($db->next_record())
	{
		return $db->f(0);			
	} else {
		return false;	
	}	
}

function fetchMySQLUser ($db)
{
	$db->query("SELECT USER()");
	
	if ($db->next_record())
	{
		return ($db->f(0));	
	} 	 else {
		return false;	
	}
}

function checkMySQLDatabaseCreation ($db, $database)
{
	return true;	
}

function checkMySQLDatabaseExists ($db, $database)
{
	return true;	
}

function checkMySQLDatabaseUse ($db, $database)
{
	return true;
}

function checkMySQLTableCreation ($db, $database, $table)
{
	return true;
}

function checkMySQLLockTable ($db, $database, $table)
{
	return true;
}

function checkMySQLUnlockTables ($db, $database)
{
	return true;
}

function checkMySQLDropTable ($db, $database, $table)
{
	return true;
}

function checkMySQLDropDatabase ($db, $database)
{
	return true;
}

function fetchMySQLStorageEngines ($db)
{
	$db->query("SHOW ENGINES");
	
	$engines = array();
	
	while ($db->next_record())
	{
		$engines[] = $db->f(0);
	}
	
	return ($engines);
}

?>
Wir können den Wind nicht ändern, aber die Segel anders setzen
(Aristoteles)
dagas
Beiträge: 5
Registriert: Sa 12. Nov 2005, 08:24
Kontaktdaten:

Beitrag von dagas »

Hallo Louis

hatte auch Probleme mit der MySQL installation(Bindesstrich). Habe dein Code ausprobiert und es funktioniert prima.

THX für den Tip :D
DAGAS
Gesperrt