【ラズパイを使い倒す】IoTにも必要なのでデータベース・サーバーをインストールしてみた

データサーバーラズパイ3b+
この記事は約6分で読めます。

おはようございます。じぇいかわさきです。

 

今回はラズパイを使い倒すという目的と、IoTでデータ格納に必要となるデータベース・サーバーをインストールしてみた。

 

インストールはapt-getコマンドを使用することで、簡単にインストール出来ました。

 

インストールして、rootにパスワードを設定するまでやってみましたので紹介します。

 

データサーバー

 

 

 

えっ、MySQLサーバーが無い!

データベース用のソフトは何が良いか?非常に悩ましい問題だが、過去からの付き合いとして、一番無難なMySQLを選択してインストールしてみた。

 

まず最初に、インストールされているライブラリーやアプリのアップデートが無いかを確認する。

sudo apt-get update

 

UPDATE

 

その後は、MySQLサーバーをインストールするので、以下のコマンドを打ち込みリターン。

sudo apt-get install mysql-server

 

UPDATE

 

[ads]

 

MYSQL

 

内部のパッケージチェックが済んで、インストールを使用とした時にエラーが出た!

 

なんと、mysql-serverはインストールする候補がありませんとのこと。つまり、パッケージが無いということを言っている。

 

代わりに、mariadb-serverがあるよって、OSが教えてくれている。このmariadbって何者?

 

どうやら調べていくと、MySQLの妹分みたいなものらしい。ウィキペディアで調べてみるとこう書かれている。

MariaDBの開発は、MySQLのオリジナルコードの作者でMySQL ABの創設者でもあるミカエル・ウィデニウスにより、現在オラクルによって所有されているMySQLをフォークして立ち上げられたプロジェクトにより行われている[6]。配布ライセンスは、GNU General Public Licenseのバージョン2[5]。MariaDBの名は、Wideniusの2番目の娘の名前から採られている[7]

バージョン5.1から5.5までは、同じバージョン番号のMySQLの非商用版を一部改良した形でリリースしていた[8]。2013年2月にMySQLは大規模なリファクタリングを加えたMySQL5.6の正式(プロダクション)版をリリースしたが[9][10]、MariaDBはMySQL5.5をベースにMySQL5.6から新機能の選択的な追加とMariaDB独自の機能追加を実施するという方針変更を行い、2014年3月31日に新たにバージョン番号を10に変更したバージョンをリリースした。

引用 ウィキペディア:MariaDB

 

どうやら、MySQLからmariadbに変わったみたいで、一般的にはmariadbを使用するようになったらしい。

 

それでは、改めてmariadbをインストールすることにした。

 

mariadbをインストール

改めて、以下のコマンドを打ち込み、mariadbのインストールを実施した。

sudo apt-get install mariadb-server

 

mariadb

 

[ads]

 

install

 

だらだらと依存する関連パッケージが表示された後、それらのパッケージがインストールされていく。

 

インストールが完了したので、まずはmariadbを動かしてみる。

 

起動

 

面白いのは、mariadbでも起動するし、mysqlでも起動する。

 

 

rootでのパスワードログインができない?

さて、mariadbもインストールできたが、sudoからの起動ではなく、一般的な起動方法で動かすために、passwordを設定してみた。

 

設定方法は以下の通り。

sudo systemctl start mariadb.service
sudo /usr/bin/mysql_secure_installation

pwset

 

passwordの設定が完了したはずなので、改めてログインを試みると。

mariadb -u root -p
Enter password:
ERROR 1698 (28000): Access denied for user ‘root’@’localhost’

と、ログインにしっぱいするのだ。

 

はて?

 

sudo mariadbで入り直して、passwordが設定できているかを確認してみる。

sudo mariadb

 

ログインした後に、データベースをnoneからmysqlに変更する。

MariaDB [(none)] > use mysql;

 

mysqlにデータベースが変更されるので、ユーザーのpasswordとpluginを調べる。

MariaDB [mysql] > select user, password, plugin from user;

db

 

passowrdが設定されていることが確認できるが、どうやらunix_socketのプラグインが有効になっていると、ダメらしいのでこのプラグインを無効化する。

最終設定

 

そして最後に、以下のコマンドで変更内容を反映させる。

MariaDB [mysql] > flush privileges

 

一旦、exitでMariaDBから抜けて、実際にrootのpassword付きで入れるかを確認する。

login

 

password付でログインが出来たので、passwordがちゃんと設定出来たことになる。

 

文書で書いてしまえば、かんたんなことだが、実際には結構ネットで調べたりしてここまで到達した。

 

 

まとめ

使い慣れたMySQLがサクッとインストールできると思っていたら、既に時代は代わり妹のMariaDBに切り替わっていたのにはびっくりした。

 

しかし、無事インストールすることができたので、今後はいろいろなデータを格納する基準箱ができたと言うことだ。

 

ちょっとやり始めた温湿度も、センサーから受け取った値を、このデータベースに格納していけば。後でデータの確認ができるし、グラフかも可能になると思う。

 

これが、データベースに格納できないとなると、非常に問題だがデータベースに書き込めさえすれば、後でいろんな事に活用できる。

 

次は、データ格納用のテーブルを作ったりして、データの出し入れをまずは学んでいこう。

 

そうすれば、温湿度データをどのように整理すれば、データベースに記録することができるかがわかるので。

 

本の少しだが、また少し自分は賢くなったように感じるね。

 

 

[twt]

コメント

タイトルとURLをコピーしました