I have tried everything to install MariaDB on this clean Ubuntu installation but I keep getting this error,
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.
I have followed this guide to try and install it,
http://www.unixmen.com/install-lemp-server-nginx-mysql-mariadb-php-ubuntu-13-10-server/
And I have also followed the "official" guide on the MariaDB downloads page for 13.10
https://downloads.mariadb.org/mariadb/repositories/
But nothing seems to be working.
Edit 1
I have tried both How do I resolve unmet dependencies after adding a PPA? and How to install MariaDB? but it still gives me the error I posted above.
It's a fresh Ubuntu install with hardly anything installed.
Edit 2
All the check boxes are ticket in Updates. I ran:
sudo apt-get update && sudo apt-get -f install mariadb-server-5.5"=5.5.33a+maria-1~saucy"
And it gave me this error:
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.
Best Answer
See Version Mismatch between Mariadb and Ubuntu Debian Repositories
This is the situation as of this writing, since the version numbers are shown as:
The MariaDB page gives two solutions.
First solution: Specifying the package version
which is
NOTE: Update to 5.5.34 to reflect current version as of 2014.01.28 [RealPariah] After installation, you need to hold the packages until the version numbers get back in sync.
How do I know when the version numbers match again?
You can track the MariaDB version number by signing up for an email alert of new releases at MariaDB.org. According to the site, it is a
low-traffic announce-only list
.Additionally, when the package versions are once again in sync, you should stop seeing a message in apt that only the 2 held packages will be held, but that all mariadb packages will be held:
This indicates the package numbers are back in sync, which can also be checked in synaptic or similar tools.
Second solution: Pinning the MariaDB Repository
Replace
<mirror-domain>
with the domain name of the MariaDB mirror you use. For example,ftp.osuosl.org
. With the pin file in place, packages from your MariaDB repository will have priority over packages from the system repositories.You can find the mirror name you are using in System Settings >> Software & Updates, or if you are using another flavor of Ubuntu, Synaptic >> Settings >> Repositories, or
cat /etc/apt/sources.list
.The
Pin-Priority
in this case needs to be greater than or equal to 1000, whichcauses a version to be installed even if this constitutes a downgrade of the package
(See
man 5 apt_preferences
for more information on options in other cases.)Naming the pinning preferences file
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...
(Source:
man 5 apt_preferences
)So, the name itself doesn't matter, but a good name would be something like
50_mariadb
. This identifies the package involved and allows other pinning preferences files to be easily placed before of after this file in the processing order.