Tips

MariaDB はじめてのMariaDB 【第3回 CentOSにインストールしてみよう (後編)】

MariaDB はじめてのMariaDB 【第3回 CentOSにインストールしてみよう(後編)】

ちょっと時間が空いてしまいました。
前回はMariaDBをソースからインストールし、設定ファイルを設定する前まで終わりました。
設定ファイルは「/usr/local/mysql」には、設定ファイルのテンプレートが保存されています。
テンプレートは複数用意されており、自分が設定する内容に近い設定ファイルを
/etc/my.cnfにコピーして使用します。

ファイル名 内容
my-small.cnf 64MB以下のメモリを持つ環境向け
my-medium.cnf 128MB程度のメモリを持つ環境向け
my-large.cnf 512MB程度のメモリを持つ環境向け
my-huge.cnf 1~2GB程度のメモリを持つ環境向け
my-innodb-heavy-4G.cnf 4GB程度のメモリを持ち、InnoDBストレージエンジンのみを使用する環境向け

今回は、なるべく少ないメモリ環境で動作させたいので
「my-small.cnf」を使用します。

設定ファイルの配置と編集

  1. 下記コマンドを実行し、設定ファイルのテンプレートを/etc配下にコピーします。
    すでにファイルがある場合は、念のため、バックアップを取っておいても良いかもしれません。

    cp /usr/local/src/mariadb-10.0.12/support-files/my-small.cnf /etc/my.cnf
  2. 下記赤枠で囲った2行を追加する。(DB-ClientとDB-Serverで認識する文字コードをUTF-8に設定)
    11_config_file

MySQLの初期化

  1. MySQLの初期化とシステムテーブルを作成するため、下記コマンドを実行します。
    /usr/local/mysql/scripts/mysql_install_db  --user=mysql --basedir=/usr/local/mysql --datadir=/var/lib/mysql

    コマンドが実行されると下記画面のように順次処理が実行されていきます。
    12_db_initialize
    ・・・中略・・・
    13_db_initialize_2

起動スクリプトの準備

  1. 既に用意されている起動用スクリプトを/etc/init.d/mysqldにコピーする。
    cp /usr/local/src/mariadb-10.0.12/support-files/mysql.server /etc/init.d/mysqld
  2. 実際にstart(起動)、restart(再起動)、status(状況確認)、stop(停止)を実行し、動作確認を行う。
    14_db_start_script

自動起動の設定と環境変数の設定

  1. サーバが起動した際に自動的にMariaDBも起動するように下記コマンドを実行し、自動起動の設定を行います。
    ※既に設定されている場合もあります。

    chkconfig --add mysqld
    chkconfig mysqld on
    chkconfig --list mysqld

    「chkconfig –list mysqld」実行後、2~5がonになっていればOKです。
    15_db_start_check

  2. MariaDB(MySQL)のコマンドをフルパスじゃなくても実行できるように環境変数のパスを設定します。
    「/etc/profile」をvi等で開き、下記をファイルの一番下に追加し、保存します。

    export PATH=/usr/local/mysql/bin:$PATH

    サーバを再起動することで適用できますが、すぐに適用したい場合は、下記コマンドを実行します。

    source /etc/profile

セキュリティ設定

MariaDBが起動していることを前提とする。

  1. 下記コマンドを実行し、MariaDBのセキュリティ設定を行う。
    mysql_secure_installation

    下記問い合わせがされるので、各項目毎に回答し、設定を行う。

    問い合わせ 内容 回答
    Enter current password for root (enter for none): MariaDBにおける今のパスワードを入力 Enterのみ
    Set root password? [Y/n] rootユーザのパスワードを設定するか? Y
    New password: 新しいパスワードの入力 任意
    Re-enter new password: 新しいパスワードの再入力 任意
    Remove anonymous users? [Y/n] anonymous users(匿名ユーザ)を削除するか? Y
    Disallow root login remotely? [Y/n] rootユーザのリモート接続を拒否するか? Y
    Remove test database and access to it? [Y/n] テストDBを削除するか? Y
    Reload privilege tables now? [Y/n] 権限変更を再度読み込むか? Y

動作確認

  1. 下記コマンドを実行し、rootユーザでログインしてみます。
    mysql -u root -p

    16_db_login

    ログインできたことが確認できました。
    また、「show databases;」は、現存のDBを表示しています。

次回は、ユーザ作成や権限設定等の説明をしたいと思います。

WEBアプリケーション関連 人気連載リンク

データベースの基礎が学べるSQL基礎講座
SQL基礎 連載

より実践的なWEBアプリ開発講座!Bootstrap活用を学ぶなら・・
魁!小野の塾 連載

Recent News

Recent Tips

Tag Search