Help us understand the problem. What is going on with this article?

Amazon Linux2 にMySQLを入れる際のエラー

AWS EC2インスタンスにLAMP環境構築する際に、MySQLインストールでエラーに詰まったのでメモメモ。

エラーの原因を結論から言えば、AmazonLinux2にはデフォルトでMySQLは用意されておらず、MariaDBがちょこんと居座ってること。そのため対処として公式ページからMySQLをインストールして、MariDB消せばOKである。

前提

  • Amazon Linux 2 AMI (HVM) SSD Volume Type
  • MySQL Ver 14.14 Distrib 5.7.30, for Linux (x86_64) ←これを入れたい

過程と対処

EC2インスタンスにssh接続後、ApacheとPHPをyumインストール。問題なく進み、そのノリでMySQLもインストール。

yum install -y mysql-community-server

ここでNo package mysql-community-server available.とエラーを返される。どうやらパッケージがないらしい。以下で調べてみると確かに無かった。

yum list mysql*

そこで、公式から追加することに(→MySQL Yum Repository)。ただしAmazonLinux2はcentOS7ベースということなので、追加するのはel7を選択。

 yum install http://dev.mysql.com/get/mysql80-community-release-el7-3.noarch.rpm   

ちゃんとリポジトリに追加されてるかを次で確認

yum repolist

mysql80-community-release-el7-3.noarchを確認。使用したいバージョンは5.7なので、5.7を有効化させる必要がある(最新バージョンの8.0のインストールによって旧バージョン5.7のリポジトリもセットでインストールされる)。

vi /etc/yum.repos.d/mysql-community.repo

mysql-communityのレポジトリ設定をいじる。上のコマンドで設定ファイルを開いたらMysql8.0のenabledの欄を0にして、Mysql5.7のenabledの欄を1に変更する。これによってインストールの方向が5.7に向く。

さて、これでyum install mysql-community-serverで解決かと思えば、次は依存関係のエラーが発生。エラー文を確認するとAvailable: 1:mariadb-libsの文字列を数件発見。MariaDB...?

どうやらAmazonLinux2(CentOS7も同様)ではMariaDBがデフォルトで入っており、MySQLインストールの際に邪魔になってしまうらしい。今回はMySQL使いたいので、MariaDBを削除することに。

yum remove mariadb-libs 

これの後にyumインストールしたら無事に解決しました。

参考

CentOS 7にMySQL 5.7をyumでインストール
AWS Amazon Linux2にMySQL5.7を構築する
Amazon Linux2でmysqlを入れようとしたらエラーが出た
パッケージ依存関係を解消する(rpm)

boro1234
lancers
テクノロジーで誰もが自分らしく働ける社会をつくる。日本最大級のクラウドソーシング「ランサーズ」を運営
https://www.lancers.jp/
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
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  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
ユーザーは見つかりませんでした