アンケートだけでは見つけられない学習者のニーズを見つけるために,学習履歴等を観察するために,Open edXで使われているDBへアクセスします.
しかし,当然ながら,基本的なセキュリティによりMySQLは外部からアクセスできません.それをアクセスできるようにするのが今回の記事となります.
Open edXは,主に2つのDBを使っています.
1つ目は,MySQLです.ユーザ情報,受講情報・成績,Wiki,ORA等の情報が格納されています.学習状況や成績を取得したい場合はこちらを参照します.
2つ目は,MongoDBです.コース情報が記録されています.ユーザが何を受講しているのかは,MySQLでわかりますが,そのコースがどんなものなのか,回答データはどのコースのどの設問なのかは,こちらを参照しないとわかりません.
※Vagrant fullstack版での設定変更方法となります.
MySQLを外部から接続できるようにする
vagrant ssh
アクセス権の変更
mysql -u root -p mysql> grant all privileges on *.* to root@"%" identified by '' with grant option; mysql> quit
他のサーバからアクセスを許可する
sudo vi /etc/mysql/my.cnf - bind-address = 127.0.0.1 + #bind-address = 127.0.0.1
リスタート
sudo service mysql restart
接続テスト
mysql -h 192.168.33.10 -u root -p
MongoDBのRESTを許可する
Mongoはデフォルトで外部からの操作が可能となっているのでREST操作をONにするだけ.
vagrant ssh sudo vi /etc/mongodb.conf + rest = true
リスタート
sudo service mongodb restart
こんな感じです
.