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

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

新規登録して質問してみよう
ただいま回答率
85.50%
Eclipse Plugin

Eclipseは、IBMによって開発された統合開発環境 (IDE) の一つです。高機能ながらオープンソースであり、Javaをはじめとするいくつかの言語に対応しています。Eclipse-Pluginを使う事でIDEの拡張を行う事が可能です。

MySQL

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

Q&A

2回答

15978閲覧

Eclipse PluginのDBViewerからMySQLに接続できない

horyma

総合スコア18

Eclipse Plugin

Eclipseは、IBMによって開発された統合開発環境 (IDE) の一つです。高機能ながらオープンソースであり、Javaをはじめとするいくつかの言語に対応しています。Eclipse-Pluginを使う事でIDEの拡張を行う事が可能です。

MySQL

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

0グッド

0クリップ

投稿2015/03/07 23:49

Eclipse PluginのDBViewerからMySQLに接続できず困っています。

DBを勉強してみようと思ってMySQLの本を1冊読み、コマンドプロンプト上で基本操作を一通りやりました。
次にGUI上で触ってみようと思い、本にもEclispeでできるとあったので挑戦しています。

この記事の記述通りにやっていったのですが、「テスト接続」ボタンを押したところでエラーが出ます。
ユーザーがrootの場合とroot以外(ここではabc)の場合でエラー内容が若干違います。

  • rootの場合→ Access denied for user 'root'@'localhost' (using password: YES)
  • abcの場合 → Access denied for user ''@'localhost' (using password: YES)

もちろん、テスト接続だけができない疑似エラーとかではなく、実際にも接続できていません。
初心者なので、何か根本的な見落としをしていそうな気がしています…。

前提

  • コマンドプロンプトからはrootもabcもデータベースにアクセスできており、CapsLockも効いていないので、パスワード間違いの線は薄そう。
  • 「Windows上でMySQLを開始」は忘れずにしている。

環境

  • Windows 7 : Home Premium 64bit
  • MySQL : 5.6.15.0
  • Connector/J : 5.1.34
  • Eclipse : Kepler Service Release 1
  • DB Viewer : 1.2.2

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

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

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

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

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

guest

回答2

0

差し支えなければ、mysql.userテーブルの中身がわかるとアドバイスしやすいです。

おそらく現状では、DBViewerの設定で、

ユーザー名:abc
パスワード:[なし]

で接続出来る気がします。

匿名ユーザーの設定があると、外部接続する時にそいつが勝つことがあるので、セキュリティ上消しておくことが推奨されます。こちらに引っかかると、パスワードを指定すると逆に怒られるようになります。

参考までにchefのレシピなどでみる設定です↓

lang

1-- 匿名ユーザ削除 2DELETE FROM mysql.user WHERE user = ''; 3 4SET PASSWORD FOR 'root'@'::1' = PASSWORD('password'); 5SET PASSWORD FOR 'root'@'127.0.0.1' = PASSWORD('password'); 6SET PASSWORD FOR 'root'@'localhost' = PASSWORD('password'); 7 8FLUSH PRIVILEGES;

投稿2015/03/08 16:31

naoki

総合スコア31

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

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

horyma

2015/03/09 07:15

ありがとうございます。 DBViewer側でパスワードを入力せずに試してみたところ、以下のようにエラーメッセージが変わりました。 Access denied for user 'abc'@'localhost' (using password: NO) これまでは匿名ユーザー''でアクセスしようとしていたということだったのか…? でも、教えていただいた匿名ユーザーの削除を行っても、パスワードを入力すると依然としてAccess denied for user ''@'localhost' (using password: YES)になります。 次にabcのパスワードを''に変更したのですが、依然としてエラーメッセージが表示され、ユーザー認証できていません。 mysql.userは以下のようになっています。(他に必要な列があれば、指定していただければと思います) +-----------+------+------------+-------------+-------------+ | host | user | grant_priv | update_priv | delete_priv | +-----------+------+------------+-------------+-------------+ | localhost | root | Y | Y | Y | | localhost | abc | Y | Y | Y | +-----------+------+------------+-------------+-------------+ この表の内容は、匿名ユーザーの削除をする前と後で、変わりませんでした。
naoki

2015/03/09 11:01

mysql.userテーブルのレコードを見ましたが、もともと匿名ユーザーはいませんね。問題ないと思います。 すみません、見落としていましたがコマンドプロンプト上ではmysqlへの接続、データベースの操作が出来ていたのですね。 コマンド上では、root、abcでも、接続が出来てselect文などが発行出来るんですよね? 今一度、EclipseのDBViewer上で設定している、ユーザー名、パスワード、DB名、ポート番号、スキーマを確認して見てはどうでしょうか? あと、mysqlが別ポートで2つ起動している可能性はありますか? また、お使いのEclipse上でJavaクラスを作成して、mysqlの接続コードを実行するとどうなるかを検証してみるのも何か手がかりになるかもしれません。 下記ページを参考にサンプルコードを書けると思います。 http://web.sfc.wide.ad.jp/~tinaba/tutorials/mysql-j/ jdbcライブラリはDBViewerに設定しているものを使用します。 Firewallも関係あるかなぁとも思いましが、多分その時は別のエラーメッセージな気もしますし。。
guest

0

同じマシンであってもJDBC接続の場合はリモート接続と同じ設定をする必要があったかと思います。

下記ページを参考に、localhostの接続を許可するように設定してみてください。
MySQLに外部ホストから接続できるように設定する | Linuxで自宅サーバ構築


(追記)

エラーメッセージから見て原因がuser設定だとは思うのですが。
こちら↓のリンク先はどうでしょう?

MySQL ユーザのホストをワイルドカードで指定してもlocalhostは含まれない | b.l0g.jp

投稿2015/03/08 04:33

編集2015/03/08 07:31
argius

総合スコア9388

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

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

horyma

2015/03/08 06:20

ご教示ありがとうございます! 色々試していますが、まだできていません。 上記URLの設定をした上で別ページに記載のflush privileges;をしたところ、mysql.userを見るとgrant以外の権限はついているようです。(localhostは既にあったので、追加で%の接続を許可しました) 引き続き色々試してみます。
argius

2015/03/08 07:31

追記しました。
horyma

2015/03/09 07:06

ありがとうございます。 %を削除して、改めてlocalhostも追加してみましたが、未だにできていません…。 なお、上で付けられないと書いたgrant権限については、付けられました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

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

ただいまの回答率
85.50%

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

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

質問する

関連した質問