AWS(Amazon Linux)にMariDBではなくMySQLをインストール

前回に引き続きAmazon Linuxにミドルウェアを入れていきます。
今回はMariaDBです。

ここで、どうしてひとつのインスタンスに何でも入れてしまうのか、ElasticsearchとWebとDBは分けた方がいいんではないかという声も聞こえてきそうですが、経費節減のためです。
それだけです。
自社サービスなので。

インストール

パッケージの確認

パッケージないです・・・ないんです。
前回褒めたのは取り消しです。

MySQLだと、今回は5.7じゃないとダメなんですが、どうでしょうか。

オープンソースをないがしろにするOracleはイヤだったんですけど・・・
rpmを落としてくればMariaDBもインストールできそうですが、何かあった時にデータベースに手間を取られたくないので、素直にMySQLをインストールします。

先にログファイルサイズinnodb_log_file_sizeの設定などを行ってから起動します。
先に起動してしまうと、デフォルトのサイズで作成されるログファイルと異なるためにエラーになって起動できません。
停止してログファイルを削除するなどの手間が発生してしまいます。

さて、その他含めてどのようにチューニングするかはここには記述しません。
詳細に調査された方の記事などがインターネットにたくさんありますので、参考になさってください。

/etc/my.cnfを編集したら、MySQLを起動します。

最終的に起動しましたが、いくつかワーニングが出ています。

エラー対応

行番号3
TIMESTAMP with implicit DEFAULT value is deprecated. Please use –explicit_defaults_for_timestamp server option (see documentation for more details).
TIMESTAMPの暗黙的なデフォルト値は非推奨だと教えてくれています。
正直なところ、何もそのような設定をしていないので、デフォルトでそのデフォルト値を設定しないようにしてほしい。
explicit_defaults_for_timestampを使えとのことなので、
explicit_defaults_for_timestamp = true
とmy.cnfに記述した。

行番号10までは初回起動でいろいろないから作りました、というお知らせのようです。

行番号11
rootユーザーのパスワードが設定されていない、と怒られています。
initialize-insecureオプションをオフにしろとのことですが、この見慣れないオプションは何でしょうか?

どうやら初期化コマンド実行時のオプションのようです。
参考:MySQL 5.7.6でデータベースの初期化が変わる mysql_install_dbからmysqld –initialize

initialize-insecureを使わなければいいんでしょ、ということで初期化を実行しようと思ったけれどもう起動している。
その辺のところの確認や、設定変更もしているので再起動してみる。

文句のつけどころは無いようです。

MySQLのrootパスワードを設定しておきます。
参考:MySQL 5.7でrootユーザのパスワードを再設定

ログイン確認

無事ログインできました。

インストール関連はここまで。

楽天市場

Amazon.co.jpアソシエイト

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)