Centos7でmysql のインストールとインストール時のエラー対処

  • 68
    いいね
  • 1
    コメント
この記事は最終更新日から1年以上が経過しています。

環境

centos7
mysql5.6

事前準備

mariadbの削除

centos7からはmariaDBがデフォルトで入っています。
このDBはmysqlと互換性がありますが、どちらもインストールすると競合を起こすため、mysqlを使用する場合はmariaDBをアンインストールします。

# yum remove mariadb-libs

別バージョンのデータの確認

別バージョンのmysqlを使用していた場合、そのデータが残っている可能性があるため、以下のコマンドで初期化します。

# rm -rf /var/lib/mysql/

mysqlインストール

リポジトリ設定パッケージのダウンロード

RPM Bundleのダウンロードページ
から、mysqlのリポジトリをDL、展開します。
ページ下部にログイン不要の No thanks, just start my download. のリンクが用意してあるので、このリンク先URLをコピーして、下記のようにwget、インストールを行います。

$ wget http://dev.mysql.com/get/Downloads/MySQL-5.6/MySQL-5.6.25-1.el7.x86_64.rpm-bundle.tar
# rpm -Uvh mysql-community-release-el7-5.noarch.rpm

インストール

リポジトリのインストールが済んだら、mysqlのインストールを行います。

# yum install mysql-community-server

インストール後の確認

mysqlがインストールされたか、確認します。
バージョン情報が表示されればインストールが完了しています。

バージョンの確認

$ mysqld -V

自動起動確認、自動起動設定

自動起動設定が有効になっているか確認します。

# systemctl is-enabled mysqld.service

enabledなら自動起動する、disabledなら自動起動しない設定になっています。

自動起動したい場合、以下のコマンドを実行します。

# systemctl enable mysqld.service

文字コード変更

デフォルトの文字コードをutf8にします。
/etc/my.cnf ファイルの末尾に、文字コードの設定情報を追記します。

# vim /etc/my.cnf
# 最終行に追加する設定値
character_set_server=utf8
skip-character-set-client-handshake

各種エラー対処

依存関係エラーの解消

インストール時に依存パッケージがないエラーが出る場合があります。

error Failed dependencies: ~

Failed dependencies: ~ の~部分に必要な依存パッケージ名が表示されているので、それをもとにインストールすることで解決します。

# yum install パッケージ名

ソケットエラーの解消

ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock'

指定の場所にsocketファイルがあるか確認します。

$ ls -al /var/lib/mysql/

ない場合は作成します。

# touch /var/lib/mysql/mysql.sock

ディレクトリ所有者を変更し、再起動します。

# chown mysql:mysql /var/lib/mysql
# systemctl restart mysqld