雑廉堂の雑記帳

Ubuntu 18.04 + LAMP 環境構築 (3) – MariaDB 10.3

さくらVPS上でLAMP環境を構築した際の覚書です。
すでに、VPS上でUbuntu Server 18.04がインストールされた直後、という条件で設定をしていきます。

今回はMariaDBを導入します。

 

 

ゴール

 

MariaDBのインストール

インストールに必要なパッケージを導入します。

$ sudo apt install curl gnupg

リポジトリを追加します。

$ curl -sS https://downloads.mariadb.com/MariaDB/mariadb_repo_setup | sudo bash

パッケージ情報を更新します。

$ sudo apt update

インストール可能なパッケージを確認します。

$ apt list | grep -i mariadb-server

mariadb-server-10.3/..

一覧に、mariadb-server-10.1と10.3があるので、10.3をインストールします。

$ sudo apt install mariadb-server-10.3

インストールの途中で、rootユーザーのパスワードの入力を促されます。

 

mysql_secure_installationの実行

$ sudo mysql_secure_installation

 

MariaDBの設定

 

文字コードの確認

MariaDBにログインします。

$ mysql -u root -p

Enter password:とでてくるので、パスワードを入力します。

MariaDB [(none)]>というプロンプトが出てくればログイン成功です。

次に、現在の文字コードの確認をします。

> show variables like 'chara%';
+--------------------------+----------------------------+
| Variable_name            | Value                      |
+--------------------------+----------------------------+
| character_set_client     | latin1                     |
| character_set_connection | latin1                     |
| character_set_database   | latin1                     |
| character_set_filesystem | binary                     |
| character_set_results    | latin1                     |
| character_set_server     | latin1                     |
| character_set_system     | utf8                       |
| character_sets_dir       | /usr/share/mysql/charsets/ |
+--------------------------+----------------------------+
8 rows in set (0.017 sec)

文字コードがlatin1になっているので、このままだと日本語を扱うと文字が化けるので、設定を見直します。

quitでMariaDBのコンソールを抜け、設定ファイルを編集します。

 

文字コードの設定

$ sudo vi /etc/mysql/mariadb.cnf

[client]セクションに、以下を追加。

default-character-set=utf8mb4

[mysqld]セクションに、以下を追加。

character-set-server=utf8mb4
collation-server = utf8mb4_bin

MariaDBを再起動

$ sudo systemctl restart mysql

再度MariaDBに接続して文字コードを確認する。

> show variables like 'chara%';
+--------------------------+----------------------------+
| Variable_name            | Value                      |
+--------------------------+----------------------------+
| character_set_client     | utf8mb4                    |
| character_set_connection | utf8mb4                    |
| character_set_database   | utf8mb4                    |
| character_set_filesystem | binary                     |
| character_set_results    | utf8mb4                    |
| character_set_server     | utf8mb4                    |
| character_set_system     | utf8                       |
| character_sets_dir       | /usr/share/mysql/charsets/ |
+--------------------------+----------------------------+
8 rows in set (0.002 sec)

 

collation-serverの値は、utf8mb4_binutf8mb4_general_ciutf8mb4_unicode_ciutf8mb4_unicode_520_ciがあります。要件によって選択することになると思われます。(参考サイト1参考サイト2)

 

モバイルバージョンを終了