mysqlのバージョンを5.1から5.7にするには少し面倒で、直接バージョンアップをすることができません。まず5.1から5.6にして、そこから5.7にするという手順が必要です。
- mysql5.1 → mysql5.6
- mysql5.6 → mysql5.7
実際にこれをやってみます。
確認環境
- Centos6.1
- mysql5.1
mysqlのバージョンを確認
次にosのバージョンを確認
CentOS release 6.10 (Final)
さて、当然ダンプしましょう。保存場所はお好きなように。ちなみに、mysqlを削除してもサーバーの中のmysqlデータは消えません。パソコンからエクセルをアンインストールしても、エクセルのデータは消えないのと同じです。
DBをとめます。サヨナラmysql
Stopping mysqld:
いったんmysqlを消しましょう。今度こそ本当にさよなら。
もういったんmysqlをyumに追加、インストールしなおす準備。サヨナラした後さっそく再会。
mysql5.6を有効にしよう
#yum-config-manager –enable mysql56-community
もう一回mysqlをインストール。もちろん5.6です。
いったんmysqlを起動しましょう。
いったんバージョン確認をする、ちゃんと5.6になっていますね。
そして、もういっかいmysqlを停止します。サヨナラ。
面倒だけどもういっかいmysqlを消す。そうしないとできないので仕方ないです。
rpmリポジトリをyumに追加します。
5.7を有効にしましょう。
#yum-config-manager –enable mysql57-community-dmr
再度mysqlをインストールします。
待望のmysql5.7をやっと起動と思いきや
oh my god
なぜかfailed
しかーし、大丈夫です
safeモードで起動しましょう
するとsafeモードで動いているのが分かります。
そこですかさずupgradeしましょう。あと少し。
この間、データ量に応じて処理が進みます。その後通常モードでmysql起動しましょう。お疲れ様でした。
safeモードで起動すらできない場合
safeモードで起動する際、それすらできない場合はディレクトリを作成しましょう。ちゃんとログを見るのが大事です。エラーメッセージが出ているから面倒がらずに読むだけ。
#sudo chown mysql:mysql /var/run/mysqld
Ruby on Railsの場合のおまけ
mysqlをRuby on Railsから使用している場合、5.1から5.7にするとgemのバージョンアップが必要となります。gemのmysqlをバージョンアップ
# gem install mysql2
大抵はこれで動くと思いますが、お使いのアプリの仕様に準じて対応しましょう。