Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

MySQL: Package 'mysql-server' has no installation candidate

This error is being shown whenever I want to install any software via command line. Even if i try to install softwares which I know are present at the source from where I am downloading.

Below is the full error message i am getting :

Reading package lists... Done
Building dependency tree       
Reading state information... Done
Package mysql-server is not available, but is referred to by another package.
This may mean that the package is missing, has been obsoleted, or
is only available from another source

E: Package 'mysql-server' has no installation candidate
like image 288
user3044569 Avatar asked Nov 28 '13 06:11

user3044569


4 Answers

It worked for me.
If you have followed all the previous steps successfully and after running sudo apt-get install mysql-server you are getting an error then try this

    sudo apt-get install mariadb-server

like image 74
Nitish770 Avatar answered Nov 03 '22 07:11

Nitish770


I experienced this issue when trying to install MySQL Server on Debian 10.

Here's how I fixed it:

The issue is caused by the MySQL server apt repository not being included in your system's software repository list. In Debian 10 for example, MariaDB, a community fork of the MySQL project, is packaged as the default MySQL variant.

So to fix this first, add the MySQL server apt repository to your system's software repository list. Follow these steps:

Go to the download page for the MySQL APT repository at:

https://dev.mysql.com/downloads/repo/apt/

Select and download the release package for your Linux distribution. You can use:

sudo wget https://the-download-link

In my case it was:

sudo wget https://dev.mysql.com/get/mysql-apt-config_0.8.15-1_all.deb

Install the downloaded release package with the following command, replacing version-specific-package-name with the name of the downloaded package (preceded by its path, if you are not running the command inside the folder where the package is):

sudo dpkg -i version-specific-package-name.deb

In my case it was:

sudo dpkg -i mysql-apt-config_0.8.15-1_all.deb

Note: dpkg is used to install, remove, and inspect .deb software packages. The -i flag indicates that we’d like to install from the specified file.

During the installation, you’ll be presented with a configuration screen where you can specify which version of MySQL you’d prefer, along with an option to install repositories for other MySQL-related tools. The defaults will add the repository information for the latest stable version of MySQL and nothing else. This is what we want, so use the down arrow to navigate to the Ok menu option and hit ENTER.

The package will now finish adding the repository. Refresh your apt package cache to make the new software packages available:

sudo apt update

Note: If you ever need to update the configuration of these repositories, just run sudo dpkg-reconfigure mysql-apt-config, select new options, and then sudo apt-get update to refresh your package cache.

Install MySQL by the following command:

sudo apt-get install mysql-server mysql-client libmysqlclient-dev

Note: This installs the package for the MySQL server, as well as the packages for the client and for the database common files. During the installation, you are asked to supply a password for the root user for your MySQL installation.

The MySQL server is started automatically after installation. You can check the status of the MySQLserver with the following command:

sudo service mysql status

Stop the MySQL server with the following command:

sudo service mysql stop

To restart the MySQL server, use the following command:

sudo service mysql start

MySQL creates a default user called root. You can change the password to any password of your choice by logging in to MySQL console using socket authentication:

sudo mysql -u root

Then run the command below to change the password

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'your-preferred-password';

Reference:

A Quick Guide to Using the MySQL APT Repository

How To Install the Latest MySQL on Debian 10

That's all.

I hope this helps

like image 23
Promise Preston Avatar answered Nov 03 '22 06:11

Promise Preston


You can install mysql by

sudo apt install default-mysql-server

--------
sudo service mysql status
● mariadb.service - MariaDB 10.3.31 database server
   Loaded: loaded (/lib/systemd/system/mariadb.service; enabled; vendor preset: enabled)
   Active: active (running) since Wed 2022-02-09 13:19:33 +08; 33s ago
     Docs: man:mysqld(8)
           https://mariadb.com/kb/en/library/systemd/
 Main PID: 18537 (mysqld)
   Status: "Taking your SQL requests now..."
    Tasks: 31 (limit: 4915)
   Memory: 73.1M
   CGroup: /system.slice/mariadb.service
           └─18537 /usr/sbin/mysqld
like image 40
Duc Toan Pham Avatar answered Nov 03 '22 05:11

Duc Toan Pham


run: apt install default-mysql-server

which installs MariaDB unfortunately, but still responds to service mysql status

like image 1
Tengiz Avatar answered Nov 03 '22 06:11

Tengiz