MariaDBの初期設定とユーザーの作成
データベースサーバーとして利用するときに必要なMariaDBの初期設定についての解説です。
MariaDBのrootユーザーでの接続
Ubuntuでは、MariaDBのrootユーザーとして接続するには、Ubuntuのroot権限を使ってアクセスします。つまり、sudoを使って、パスワードなしでrootユーザーで接続します。
sudo mysql -uroot
MariaDBへの接続を終了するには「quit」と入力してEnterを押します。
quit
タイムゾーンの設定 - オプション
MariaDBのデフォルトのタイムゾーンは、OSのタイムゾーンです。つまり。OSのタイムゾーンの設定を行っている場合は、MariaDBのタイムゾーンの設定はいりません。
タイムゾーンの設定が必要となるのは、MariaDBがクラウドサービスとして、提供されている場合です。この場合は、MariaDBの設定ファイルのタイムゾーン設定を行ってください。そのままではUTC時刻になっています。
UTCと「Asia/Tokyo」の時間差分である「+09:00」を設定します。
# パラメータ名 time_zone # 値 +09:00
MariaDBの設定ファイルの場所
初期設定では、特に設定の必要がありませんが、メモリの設定は、必ず行うことになるので、UbuntuにおけるMariaDBの設定ファイルの場所を記載しておきます。
データベースの作成
ここでは、Webアプリケーション用のデータベースを作成します。データベース名は、myappdbにしておきます。後でデータベース名の変更は可能です(少し工夫はいりますが)。
create database myappdb;
作成したデータベースを確認するために、データベースの一覧を表示します。
show databases;
アプリケーションユーザーの作成
Webアプリケーション用のMariaDBユーザを作成しましょう。select,insert,update,deleteの権限を持ったユーザーです。
MariaDBに管理者ユーザで接続します。上記でrootのパスワードを設定した場合は、rootユーザーで、管理者ユーザーが他にいる場合は、そのユーザーで接続してください。
# Ubuntuのrootユーザーで接続 sudo mysql -uroot # MariaDBクラウドサービスに接続するサンプル mysql -h my-devel-db-001.mariadb.database.azure.com -ukanri@my-devel-db-001 -p
パスワードを聞かれますので、入力してください。
データべースがリモートにあり、接続できない場合は、データベースサーバー側のファイアーウォールの確認も合わせておこなってください。
MariaDBでユーザーの作成を行います。
create user myapp;
次に、データベースへのアクセス権限の設定とパスワードを設定します。
以下の、localhostの部分は、データベースサーバーが、同じサーバーにある場合の設定です。クラウドサーバーの場合ですと、接続元のIPアドレス、または、ドメイン名を指定してください。
grant insert,update,delete,select on myappdb.* to 'myapp'@'localhost' identified by 'eifjutab&';
PerlでDBD::mysqlをインストールするときに、testデータベースへの接続権限必要になるので、設定しておきます。
create database test; grant all privileges on test.* to 'myapp'@'localhost' identified by 's3kr1t';
接続を抜けて、新しく作成した「myapp」ユーザーで、MariaDBに接続できることを確認します。
# rootユーザーで接続 mysql -umyapp -p # MariaDBクラウドサービスに接続するサンプル mysql -h my-devel-db-001.mariadb.database.azure.com -umyapp@my-devel-db-001 -p
これで初期設定とユーザーの作成が完了しました。