mysqlのインストール方法の紹介です。Yumリポジトリを使ったインストールはバージョン5.7です。ソースからのインストールはバージョン5.5になります。

Yum(dnf)リポジトリを使用してMySQLインストール

yum リポジトリを追加

リポジトリを追加します。インストールするOSに合わせて追加してください。(Fedora26の場合)
[root@localhost ~]# dnf install -y http://repo.mysql.com/mysql57-community-release-fc26-10.noarch.rpm

Mysqlリポジトリページ
http://dev.mysql.com/downloads/repo/

インストール

[root@localhost ~]# dnf install mysql-community-server

インストールの確認
[root@localhost ~]# rpm -qa | grep mysql
mysql-community-server-5.7.21-1.fc26.x86_64
mysql-community-client-5.7.21-1.fc26.x86_64
mysql57-community-release-fc26-10.noarch
mysql-community-libs-5.7.21-1.fc26.x86_64
mysql-community-common-5.7.21-1.fc26.x86_64

バージョンの確認
[root@localhost ~]# mysql –version
mysql Ver 14.14 Distrib 5.7.21, for Linux (x86_64) using EditLine wrapper

起動

起動コマンド
[root@localhost ~]# systemctl start mysqld.service

停止コマンド
[root@localhost ~]# systemctl stop mysqld.service

自動起動
[root@localhost ~]# systemctl enable mysqld.service

自動起動の確認
[root@localhost ~]# systemctl list-unit-files |grep mysqld
mysqld.service enabled

mysqlにログインする

ログインコマンド
[root@localhost ~]# mysql -u root -p

インストール時のパスワードは、ログファイルに記載されてます。
[root@localhost ~]# cat /var/log/mysqld.log | grep password
2018-02-25T07:29:59.254011Z 1 [Note] A temporary password is generated for root@localhost: (パスワード)

パスワードの変更

mysqlの初期設定では、パスワードポリシーが「MEDIUM」のため、新規パスワードには、大文字、小文字、数字、記号の複合ワードになります。
以前のパスワードデータを引き継ぐ時は、パスワードが上記の条件を満たいしていないとエラーになります。パスワードポリシーを変更した上でパスワードを設定してください。

mysql> UPDATE user SET authentication_string=password(‘新パスワード’) WHERE user=’root’;

パスワードポリシーの変更

パスワードポリシーの確認
mysql> show variables like ‘validate_password%’;
mysql5.7インストール時のパスワード変更前

パスワードポリシーの変更
mysql> set global validate_password_policy=LOW;

パスワードの文字数変更
mysql> set global validate_password_length=4;
mysql5.7インストール時のパスワード変更後

その他

mysqlの初期化
[root@localhost ~]# rm -Rf /var/lib/mysql/
[root@localhost ~]# mysqld –user=mysql –initialize

mysqlの初期化は最終手段です。データをバックアップした上で行ってください。
操作手順は、データを削除してmysqldコマンドを実行しましす。
mysql_install_db(昔の方法)では無いので、注意してください。

MySQLをソースからインストール

Mysql-5.5系をソースからインストールする方法の紹介です。 Mysqlインストールしようとしたとき、「configure」ファイルがなかったので、少し焦りました。調べてみると、「cmake」が必要になります。インストールしていない場合は、「cmake」をインストールしてください。

1. 「cmake」の確認とインストール
[root@localhost ~]# rpm -qa | grep cmake
(↓結果)
cmake-2.8.2-3.fc14.x86_64

インストールさせていない場合は、「yum」でインストール
[root@localhost ~]# yum install cmake

1-2. 「ncurses」のインストール
[root@localhost ~]# yum install ncurses ncurses-devel

2. mysqlユーザーの作成
[root@localhost ~]# groupadd mysql
[root@localhost ~]# useradd mysql -g mysql -M -s /sbin/nologin
↓uid gidを指定して作成する場合
[root@localhost ~]# groupadd mysql -g 27
[root@localhost ~]# useradd mysql -u 27 -g 27 -M -s /sbin/nologin
uidを指定しないでユーザーを作成したとき、ログイン時に「mysql」ユーザーが表示される場合があります。もし、気になる方は、uidを指定してユーザーの作成をしてください

3. mysql本体のインストール
 cmakeでのインストール作業は、「configure」の時とコンパイルの引数が違うので注意してください。

[root@localhost src]# tar zxvf mysql-5.5.10.tar.gz
[root@localhost src]# cd mysql-5.5.10
[root@localhost mysql-5.5.10]# cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_EXTRA_CHARSETS=all -DWITH_PIC=1

//eucでインストールする場合
[root@localhost mysql-5.5.10]# cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DDEFAULT_CHARSET=ujis -DDEFAULT_COLLATION=ujis_japanese_ci -DWITH_EXTRA_CHARSETS=all -DWITH_PIC=1

[root@localhost mysql-5.5.10]# make
[root@localhost mysql-5.5.10]# make install

(メモ)
 MySQLのconfigure時に–with-picを指定するとgccに”-fPIC”フラグが渡されてMySQLの静的ライブラリが再配置可能になり、他の共有オブジェクトへのリンクが可能となります。

3. mysql設定
[root@localhost mysql]# cd /usr/local/mysql/
[root@localhost mysql]# chown -R mysql:mysql /usr/local/mysql
[root@localhost mysql]# chmod -R 777 /usr/local/mysql/data

データベースの初期化
 mysqlインストールしたフォルダ内で「mysql_install_db」を実行する
[root@localhost mysql]# /usr/local/mysql/
[root@localhost mysql]# ./scripts/mysql_install_db

(注意) 
my.cnfファイルを先に作成するとエラーになるときがあります。
mysqlをインストールしたフォルダーで実行しなと下記のエラーになります。
FATAL ERROR: Could not find ./bin/my_print_defaults

起動ファイルの作成
[root@localhost mysql]# cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld

mysqlの起動とログイン
[root@localhost mysql]# /etc/init.d/mysqld start
[root@localhost mysql]# /usr/local/mysql/bin/mysql -u root -p

4. mysqlの初期起動設定
[root@localhost mysql]# chkconfig mysqld on
[root@localhost mysql]# chkconfig –list | grep mysqld
mysqld 0:off 1:off 2:on 3:on 4:on 5:on 6:off

(過去の作業)
 mysqlを「configure」でインストールするときは、「mysqlのインストールと初期設定(OS:CentOS 64bitにて)」に記載しているので、こちらを参考にしてください。

(参考サイト)
http://d.hatena.ne.jp/masudaK/20110224/1298548611
http://www.terut.net/?p=364

(失敗談
 以下のような「cmake」文でコンパイルしたとき、
[root@localhost mysql-5.5.10]# cmake . -DDEFAULT_CHARSET=utf8 -DCMAKE_INSTALL_PREFIX=/usr/local/mysql

mysqlをエラー起動時に以下のようなエラーが出ました。
Starting MySQL. ERROR! The server quit without updating PID file (/usr/local/mysql/data/localhost.localdomain.pid)

mysqlの起動時のログを見ると、文字コードの設定に問題があったので上記のようにコンパイルしなをしました。(↓ログファイル)
[root@localhost mysql]# tail -n 50 /usr/local/mysql/data/localhost.localdomain.pid

(失敗談 その2)
 mysqlを起動するときに下記のエラーが起きました。対策として、my.cnfファイルの変更で対応しました。
Starting MySQL.The server quit without updating PID file (/var/lib/mysql/localhost.localdomain.pid).

[root@localhost mysql]# vi /etc/my.cnf
#datadir=/var/lib/mysql
#socket=/var/lib/mysql/mysql.sock

datadir=/usr/local/mysql/data
socket=/tmp/mysql.sock