Ich habe alles versucht, um MariaDB auf dieser sauberen Ubuntu-Installation zu installieren, aber ich erhalte immer wieder diesen Fehler.
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:
The following packages have unmet dependencies:
mariadb-server : Depends: mariadb-server-5.5 (= 5.5.33a+maria-1~saucy)
but it is not going to be installed
E: Unable to correct problems, you have held broken packages.
Ich habe diese Anleitung befolgt, um zu versuchen, sie zu installieren: http://www.unixmen.com/install-lemp-server-nginx-mysql-mariadb-php-ubuntu-13-10-server/
Und ich habe auch den "offiziellen" Leitfaden auf der MariaDB-Downloadseite für 13.10 https://downloads.mariadb.org/mariadb/repositories/ befolgt.
Aber nichts scheint zu funktionieren.
Bearbeiten 1
Ich habe beide ausprobiert. Wie löse ich nicht erfüllte Abhängigkeiten nach dem Hinzufügen einer PPA auf? und wie installiere ich MariaDB? aber es gibt mir immer noch den Fehler, den ich oben gepostet habe.
Es ist eine neue Ubuntu-Installation, auf der kaum etwas installiert ist.
Bearbeiten 2
Alle Kontrollkästchen sind Tickets in Updates. Ich rannte:
sudo apt-get update && sudo apt-get -f install mariadb-server-5.5"=5.5.33a+maria-1~saucy"
Und es gab mir diesen Fehler:
The following packages have unmet dependencies:
mariadb-server-5.5 : Depends: mariadb-client-5.5 (>= 5.5.33a+maria-1~saucy)
but it is not going to be installed
Depends: mariadb-server-core-5.5 (>= 5.5.33a+maria-1~saucy)
but it is not going to be installed
E: Unable to correct problems, you have held broken packages.
quelle
sudo apt-get update && sudo apt-get -f install mariadb-server-5.5"=5.5.33a+maria-1~saucy"
Stellen Sie sicher , dass Sie alle abgehakt haben Kontrollkästchen unter Updates Registerkarte in Softwarequellen . So überprüfen Sie die Ausführung:sudo software-properties-gtk
Öffnen Sie die Softwarequellen . Wenn Sie einen Fehler / eine Meldung in dem oben erwähnten Befehl erhalten, posten Sie ihn in Ihrer Frage.sudo apt-get -f install mariadb-server-5.5"=5.5.33a+maria-1~saucy mariadb-client-5.5"=5.5.33a+maria-1~saucy" mariadb-server-core-5.5"=5.5.33a+maria-1~saucy"
Fangen Sie das Muster ab, was ich tue. Wenn Sie also weitere zu installierende Pakete erhalten, müssen Sie diese in dieselbe Zeile einfügen, in der Sie demselben Muster folgen. Ich weiß, dass es schwierig sein würde, aber ich hoffe, es würde Ihnen helfen. Antworten.libmariadbclient18 : Depends: libmysqlclient18 (= 5.5.33a+maria-1~saucy) but 5.5.34-0ubuntu0.13.10.1 is to be installed
Antworten:
Siehe Versionsinkongruenz zwischen Mariadb- und Ubuntu-Debian-Repositorys
Dies ist zum jetzigen Zeitpunkt der Fall, da die Versionsnummern wie folgt angezeigt werden:
Die MariaDB-Seite bietet zwei Lösungen.
Erste Lösung: Angabe der Paketversion
welches ist
HINWEIS: Aktualisieren Sie auf 5.5.34, um die aktuelle Version vom 28.01.2014 widerzuspiegeln. [RealPariah] Nach der Installation müssen Sie die Pakete aufbewahren, bis die Versionsnummern wieder synchronisiert sind.
Woher weiß ich, wann die Versionsnummern wieder übereinstimmen?
Sie können die Versionsnummer von MariaDB verfolgen, indem Sie sich bei MariaDB.org für eine E-Mail-Benachrichtigung über Neuerscheinungen anmelden . Laut der Website ist es ein
low-traffic announce-only list
.Wenn die Paketversionen wieder synchronisiert sind, sollte außerdem keine Meldung in apt angezeigt werden, dass nur die 2 gehaltenen Pakete gehalten werden, aber dass alle Mariadb-Pakete gehalten werden:
Dies zeigt an, dass die Paketnummern wieder synchron sind, was auch in synaptischen oder ähnlichen Tools überprüft werden kann.
Zweite Lösung: Fixieren des MariaDB-Repositorys
Ersetzen Sie
<mirror-domain>
durch den Domainnamen des von Ihnen verwendeten MariaDB-Spiegels. Zum Beispielftp.osuosl.org
. Wenn die PIN-Datei vorhanden ist, haben Pakete aus Ihrem MariaDB-Repository Vorrang vor Paketen aus den System-Repositorys.Sie finden den Spiegelnamen, den Sie verwenden, unter Systemeinstellungen >> Software & Updates oder wenn Sie eine andere Ubuntu- Variante verwenden , Synaptic >> Einstellungen >> Repositorys oder
cat /etc/apt/sources.list
.Die muss
Pin-Priority
in diesem Fall größer oder gleich 1000 sein, wascauses a version to be installed even if this constitutes a downgrade of the package
(
man 5 apt_preferences
Weitere Informationen zu Optionen in anderen Fällen finden Sie unter.)Benennen der Pinning-Voreinstellungsdatei
Note that the file in the /etc/apt/preferences.d directory are parsed in alphanumeric ascending order and need to obey the following naming convention:
The files have either no or "pref" as filename extension and only contain alphanumeric, hyphen (-), undescore (_), and period (.) characters. Otherwise APT will print a notice that it has ignored a file...
(Quelle:
man 5 apt_preferences
)Der Name selbst spielt also keine Rolle, aber ein guter Name wäre so etwas wie
50_mariadb
. Dies identifiziert das betroffene Paket und ermöglicht das einfache Platzieren anderer Pinning-Voreinstellungsdateien vor oder nach dieser Datei in der Verarbeitungsreihenfolge.quelle
Ich hatte ein ähnliches Problem bei der Aktualisierung von Ubuntu 14.10 von MySQL auf Maria DB. Ich würde nämlich stecken bleiben
Nachdem ich diesen Vorschlägen vergeblich gefolgt war , hat mir Folgendes sehr geholfen: So ersetzen Sie MySQL durch MariaDB in Ubuntu Server von JournalXtra.
Bearbeiten Sie / var / lib / dpkg / status und entfernen Sie die beiden Instanzen von libmysqlclient18 wie folgt:
MySQL ist ein schneller, stabiler und echter SQL-Datenbankserver mit mehreren Benutzern und mehreren Threads. SQL (Structured Query Language) ist die weltweit beliebteste Datenbankabfragesprache. Die Hauptziele von MySQL sind Geschwindigkeit, Robustheit und Benutzerfreundlichkeit. . Dieses Paket enthält die Client-Bibliothek. Homepage: http://dev.mysql.com/ Original-Maintainer: Debian MySQL Maintainer
Erlaubte mir, MariaDB danach reibungslos zu installieren.
Hinweis : Ich bin nach vielen Versuchen, libmariadbclient18 und libmysqlclient18 zu entfernen, hierher gekommen, bevor diese Lösung funktioniert hat. Ich konnte apt-get-Probleme nicht überwinden, bis diese beiden entfernt wurden, da sie als defekte Pakete gemeldet wurden, bevor ich eine andere Reparatur versuchen konnte.
quelle