CentOS7(を含む多くのディストリビューション)では、現在はMySQLではなくMariaDBが標準になっています。
しかし、MariaDBではなくMySQLを利用したいケースも依然としてあります。
(MeCab Paserを利用したい場合など)
今回MySQLを使う場面があったので、差し替える方法を覚書き。
1. MariaDBの削除
すでにMariaDBが導入されている場合は消去します。
まずはMariaDBのパッケージを確認。
1 2 3 4 5 6 |
rpm -qa | grep aria MariaDB-client-10.3.0-1.el7.centos.x86_64 MariaDB-compat-10.3.0-1.el7.centos.x86_64 MariaDB-server-10.3.0-1.el7.centos.x86_64 MariaDB-common-10.3.0-1.el7.centos.x86_64 |
すべて削除。
削除されたことを確認。
1 2 3 4 |
sudo yum remove MariaDB-client-10.3.0-1.el7.centos.x86_64 sudo yum remove MariaDB-common-10.3.0-1.el7.centos.x86_64 rpm -qa | grep aria |
関連ライブラリもすべて消します。
1 2 |
sudo rm -rf /var/lib/mysql |
2.MySQLの導入
yumをクリーンした後、リポジトリを取得。
(最新のリポジトリは公式で確認)
mysql-community-source.repoとmysql-community.repoが取得できたことを確認。
1 2 3 4 |
clean all sudo yum localinstall https://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm ls /etc/yum.repos.d | grep mysql |
それぞれインストール。
1 2 3 |
sudo yum install mysql-community-client sudo yum install mysql-community-server |
バージョン確認。
取得したリポジトリと同じバージョンのMysqlが入っていることを確認。
1 2 3 |
mysqld --version mysqld Ver 5.7.20 for Linux on x86_64 (MySQL Community Server (GPL)) |
3.初回起動まで
サービス起動。
エラーが出て起動しない場合はrebootした後、再度MySQLを起動。
1 2 3 4 |
systemctl start mysqld.service systemctl reboot -l systemctl start mysqld.service |
自動生成されたパスワードを確認。
1 2 3 |
cat /var/log/mysqld.log | grep 'temporary password' 2017-11-22T02:46:38.389224Z 1 [Note] A temporary password is generated for root@localhost: hogehogehoge |
これでログインできるはず。
1 2 |
mysql -u root -phogehogehoge |