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

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

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

MySQL(マイエスキューエル)は、TCX DataKonsultAB社などが開発するRDBMS(リレーショナルデータベースの管理システム)です。世界で最も人気の高いシステムで、オープンソースで開発されています。MySQLデータベースサーバは、高速性と信頼性があり、Linux、UNIX、Windowsなどの複数のプラットフォームで動作することができます。

Node.js

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

Q&A

解決済

4回答

11130閲覧

node.jsでのmysqlとのデータのやり取り

keito04

総合スコア15

MySQL

MySQL(マイエスキューエル)は、TCX DataKonsultAB社などが開発するRDBMS(リレーショナルデータベースの管理システム)です。世界で最も人気の高いシステムで、オープンソースで開発されています。MySQLデータベースサーバは、高速性と信頼性があり、Linux、UNIX、Windowsなどの複数のプラットフォームで動作することができます。

Node.js

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

0グッド

0クリップ

投稿2016/08/23 13:40

編集2016/08/24 02:48

windowsで作業をしています。
ローカルサーバーでの作業です。
ubuntuで立ち上げたサーバーとの接続です。
ローカルサーバーのnode.js(v0.10.25)においてリモートホストのmysqlのデータベースに接続し、データを得たいと考えています。
コードは以下の通りです。

var db = require('mysql'); var settings = { "host": "host", "database": "db", "user": "user", "password": "pass" }; var connection = db.createConnection(settings); connection.query("show tables;", function(err, result) { if (err) { console.log(err); // 接続失敗 return; } console.log(result); // [ { 'count(*)': 8 } ] connection.end(function() { // 接続終了 }); });

エラーはこういった形で出ます。

{ [Error: ER_ACCESS_DENIED_ERROR: Access denied for user 'ユーザー'@'ホスト' (using password: YES)] code: 'ER_ACCESS_DENIED_ERROR', errno: 1045, sqlState: '28000', fatal: true } undefined

セッティングでホストの値はサーバーの値を入力しているのですが、
ホストの値が繋いでいるwifiによって変更されてしまいます。
御教授よろしくお願いします。

追記 ホストの値が変更されるといった内容の詳細を記入ッせてもらいます。
本来はnode.js上のsettingで記入した、hostの値になるべき場所がPCが利用しているwi-fiである、

{ [Error: ER_ACCESS_DENIED_ERROR: Access denied for user 'ユーザー'@'softbank0689 1463235.bbtec.net'

や、またほかのwi-fiに接続すると、

{ [Error: ER_ACCESS_DENIED_ERROR: Access denied for user 'ユーザー'@'ai12632482360 87.59.access-internet.ne.jp' (using password: YES)]

といった形で本来のhostであるべきの場所が変更されてしまいます。

今エラーの原因がhostが変わっていることとして扱っていますが、
この変更されてしまうこと自体が問題ということでいいのでしょうか?

編集依頼の追記をさせてもらいます。
①MYSQLサーバーは、WINDOWS上で動かしているテストサーバーでしょうか?(社内開発目的等のサーバーでしょうか?)
→サーバーはMicrosoft Azureを利用しています。
②MYSQLサーバーは、ルーター経由でネットにつながっているのでしょうか?それとも、ルーターを経由せず、直接Wi-fi等に接続されておられるのでしょうか?
→ルーターを介してwi-fiに接続しています。
③MYSQLサーバーにアクセスしている端末は、MYSQLサーバーとは別のパソコンでしょうか?それとも、MYSQLと同じパソコンでしょうか?
→はい別の端末です。また、他の端末では、MYSQLサーバーにログインすることは出来たのですが、今回node.jsからの接続に失敗しているといった状態です。

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

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

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

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

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

issei.

2016/08/23 17:26

たぶん本質的に知りたいことはMySQLの話ではなく、MySQLを動かしているホストのIPアドレスを探す方法なのでは?
miyabi-sun

2016/08/23 23:32

コードはバッククォート3つでくくってください。
KenjiObata

2016/08/24 02:19

恐れ入りますが、以下の内容について教えていただければ幸いです。 ①MYSQLサーバーは、WINDOWS上で動かしているテストサーバーでしょうか?(社内開発目的等のサーバーでしょうか?) ②MYSQLサーバーは、ルーター経由でネットにつながっているのでしょうか?それとも、ルーターを経由せず、直接Wi-fi等に接続されておられるのでしょうか? ③MYSQLサーバーにアクセスしている端末は、MYSQLサーバーとは別のパソコンでしょうか?それとも、MYSQLと同じパソコンでしょうか? 以上お手数ですが、教えていただければ幸いです。
keito04

2016/08/24 02:37

サーバーはMicrosoft Azureを利用しています。 ルーターを介してwi-fiに接続しています。 はい別の端末です。また、他の端末では、MYSQLサーバーにログインすることは出来たのですが、今回node.jsからの接続に失敗しているといった状態です。
KenjiObata

2016/08/24 02:41 編集

回答ありがとうございます。今の回答内容を、質問事項の補足情報として加えていただければ、他の方も回答されやすいかと思います。お手数ですが、質問内容にも、反映いただければ幸いです。
miyabi-sun

2016/08/24 03:10

編集対応ありがとうございます
guest

回答4

0

自己解決

解決したのですが、初歩的なところでした。
パスワードが異なっていたという点でした。
申し訳ありません。
ご協力いただいた方々、本当にありがとうございました。

投稿2016/08/24 03:03

keito04

総合スコア15

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

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

issei.

2016/08/24 11:26

なんとw 何にせよ解決できてよかったです!
guest

0

推察ではありますが、ローカルエリアに、XAMPP等でWindows環境に、MYSQL等のテストサーバーを構築しておられるのではないでしょうか?

もしそうであれば、テストサーバーのIPアドレスを自動取得ではなく、固定設定にすればよいかと思います。
(テストサーバーの設定がIP自動取得のため、ルーターのDHCP機能で、その都度IPアドレスが割り振られている状態なのではないでしょうか?)

■IPアドレスの手動設定方法
http://faq.buffalo.jp/app/answers/detail/a_id/15775

投稿2016/08/24 00:43

KenjiObata

総合スコア440

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

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

0

セッティングでホストの値はサーバーの値を入力しているのですが、

ホストの値が繋いでいるwifiによって変更されてしまいます。
御教授よろしくお願いします。

ここの意味は分かりませんがエラーが帰ってきているということはconnectはできていると考えます。
ER_ACCESS_DENIED_ERRORは確か、そのユーザーに接続権限がないと出た気がします。
作成したユーザーに外部接続許可は与えているでしょうか?

コンソールからmysqlに接続して

GRANT ALL PRIVILEGES ON db.* TO 'user'@'%' IDENTIFIED BY 'pass';

のように外部接続許可の権限を与えてみてはどうでしょうか?

投稿2016/08/24 00:33

mosapride

総合スコア1480

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

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

0

windowsで作業をしています。

ローカルサーバーでの作業です。
ubuntuで立ち上げたサーバーとの接続です。

セッティングでホストの値はサーバーの値を入力しているのですが、

ホストの値が繋いでいるwifiによって変更されてしまいます。

ローカルで立ち上げたサーバーなのに、なんでホストのIPアドレスがコロコロ変わるのでしょうか。
この辺を洗い出していけば自ずと答えが見えてくるはずです。

確認すべきポイント

仮想マシンを立ち上げる為に何のアプリを利用したか

  • VirtualBOX(+ Vagrant)
  • WMWare
  • その他

どこのネットワークにぶら下げているか

  • 自分のマシン内(仮想マシンのアプリでは仮想的なルーターの配下にぶら下げて外からは接続出来ないような設定ができます)
  • 家庭・社内のルーター

固定IPか変動IPか

  • 変動IPにしている(仮想マシンの電源を入れ直す度にコロコロ変わります)
  • 固定IPにしている

投稿2016/08/23 23:42

miyabi-sun

総合スコア21158

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

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

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問