*

外部から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にアクセスしてみます。

ではっ!

関連記事

Arduino_Logo

フォトレジスタを使ってみた-Arduinoで光検出

どもです。 今回は、タイトル通り「フォトレジスタの使い方」です。 1.フォトレジスタって何?

記事を読む

source_trail_eye_catch

Sourcetrailを試してみました

どもです。 つい最近、ソースコードの解析に役に立ちそうなツールを見つけたので、ここで少し紹介をしま

記事を読む

toppers

C言語でEV3開発(19)-コマンド通信処理でEchoBackしてみた

どもです。 前回は、Bluetoothの接続状態の変化に伴う、状態遷移について書きました。 今回

記事を読む

think_about_utest

単体テストの効率化を考える(5)-スタブの自動生成への入力

どもです。 「単体テストの効率化について考える」の5回目です。 1回目から4回目はコチラ:

記事を読む

MY_MFC_LOGO

MFCプログラミング(2):コピー機能の実装

どもです。 前回に引き続き、今回もMFCネタです。 内容は、MFCでの「クリップボードへのデータ

記事を読む

think_about_utest

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

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

記事を読む

iot_at_home_eye_catch

IoT開発(14)
ESP-WROOM-02の稼働時間を延ばす工夫をしてみる

どもです。この記事は、以下の続きです。 IoT開発(4)-ESP-WROOM-02を電池で駆動

記事を読む

toppers

C言語でEV3開発(28)-EV3の移動距離を計算できるようにしてみた

どもです。 今回は、Ev3の移動距離の算出についてです。 1.算出方法について 移動距離は

記事を読む

cygwin_my_image

cygwinでstartコマンド

どもです。 このエントリでは、cygwinでWindows/コマンドプロンプトの「start」

記事を読む

no image

C言語でEV3開発(11)-opOUTPUT_STEP_POWERコマンド

どもです。 今回のエントリーでは、再びモーターを動かすためのコマンドについて書きます。 コマンド

記事を読む

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="">

c_sharp_eye_catch
セル内の「取り消し線で消された文字列」の削除を簡単にしてみた

どもです。 前回、C#/OpenXmlを用いて、エクセルのセル内

c_sharp_eye_catch
セル内の「取り消し線で消された文字列」を削除してみた

どもです。 今回は、C#/OpenXmlの組み合わせで、エクセル

c_sharp_eye_catch
C#でバッファの内容を表示する処理を実装してみた-
データ型に従って動的に書式を設定する

どもです。 最近、C#でバッファ/配列の値をコンソールに表示した

arduino_relay_switch_003_self_preservation_circuit_eye_catch
Arduinoでリレースイッチ(3)-自己保存回路

どもです。 前回の記事で、リレースイッチ「AE-G5V-DRV」

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

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

→もっと見る

PAGE TOP ↑