1つのデータベースのみにアクセス権を付与するユーザーを作成しました。しかし、彼と接続しようとすると、プログラムがクラッシュします。 rootユーザーで接続すると機能します。
create user 'test'@'localhost';
GRANT ALL PRIVILEGES ON sbb2_test.* To 'test'@'localhost' IDENTIFIED BY 'test';
FLUSH PRIVILEGES;
次に、彼がsbb2_test dbのみの権限を持っていることを確認しました。
SHOW GRANTS FOR 'test'@'localhost'
出力:
'GRANT USAGE ON *.* TO \'test\'@\'localhost\' IDENTIFIED BY PASSWORD \'*94BDCEBE19083CE2A1F959FD02F964C7AF4CFC29\''
'GRANT ALL PRIVILEGES ON `sbb2_test`.* TO \'test\'@\'localhost\''
次に、新しいユーザーとの接続を試みました:
パスワードとして「test」と入力したところ、プログラムがクラッシュしました。どうして?これらは、wb.logファイルの最後の行です。
15:58:40 [INF] [ワークベンチ]:メタ情報によって提供される現在のバージョンは、6.1.7です。
15:58:41 [INF] [ワークベンチ]:WBの別のインスタンスが既に実行されているため終了します。 15:58:41 [INF] [ワークベンチ]:アプリケーションの実行
15:58:41 [INF] [WBContext]:アプリケーションの引数を解析しています。
15:58:41 [INF] [WBContext]:C:\ Program Files(x86)\ MySQL\MySQL Workbench 6.1 CE\MySQLWorkbench.exe
15:58:46 [WRN] [WBContext UI]:サーバーインスタンスに接続がアタッチされていないため、接続を削除しています
15:58:46 [WRN] [WBContext UI]:サーバーインスタンスに接続がアタッチされていないため、接続を削除しています
15:59:17 [INF] [SSHトンネル]:開始トンネル
15:59:17 [ERR] [GRTDispatcher]:grt execute_taskの例外、続行:例外:ユーザー 'test' @ 'localhost'のアクセスが拒否されました(パスワードを使用:NO)
15:59:30 [INF] [管理者]:接続用に自動作成されたインスタンスプロファイル
15:59:30 [ERR] [WBContext]:サポートされていないサーバーバージョン:mariadb.orgバイナリ配布10.1.26-MariaDB
例外エラーを適切に処理しない既知の問題と間違ったバージョンのようです: https://bugs.mysql.com/bug.php?id=79364
説明:WB 6.3.5(および6.1.7のような古いリリース)はMariaDBに接続できます。
> How to repeat:
> 1. Download WB 6.3.5 CE 64 bit (32 bit has the same issue)
> 2. Download MariaDB 10.0.22 64 bit windows
> 3. Start MariaDB using mysqld --console
> 4. Create a new connection using WB : testing the connection works
> 5. Connect to the database ( may or may not crash) : a SQL tab opens
> 6. Connect to the same database : crashes : it says MySQL workbench has stopped working : a new SQL tab can not open
[20 Nov 2015 23:32] Godofredo Miguel Solorzano
Thank you for the bug report. Looks like you have the reason for in the log:
15:14:22 [ERR][ WBContext]: Unsupported server version: mariadb.org binary distribution 10.0.22-MariaDB
環境でコンテナーを使用していますか?
edit:とりあえずこの方法で解決しました:メニューからデータベース=>接続の管理...「テスト用の接続を作成して保存しました"ユーザー、それが開始画面に表示されるようにします(WBを起動すると、保存された接続が灰色のボタンのリストとして表示され、そこから直接起動できます)。