*

外部からMariaDbにアクセスする(1)-データベースの設定

公開日: : 開発

どもです。

今回は、Linux上のMariaDbにWindowsからアクセスしてデータを取得できるようにする方法について書きます。
なお、LinuxはVM(VirtualBox)上に構築しています。

1.環境

今回の記事は、以下の環境で行った作業について書きます。

開発環境(H/W)

H/W 構成品
CPU Intel(R) Core i7-8700 CPU 3.20GHz

開発環境(S/W)
S/W バージョン
OS Windows10 Pro (Ver.1903)
IDE VisualStudioCommunity2019 Ver.16.7.3
VM VirtualBox 5.2.20
ゲストOS Raspbian(Debian Buster)
データベース MySql Ver 15.1 Distri 10.3.22-MariaDB

なお、VM(VirtualBox)上にゲストOS(Raspbian)、およびデータベース(MariaDb)をインストールする手順については、下記を参照してください。
IoT開発(6) RaspberryPiをIoTゲートウェイにする(I) VM上に開発環境を構築
IoT開発(7) RaspberryPiをIoTゲートウェイにする(II) VM上の開発環境にWEBサーバーをインストール
IoT開発(9) RaspberryPiをIoTゲートウェイにする(III) MariaDBのセットアップ
今回のエントリでは、これらのエントリで作成した環境を前提にして、作業を進めています。

2.MariaDbの設定

まず、データベースの設定を行います。
設定する内容は、「外部からのアクセスの許可」になります。
外部からのアクセスを許可するために編集するファイルとその内容、及び実行すべきコマンドを書きます。

2.1.ファイルの編集

MariaDbの設定ファイルを編集します。
設定するファイルは、

です。
編集する箇所は、およそ28行目付近です。

という行の先頭に「#」を挿入して、コメントアウトします。
編集後の行は、

となります。

2.2.MariaDbの再起動

次のコマンドを実行して、MariaDbを再起動します。

これで、MariaDbの設定は完了です。

3.ユーザの追加

次は、データベースの設定です。
データベースの設定は、以下の手順/順番でコマンドを実行します。

  1. ユーザの追加
  2. 追加したユーザのアクセス権の設定
  3. 追加したユーザのパスワードの設定

基本的には、IoT開発(9) RaspberryPiをIoTゲートウェイにする(III) MariaDBのセットアップ で行った内容と同じです。
念のためも兼ねて、ここで再掲しておきます。

3.1.ユーザの追加

まず、外部からアクセスする際に使用するユーザを追加します。
ココでは、以下のコマンドを実行します。

上記コマンドのうち、「WIN_HOST」は実際のユーザ名に変更して下さい。
「xxx.xxx.xxx.xxx」には、ユーザ名「WIN_HOST」のIPアドレスを設定します。
なお、IPアドレスの設定では、「%」をワイルドカードのように使用できます。
例えば、ネットワークアドレスが「192.168.11」のIPアドレスからのアクセスを許容する場合は、次のような設定になります。

3.2.追加したユーザのアクセス権の設定

追加したユーザがアクセスできるデータベース、およびデータベース内のテーブルを指定します。
以下のコマンドを実行します。

このコマンドでは、「sampleDb」のすべてのデータベースに対して、全ての処理(読み出し/書き込み/更新/削除)の実行権限を与えています。
実行する処理を制限する場合には「ALL」の部分を、それぞれ変更します。
また、アクセスするテーブルを制限する場合には、「sampleDb.*」の「*」を、アクセスを許容するテーブルの名前に変更します。

3.3.パスワードの設定

次に、パスワードを設定します。
データベースにWindowsからアクセスする際には、パスワードの設定は必須なります。
実行するコマンドは、以下になります。

実際のパスワードを、「’PASSWORD’」の部分に設定します。

コレで、データベースの設定が完了です。

4.まとめ

これで、サーバ/MariaDb側の設定は完了です。
次は、今回設定した内容を用いて、ホストOSのWindowsからMariaDbにアクセスしてみます。

ではっ!

関連記事

eclipse_oxygen

Eclipse/CrossCompile環境でプロジェクトをクリーンできない

どもです。 今回は、Eclipseでクロスコンパイル環境を作成した場合、を実行すると「指定されたフ

記事を読む

OpenCvLogo

RaspberryPiで物体検出(1)-白線検出への挑戦(1):輪郭検出による白線検出

どもです。 今回は、OpenCvを用いて道路の白線検出について、です。 1.今回の環境 O

記事を読む

RasPi_Qt

Rasbianの新しいバージョンが出たので、クロス環境を更新してみた。(さらにその後)

どもです。 前回の投稿から、かなり時間が空いてしまいましたが、今回は前回の続きとして、「QtC

記事を読む

RasPi_Qt

QtでRaspberryPi/GUI開発(12)-gpioの状態をGUIに反映する

どもです。 今回は、gpioピンの状態(HIGH/LOW)の変化を画面上に即座に反映する方法につい

記事を読む

think_about_utest

単体テストの効率化を考える(1)-はじめに

どもです。 突然ですが、今回から数回にわたって「単体テストの効率化」についてのエントリになりま

記事を読む

no image

C言語でEV3開発(17)-コマンドによるTOPPERS/HRP2 EV3RT アプリケーションの制御(コントロール)

どもです。 今回は、TOPPERS/HRP2 EV3RT で作成したアプリをPC上から操作するため

記事を読む

RasPi_Qt

QtでRaspberryPi/GUI開発(6):pigpioを使用したチャタリング対策

どもです。 前回のエントリーで、pigpioを使用したボタンを使用したLEDの点灯/消灯について書

記事を読む

raspberry-pi

QtでRaspberryPi/GUI開発(7):pigpioを使用したチャタリング対策の問題

どもです。 前回のエントリーで、pigpioを使用したチャタリング対策について記載しました。 今

記事を読む

think_about_utest

VisualStudioで実行した単体テストの結果の出力(1)-ファイルへの出力

どもです。 最近、VisualStudio/C#でよく開発しています。 その際に、当然ですが

記事を読む

no image

RaspberryPiのOS:RaspbianをNOOBSでセットアップしてみた

どもです。 今回の内容は、「今更!?」ですがNOOBSでRaspbianをセットアップしたとい

記事を読む

Message

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

CAPTCHA


次のHTML タグと属性が使えます: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code class="" title="" data-url=""> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre class="" title="" data-url=""> <span class="" title="" data-url="">

arduino_relay_switch_002_ae_g5v_drv_eye_catch
Arduinoでリレースイッチ(2)-AE-G5V-DRV

どもです。 前回の記事では、「フォトカプラリレー」を使用したLチ

tlp222af_001_eye_catch
Arduinoでリレースイッチ(1)-TLP222AF

どもです。 つい先日、やっとのことでリレースイッチを手に入れるこ

c_sharp_eye_catch
外部からMariaDbにアクセスする(2)-C#からMariaDbにアクセスする。

どもです。 前回のエントリで、外部からMariaDbにアクセスす

c_sharp_eye_catch
外部からMariaDbにアクセスする(1)-データベースの設定

どもです。 今回は、Linux上のMariaDbにWindows

think_about_utest
middle_unit
最小…よりも(ほんの)少し大きいテストフレームワーク

どもです。 今回は、単体テストのフレームワークについて書きます。

→もっと見る

PAGE TOP ↑