Help us understand the problem. What is going on with this article?

Moodle 3.8 マニュアル - MySQL

原文

MySQL

MySQL は Moodle のインストールを支えているデータベースサポートのうちの一つです。

内容

1 MySQL をインストールする
1.1 完全な UTF-8 サポートを設定する
2 Moodle データベースを作成する
2.1 コマンドライン
2.2 phpMyAdmin
3 どのデータベースがどの Moodle に属しているか
4 関連項目

1 MySQL をインストールする

  • もしあなたが Linux を走らせているのなら、あなたの好みはあなたのパッケージマネジャーを使ってインストールするということになるべきです。これはどんな入手可能なアップデートも保証します。しかしながら、apt-get あるいは yum をディストリビューションにしたがって使用することもできます。
  • ほとんどの人気のあるオペレーティングシステム用のインストーラーは http://www.mysql.com/downloads/mysql/ において入手可能です。
  • mysql を直接ソースからビルドするのは可能でありかなり簡単ですが推奨されません(事前にビルドされたバイナリはもっと最適化されています)。
  • 'root' ユーザーにはパスワードを設定(http://dev.mysql.com/doc/refman/5.0/en/default-privileges.html を参照)してください。
  • my.cnf (MySQL の設定ファイル)をあなたの要求に合わせてインストールし設定することを考慮してください。デフォルト設定は通常はメモリーの使用対パフォーマンスの観点において大変保守的です。'max_allowed_packet' 設定を少なくとも 4メガバイトに増加させてください。
  • もしあなたがマスター/スレーブ レプリケーションを使用するつもりなら、binlog_format = 'ROW' を my.cnf の [mysqld] binlog_format = 'ROW' に追加するべきです。 そうでなければ、Moodle はデータベースへの書き込みができないでしょう。

1.1 完全な UTF-8 サポートを設定する

MySQL の設定において UTF-8 の完全なサポートを得ることを推奨します。これがなされていないと、ある文字セット特に絵文字が使用できません。あなたのサイトがインストールされた後に設定することは可能ですが、インストール前に行う方が簡単です。

First check if this is already configured by running the following statement, e.g. at the mysql> prompt or in phpMyAdmin:

まず、例えば phpMyAdmin において mysql> プロンプトで次の宣言を走らせることで既に設定されているかをチェックしてください。

SHOW GLOBAL VARIABLES WHERE variable_name IN ('innodb_file_format', 'innodb_large_prefix', 'innodb_file_per_table');
変数名
innodb_file_format Barracuda
innodb_file_per_table ON
innodb_large_prefix ON

もし 3 つの設定が上記のリストにあるならばさらなる設定変更は必要なく Moodle データベースの作成(翻訳準備中)をスキップできます。

もしあなたの設定がこのリストにマッチしないのならあなたの MySQL 設定ファイルを編集する必要があります。Linux ではこのファイルは /etc/my.cnf あるいは /etc/mysql/my.cnf となり、Microsoft Windows では my.ini となります。

  • 注:変更前にはあなたの設定ファイルをバックアップすべきです。
  • 注:変更前にはあなたのデータベースをバックアップすべきです。
  • 注:この変更によりデータベースを使用しているその他のシステムは影響を受けます。

設定ファイルに次の設定を追加してください。

[client]
default-character-set = utf8mb4

[mysqld]
innodb_file_format = Barracuda
innodb_file_per_table = 1
innodb_large_prefix = 1

character-set-server = utf8mb4
collation-server = utf8mb4_unicode_ci
skip-character-set-client-handshake

[mysql]
default-character-set = utf8mb4

これらの設定を適用するために MySQL をリスタートしてください。

設定を適用するのが難しければ、さらなるサポート情報については MySQL_full_unicode_support(https://docs.moodle.org/38/en/MySQL_full_unicode_support)(翻訳準備中)を参照してください。

もしある理由からここに記述している推奨設定に変更できないとしても、Moodle のインストールを続けられます。しかしながらデフォルト文字セットと照合をそれぞれ utf8utf8_unicode_ci にしてください。

2 Moodle データベースを作成する

空の Moodle データベースを作成するステップとなります。あなた自身のデータベース名、ユーザー名とパスワードと適切に代替してください。

指示は web サーバーと MySQL サーバーが同じマシンにあると推察しています。このケースでは 'dbhost' は 'localhost' です。それらが異なるマシンであるなら次の指示で 'localhost' を web サーバーの名前に置き換え、'dbhost' 設定はデータベースサーバーの名前になるでしょう。データベースには "Character は utf8mb4 Collation は utf8mb4_unicode_ci とするのを推奨します。あなたがデータベースを作成する際にこれらの値を設定するためのオプションが得られます。もし選択ができなければ、デフォルトオプションでおそらくよいでしょう。古いサーバーへのインストールは誤った設定になるかもしれません。

2.1 コマンドライン

  • 'mysql' コマンドラインクライアントを使用してデータベースを作成するには、まず MySQL にログインします。
$ mysql -u root -p
Enter password: 

(あなたが前に設定した MySQL の 'root' ユーザーのための - あるいは与えられた - パスワードを入力してください)。いくつかの前置きの後これは mysql> プロンプトになります。

  • 新しいデータベースを作成してください('moodle' という名前で - 必要であればあなた自身の名前に置き換えてください)。

もし推奨される完全な UTF-8 サポートに設定できたならば次を走らせてください。

mysql> CREATE DATABASE moodle DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;

もし推奨される完全な UTF-8 サポートがないなら、次を走らせてください。

mysql> CREATE DATABASE moodle DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci;
  • ユーザー/パスワード を最小特権とともに追加してください。
mysql> GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,CREATE TEMPORARY TABLES,DROP,INDEX,ALTER ON moodle.* TO moodleuser@localhost IDENTIFIED BY 'yourpassword';

...これは 'moodleuser' というユーザーを 'yourpassword' で作成します。強いパスワードにすることを確認し 'GRANT ALL' にする誘惑に負けないでください。

  • mysql から出ます。
mysql> quit

2.2 phpMyAdmin

phpMyAdmin は MySQL のための web ベースの管理者ツールです。もしこれが入手可能ならばそれを使って新しいデータベースを作成できます。上述のように推奨される完全な UTF-8 のサポートを設定したのならutf8mb4_unicode_ci の照合を選択してください。もし推奨される完全な UTF-8 のサポートがなければ utf8_unicode_ci の照合を選択してください。

3 どのデータベースがどの Moodle に属しているか

いくつかの Moodle のインストールを同じサーバーにしたのなら、あなたの MySQL サーバーには複数のデータベースがあるでしょう。名前は _mdl1 _mdl2 _mdl3 のように内容をほとんど反映しません。ではどのデータベースがどの Moodle にたいおうしているのでしょうか?あなたは phpMyAdmin に入り複数のデータベースの "mdl_course" テーブルをチェックしてください。そこで Moodle インストールの名前を見ることができるでしょう。mdl_config テーブルでは Moodle バージョンを見る事ができます。サイトの主要 URL は絶対リンクがあるところを除いてデータベースにはありません。

4 関連項目

MariaDB(翻訳準備中)
MySQL の完全な unicode サポート(翻訳準備中)
MySQL ホームページ
MySQL についての Wikipedia の記事
MySQL のパフォーマンスチューニングについての記事のリスト

カテゴリ:インストール | SQLデータベース(翻訳準備中)
メインページ

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
ユーザーは見つかりませんでした