Qiita Teams that are logged in
You are not logged in to any team

Log in to Qiita Team
Community
OrganizationAdvent CalendarQiitadon (β)
Service
Qiita JobsQiita ZineQiita Blog
Help us understand the problem. What is going on with this article?

パッケージ mysql-server は利用できません。 というエラーについて

こんにちは! 
独学でRailsアプリを作成し、AWS EC2上に手動でデプロイしたとき想像以上に大変だったので、出会った主なエラーとその解決方法を複数の記事に分けて記します。同じ様にエラーで悩んでいる方にとって参考になれば幸いです。

環境

ローカル環境
・Ruby 2.7.2
・Ruby on Rails 6.0.3
・MySQL 8.0.2
EC2上の環境
・OS:Amazon Linux 2

今回はこの記事を参考にデプロイしました。
https://hackmd.io/4_1NYUTBSaSsOC8cur7WhA?view

事象

EC2インスタンスにSSH通信でログインし以下のコマンドでパッケージをインストールしました。

$ sudo yum -y install git make gcc-c++ patch openssl-devel libyaml-devel libffi-devel libicu-devel libxml2 libxslt libxml2-devel libxslt-devel zlib-devel readline-devel mysql mysql-server mysql-devel ImageMagick ImageMagick-devel epel-release sqlite sqlite-devel

パッケージのインストールが進んでいく中ログの中に気になるメッセージがありました。

 パッケージ mysql-server は利用できません。

どういうことでしょうか。このままではMySQLを使うことができないことは自分でも理解できました。

解決方法

原因を突き止めるべく調べてみると、どうやらEC2インスタンスにはデフォルトでMariaDBが入っており、それと競合することからこのメッセージが出たということがわかりました。
つまり、MariaDBを削除すればMySQLがインストールできるのではないかと考え、以下のコマンドを実行しました。

$ sudo yum remove mariadb-libs
$ rm -rf /var/lib/mysql/
$ sudo yum localinstall http://dev.mysql.com/get/mysql57-community-release-el7-7.noarch.rpm
$ sudo yum -y install mysql-community-server

手順としては以下の通りです。
①MariaDBライブラリ
②データフォルダの削除
③MySQL公式のyumリポジトリの追加
④MySQLのインストール

そしてバージョン確認のコマンドを実行して、正常に出力されれば成功です。

$ mysqld --version

最後までお読みいただきありがとうございました。

参考

https://weblabo.oscasierra.net/installing-mysql57-centos7-yum/
https://qiita.com/riekure/items/d667c707e8ca496f88e6

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away