ラベル mysql の投稿を表示しています。 すべての投稿を表示
ラベル mysql の投稿を表示しています。 すべての投稿を表示

2013-07-11

[.tested] Moodle [debian Wheezy/Squeeze][AX3][A6]

ムードル (Moodle) は、オープンソースのeラーニングプラットフォームです。
同種のシステムの中では比較的多くのユーザ数を獲得しており、国内でも多くのユーザに利用されています。
Moodleは多くのLinuxディストリビューションによりパッケージ提供されており、Debianにおいても、容易にパッケージインストールをすることが出来ます。


今回は、OpenBlocks AX3にて、データベースとしてMySQLを利用した場合のインストール手順について、最新パッケージである、2.5.1の導入方法について紹介します。

2013/8/1 更新
 Debian 7.1(wheezy)での検証も行いました。
 検証するパッケージは最新版の記事のみとしました。
 インストール時に、最初から日本語設定を行うように変更しました。

OBDN技術ブログによる動作検証は、該当するソフトウェアの動作の保証およびサポートを行うものではありません。
内容に関するご指摘などありましたら、ブログ記事の担当までご連絡下さい。

<検証環境>
Debian 6.0 squeeze
OpenBlocks AX3/4 kernel: 3.0.6
OpenBlocks AX6 kernel: 2.6.31
Debian 7.1 Wheezy
OpenBlocks AX3/4 kernel: 3.2.40
OpenBlocks A6 kernel: 3.2.40

1. A6を使用する場合


A6に搭載されているメモリサイズでは、out of memoryが出るため、swapを別途設定する必要があります。設定方法に関しては、

OpenBlocks A6 FAQ: SWAPを設定するには、どのようにすれば良いですか

を参照してください。

2. 最新版 Ver2.5.1の導入方法


debianパッケージによる導入も可能ですが、今回は最新版のパッケージを導入します。

Moodle最新版の入手

Moodleのサイトより、Ver 2.5.1-latestパッケージを入手します。

Moodle.org: open-source community-based tools for learning:

wgetを使用する場合の例は以下の通りです。(2013/7/13現在)

# wget http://sourceforge.net/projects/moodle/files/Moodle/stable25/moodle-latest-25.tgz/download
# mv download moodle-latest-25.tgz

apache2パッケージのインストール

# aptitude install apache2

php5パッケージのインストール

# aptitude install php5 php5-gd php-pear php5-mysql php5-curl php5-intl php5-xmlrpc

mysqlのインストール

Moodleパッケージををインストールする前に、mysqlをインストールし、データベースを作成します。

# aptitude install mysql-server

インストール時に、管理者(root)のパスワードを入力してください。

データベースの作成

# mysql -u root -p

mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
+--------------------+
2 rows in set (0.00 sec)

mysql> CREATE DATABASE moodle;
mysql> ALTER 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 'moodle';
mysql> quit

 moodleプログラムパッケージの展開

# tar xvzf moodle-latest-25.tgz
# mv moodle /var/www
# chown www-data /var/www/moodle

moodledataディレクトリの作成

# mkdir /usr/share/moodledata
# chmod 0777 /usr/share/moodledata

今回は、documetroot下にmoodledataを置いていませんが、置く場合は、.htaccessに、以下の様に記述して下さい。

order deny,allow
deny from all

WebインストーラによるMoodleインストール/設定

Webブラウザより、

http://ホスト名orIPアドレス/moodle

にアクセスし、インストールを開始します。

言語を選択します。jaにすれば、その後全て日本語でオペレーションされ、言語パックもjaに設定されます。


 moodledataのpathを入力します。


 データベースとしては、今回MySQLを選択します。


上記で作成したデータベース名および、ユーザ、パスワードを入力します。


 インストールをする場合は、了承して継続します。


インストールされているモジュールの確認画面。問題なければ継続します。


上記の継続操作から内部の処理のため、しばらく時間がかかります。
ただし、AX3 ( Debian 6.0 )、A6 (Debian 6.0/7.1)の場合、、max_execution_timeを超えてしまい、タイムアウトエラーにより導入途中で止まります。
この問題の回避方法はいくつか考えられますが、ひとつは、/etc/php5/apache2/php.iniの、
max_execution_timeの値を30から変更する方法があります。
(この評価では、240まで上げて、インストールが可能なことを確認しました)


 管理者についての情報を入力します。


サイトの情報を入力します。


ホーム画面が表示されます。


3.さいごに


moodleによるeラーニングシステムをOpenBlocks上で利用することにより、設置環境を選ばず、様々な教育現場でシステムを利用出来るのではないかと思います。
なお、A6に関しては実用的と言える速度にはなりませんでした。

AX3で実際に使用されている方が居られましたら、稼動の規模や使用感などをお聞かせ下さい。

2012-07-04

【.tested】OpenPNE3.8.0 1/2 (apache+php+mysqlおよびパッケージ初期導入まで) [AX3]



OpenPNEは、オープンソースのSNS運用ソフトウェア群であり、株式会社手嶋屋さんを中心にOpenPNE Projectとして開発が続けられています。
公式サイトは、以下になります。












今回は、OpenBlocksAX3へのOpenPNE3.8.0の導入その1として、apache2+php5+mysqlの導入および、パッケージ展開、初期インストール、およびユーザ画面、管理画面の表示までの動作検証を行います。

OBDN技術ブログによる動作検証は、該当するソフトウェアの動作を保証およびサポートを行うものではありません。
内容に関するご指摘などありましたら、ブログ記事の担当までご連絡下さい。

<検証環境>
OpenBlocks AX3/4 Debian 6.0 kernel: 3.0.6

1.apache2の導入

・apache2パッケージのインストール
apache2-mpm-preforkを使ってみました。

# aptitude install apache2-mpm-prefork

インストールのみで起動します。

・mod_rewriteを有効にする

# a2enmod rewrite

2.phpの導入と設定

# aptitude install php5 php5-gd php-pear php5-mysql

・php.iniの設定
/etc/php5/apache2/php.iniを編集し、mbstringを有効にして下さい。

[mbstring]
; language for internal character representation.
; http://php.net/mbstring.language
mbstring.language = Japanese

; internal/script encoding.
; Some encoding cannot work as internal encoding.
; (e.g. SJIS, BIG5, ISO-2022-*)
; http://php.net/mbstring.internal-encoding
mbstring.internal_encoding = UTF-8

; http input encoding.
; http://php.net/mbstring.http-input
mbstring.http_input = auto

; http output encoding. mb_output_handler must be
; registered as output buffer to function
; http://php.net/mbstring.http-output
mbstring.http_output = UTF-8

; enable automatic encoding translation according to
; mbstring.internal_encoding setting. Input chars are
; converted to internal encoding by setting this to On.
; Note: Do _not_ use automatic encoding translation for
;       portable libs/applications.
; http://php.net/mbstring.encoding-translation
mbstring.encoding_translation = on

; automatic encoding detection order.
; auto means
; http://php.net/mbstring.detect-order
mbstring.detect_order = auto

; substitute_character used when character cannot be converted
; one from another
; http://php.net/mbstring.substitute-character
mbstring.substitute_character = none;

; overload(replace) single byte functions by mbstring functions.
; mail(), ereg(), etc are overloaded by mb_send_mail(), mb_ereg(),
; etc. Possible values are 0,1,2,4 or combination of them.
; For example, 7 for overload everything.
; 0: No overload
; 1: Overload mail() function
; 2: Overload str*() functions
; 4: Overload ereg*() functions
; http://php.net/mbstring.func-overload
mbstring.func_overload = 0

3.mysqlの導入

# aptitude install mysql-server

インストール時にMySQLを管理するrootユーザのパスワードを聞かれるため、予め決めておく必要があります。

・動作確認

# mysql -u root -p

mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
+--------------------+
2 rows in set (0.00 sec)

mysql>

4.OpenPNEパッケージのダウンロードと展開

公式ページからOpenPNE3.8.0パッケージをダウンロードします。
(パッケージはgithubにあります)

パッケージはzipパッケージとなっており、unzipにより展開します。
ファイルの配置に関しては、上記githubのページより、
OpenPNE3 / doc / ja / OpenPNE3_Setup_Guide.txt
を開いて確認してください。

パッケージのzipファイルを/tmpに置いた場合は以下の手順となります。

# unzip openpne-OpenPNE3-OpenPNE-3.8.0-0-g8c3a808.zip
# cp -r /tmp/openpne-OpenPNE3-8c3a808 /usr/local/
# cd /usr/local/
# ln -s openpne-OpenPNE3-8c3a808 OpenPNE
# chgrp www-data -R openpne-OpenPNE3-8c3a808
# chmod g+w -R openpne-OpenPNE3-8c3a808

5. OpenPNEパッケージのインストール
上記OpenPNE3_Setup_Guide.txtに従い作業します。
/usr/local/下にパッケージを置いた場合

・設定ファイルのコピー

# cd /usr/local/OpenPNE3
# cp config/ProjectConfiguration.class.php.sample config/ProjectConfiguration.class.php
# cp config/OpenPNE.yml.sample config/OpenPNE.yml

・インストールコマンドの実行

# ./symfony openpne:install

openpne:install コマンドを実行すると、はじめに、以下の事項の入力を求められます。

* 使用する DBMS (mysql, pgsql, sqlite から選択。ただし mysql
* 以外は未サポート)
* データベース名
* データベースへの接続用ユーザ名
* データベースへの接続用パスワード(未入力可)
* データベースサーバのホスト名(localhost など)
* データベースサーバのポート番号(未入力可)
* (DBMS に MySQL を選択し、サーバホスト名に localhost
* を指定した場合)使用するソケットへのパス(未入力可)

以上の事項について入力をおこなうと、インストール作業が自動でおこなわれます。

また、これらの入力事項をコマンドの引数としてデータベースの設定値を指定してインストールすることも可能です。
以下は使用例ですので、設定値は適宜変更してください。

# ./symfony openpne:fast-install --dbms=mysql --dbuser=username --dbpassword=password --dbhost=localhost --dbport=10 --dbname=databasename

・開発環境用ファイルを削除

# ./symfony project:clear-controllers

・mod_rewrite の設定
web/.htaccess の RewriteBase を各自の環境にあわせて編集して下さい。

  RewriteBase /

6. apache2の設定

ご利用の環境に合わせてapacheを設定します。
/etc/apache2/conf.d/localの一部を以下の様に変更しました。

DocumentRoot /usr/local/OpenPNE/web/ 
DirectoryIndex index.php


<Directory /usr/local/OpenPNE/web/>
      Options Indexes FollowSymLinks MultiViews
      AllowOverride All
      Order allow,deny
      allow from all 
</Directory>

7.動作確認

ブラウザからアクセス(ユーザ画面)

(1) http://<サーバのURLもしくはIPアドレス>/index.php にアクセス
(2) ログインフォームに sns@example.com / password と入力し、ログインできるかどうか確認
※メールアドレスとパスワードはログイン後に必ず変更してください
















写真やプロフィールの変更を行ってみます。
















・ブラウザからアクセス(管理画面)

(1) http://<サーバのURLもしくはIPアドレス>/pc_backend.php にアクセス
(2) ログインフォームに admin / password と入力し、ログインできるかどうか確認
※メールアドレスとパスワードはログイン後に必ず変更してください
















以上で、OpenPNEの導入から、ユーザ画面、管理画面までの簡単な動作確認を行いました。
次回、postfix回りやcron回りの設定を含む全体の運用についてご報告出来ればと思います。