質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Electron

Electronは、HTML5とNode.jsというWebの技術を用いてデスクトップアプリケーションを作成できるクロスプラットフォームな実行環境です。

Node.js

Node.jsとはGoogleのV8 JavaScriptエンジンを使用しているサーバーサイドのイベント駆動型プログラムです。

データベース

データベースとは、データの集合体を指します。また、そのデータの集合体の共用を可能にするシステムの意味を含めます

Q&A

解決済

2回答

1253閲覧

自分だけがアクセスできればいいデータベースサーバーの構築方法

yuyuyu88180708

総合スコア26

Electron

Electronは、HTML5とNode.jsというWebの技術を用いてデスクトップアプリケーションを作成できるクロスプラットフォームな実行環境です。

Node.js

Node.jsとはGoogleのV8 JavaScriptエンジンを使用しているサーバーサイドのイベント駆動型プログラムです。

データベース

データベースとは、データの集合体を指します。また、そのデータの集合体の共用を可能にするシステムの意味を含めます

0グッド

0クリップ

投稿2020/01/20 04:49

編集2020/01/20 05:07

現在、Electronで自分専用のアプリを作っています。
端末は複数あるため、データベースサーバーが必要なのですが、自分のみがアクセスできればよいという要件では、どのような仕組みが一般的でしょうか。
公開鍵認証を用いて、SSH経由でやり取りをするというのを考えてみたのですが、どうでしょう。
ご存知の方がいらっしゃれば教えていだければ幸いです。


追記1
複数端末についてですが、現在はすべて同じLAN内にあります。しかし、将来的にはモバイル回線を含め外から通信する可能性があります。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

maisumakun

2020/01/20 04:54

複数の端末は、どのような環境で通信できるのでしょうか(全部同じLANの中にある、あるいはモバイル回線で通信するものがある、など)。
m.ts10806

2020/01/20 04:57

>どうでしょう まず、やってみては。
yuyuyu88180708

2020/01/20 04:58

現状はすべて同じLANの中ですが、将来的には外部から通信する可能性があります。 よろしくおねがいします。
yuyuyu88180708

2020/01/20 05:04

>m.ts10806 そうですね。挑戦してみようとおもいます! もし何か、アドバイス等ありましたらご回答いただけると幸いです。
m.ts10806

2020/01/20 05:19

現状、なにかやってみたわけでもなく問題が発生しているわけでもないのでしたら非推奨の質問なので出来るアドバイスはありません。
dodox86

2020/01/20 05:43

会社なのか個人宅なのかわかりませんが、最近はルーターに普通にDMZの機能がついているので、それが使えれば、レンタルサーバーを使うほどもなく、半隔離のインターネット用サーバーを自社(自宅)内に立ち上げられると思います。ただ、「誰々だけがアクセスできる」というセキュリティ要件は依然として残ります。現段階で「??」なのであれば、ご自分で手を動かしてひと通り理解できた後で質問すれば、より回答を得られると思います。
guest

回答2

0

ベストアンサー

手っ取り早く実現したいのであればMySQLサーバのようなものを3306ポートで立ち上げて
サーバマシンを固定IPの192.168.1.100みたいにしておき
Electronアプリからはmysql2のようなライブラリでroot権限でログインを行うという仕組みを構築すれば良いでしょう。

しかし、将来的にはモバイル回線を含め外から通信する可能性があります。

VPNという外部からLAN内に居るかのように振る舞える仕組みがあります。
ただし、光回線等を引く際にVPNに対応しているサービスである必要があります。

これに対応してなければ如何なる自宅サーバも構築出来るかは怪しいので、
一度自宅(?)のサーバがこれらに対応しているか否かを確認しておきましょう。


しかし、VPNでLAN内のマシンとして登録することは一般的ではありません。
一般的にはRESTfulなAPIサーバーを構築する手法が用いられています。

これは普通のHTTP通信を行う普通のWebサーバを立ち上げ、
アクセスに対してMySQLやPostgreSQLに対して代わりに読み書きを行い、
クライアントには主にJSONファイルを返すWebサーバ……といった感じになります。

自宅サーバへ出先からアクセス出来ない場合は
ConoHaのVPS等のサービスを使って
WWWにぶら下がっているマシンを借りて使うと良いでしょう。
一番安いモデルなら月額630円です。

万が一悪いクラッカーの標的になって侵入されても、
自宅の環境とは違い1分で壊して作り直せるVPSなので壊してしまえば問題ありません。
(中に入れたデータは持ち逃げされるかも知れませんが、自宅のマシンが全て荒らされるよりかはマシ)

投稿2020/01/20 10:34

miyabi-sun

総合スコア21158

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

自分のLAN内にも一台PC(使い古しのノートとか)を起動させといてそいつをサーバにすればどうでしょう

投稿2020/01/20 04:54

y_waiwai

総合スコア87749

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

yuyuyu88180708

2020/01/20 05:01

ご回答ありがとうございます。 たしかに、それでほとんどの場合をカバーできますね。 将来的には、外から通信する可能性があるのですが、その場合はどのような方法が考えられるでしょうか。 よろしくおねがいします。
y_waiwai

2020/01/20 05:05

あなたんちの回線が光回線とかであるなら、DDNSなどを使って外からのアクセスできるようにできると思います。 が、そういう想定ならレンタルサーバを借りるほうがいいでしょうね。費用はかかるでしょうけど
yuyuyu88180708

2020/01/20 05:11

ご回答ありがとうございます。 やはりレンタルサーバーになりますよね。 その場合、自分だけがアクセスするようにするためには、どのような技術を用いるのが一般的でしょうか。 ご返信いただければ幸いです。
y_waiwai

2020/01/20 05:15

それは質問に書いてあるとおり、認証鍵を用いたSSHでの接続でいいかと思います
yuyuyu88180708

2020/01/20 05:16

やってみます! いろいろとアドバイスいただきありがとうございました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問