Ubuntuで自宅サーバー構築!【データベースサーバー編】

ubuntu-database-server
  • URLをコピーしました!

今回は、UbuntuMariaDBをインストールして、データベースサーバーを構築したいと思います。
前回のストレージサーバーと今回のデータベースサーバーは、これから先に構築するWEBアプリケーションサーバーやZabbixサーバーも利用するので、しっかり構築していきましょう!

目次

MariaDBのインストール

いつものようにサーバー系の操作はroot権限で行ってくださいね。
いつもお世話になっている参考にサイトはこちらになります!

パッケージのインストールと設定

まずはMariaDBサーバーパッケージをインストールします。

すぐに初期設定を始めても構いませんが、MariaDBの設定ファイルでデフォルトの文字コードだけ確認し、もし違ってたら変更しておきましょう。

今時は世界的にUTF-8が当たり前で、さらに4バイト長の文字が扱える「utf8mb4」がオススメです。
設定を確認できたら再起動します。

MariaDBの初期設定

MariaDBには、インストールした際のセキュリティを向上させるスクリプトがありますので、それを実行して初期設定をします。
基本的には「YYES)」で進んでいきますが、詳しく知りたい方はMariaDB公式のKBをご確認ください。

MariaDB KnowledgeBase
mysql_secure_installation MariaDBをインストールした際のセキュリティ向上

それでは、スクリプトを実行しましょう!

rootパスワードを設定します。

匿名ユーザー削除します。

rootリモートログイン無効化します。

テストデータベース削除します。

特権情報リロードします。

少し待って~。。

以下のように表示されたら完了です!

権限と認証の設定

一応、初期設定はこれで完了ですが、冒頭でも記載したように外部からアクセスできないことがあるので、追加で権限認証の設定を行います。
ここでは例としてrootユーザーを設定しますが、セキュリティを考慮して設定してください。

外部アクセス時のユーザー権限

デフォルトは「unix_socket認証になっている(これでは外部からアクセスできないので後ほど変更しますが)ので、ユーザー名やパスワードは入力せずにログインできます。

次に、roothostを確認してみます。

現在rootユーザーは「localhost」のみになっていて、自身のサーバーのからしかアクセスできない状態なので、同じネットワーク内だったらアクセスできるように変更します。

この設定で「192.168.100.%」のセグメントから、全てのテーブルに操作権限を持つrootユーザーでアクセスできます。

パスワード認証に変更する

先程、デフォルトでは「unix_socket認証になっていると記述しましたが、これでは外部からパスワード認証でアクセスする際に、よく見かける以下のエラーで悩まされます。

そこで、パスワード認証に変更するために、mysqlデータベースのuserテーブルのpluginの値を変更します。
まずは、現在の設定を確認してあげましょう。

見ての通リ、デフォルトでは「unix_socket」になっているのが確認できました。
それではパスワード認証にするために「mysql_native_password」に変えてあげます。

設定を反映したら、再度確認します。

これでパスワードを使用したアクセスが可能になります。
次回以降、作成したユーザーもこの設定にしますのでお忘れなく!

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

コメント

コメントする

CAPTCHA


目次