ワークベンチで新しいデータベース接続を作成しようとしています。ただし、接続をテストするたびに、エラーメッセージが表示されます
ユーザー 'root' @ 'localhost'のユーザーrootアクセスが拒否され、127.0.0.1:3306でmysqlに接続できませんでした(パスワード:YESを使用)
このエラーの原因はわかりません。ワークベンチ6.1とmysqlサーバー5.6をアンインストールして再インストールしようとしましたが、エラーはまだ解決されていません。
まず、ワークベンチまたは接続の問題かどうかを確認します。
1)Windowsで「cmd」を実行してターミナルを開きます
両方試してください
2a)mysql -u root -p -h 127.0.0.1 -P 3306
2b)mysql -u root -p -h > localhost -P 3306
3)接続が良好な場合、パスワードプロンプトが表示されます。正しいパスワードで接続できるかどうかを確認してください。
接続が拒否された場合は、許可を与えるだけです
mysql >GRANT ALL ON [DatabaseName].* TO 'root'@'127.0.0.1' IDENTIFIED BY '[PASSWORD]';
ここで接続が受け入れられる場合、それはワークベンチ構成の問題のようなものです。
同じ問題がありました。
Ubuntuに新しいmysqlをインストールしましたが、mysqlのパスワードを空のままにしたため、mysqlに接続できませんでした。
最近、名前、ホスト、パスワード、およびいくつかのプラグインがあるユーザーのテーブルがあることを明らかにしました。したがって、インストール中のユーザーroot @ localhost mysqlにはauth_socketというプラグインが割り当てられ、Unixユーザー「root」はパスワードなしでmysqlユーザー「root」としてログインできますが、別のユーザーとしてのログインは許可されませんUnixユーザー。それを修正するには、このプラグインをオフにして、通常の認証を設定する必要があります。
これを試して、それは私のために働いた!
Sudo mysql -u root -p
ターミナル内で次を入力します。
CREATE USER 'admin'@'localhost' IDENTIFIED BY 'password';
GRANT ALL PRIVILEGES ON *.* TO 'admin'@'localhost' WITH GRANT OPTION;
次に、MySQL Workbenchで接続を編集し、ルート名をadminに変更します。
MySQL 5.7(およびそれ以降のバージョン)を実行しているUbuntuシステムでは、ルートMySQLユーザーは、パスワードではなくauth_socket pluginを使用して認証するように設定されています。これにより、多くの場合、セキュリティとユーザビリティが向上しますが、外部プログラム(phpMyAdminなど)がユーザーにアクセスすることを許可する必要がある場合にも事態が複雑になる可能性があります。
MySQLにrootとして接続するときにパスワードを使用する場合は、認証方法をから切り替える必要があります。 auth_sockettomysql_native_passwordソース
ターミナルからMySQLプロンプトを開きます。
$ Sudo mysql
次に、次のコマンドを使用して、各MySQLユーザーアカウントが使用する認証方法を確認します。
mysql > SELECT user,authentication_string,plugin,Host FROM mysql.user;
Rootユーザーが実際にauth_socketプラグインを使用して認証を行うことがわかります。パスワードで認証するようにルートアカウントを構成するには、次のALTER USER
コマンドを実行します。パスワードは、必ず選択した強力なパスワードに変更してください。
mysql > ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password';
次に、FLUSH PRIVILEGES
を実行します。これは、サーバーに許可テーブルを再ロードし、新しい変更を有効にするように指示します。
mysql > FLUSH PRIVILEGES;
各ユーザーが使用する認証方法を再度確認して、auth_socket pluginを使用してルートが認証されなくなったことを確認します。
mysql > SELECT user,authentication_string,plugin,Host FROM mysql.user;
出力では、ルートMySQLユーザーがパスワードを使用して認証されるようになります。
これがどのように起こったのか分かりませんが、私は同じ問題を抱えていました。ルートパスワードをリセットする必要がありました: http://www.jovicailic.org/2012/04/reset-forgotten-mysql-root-password-under-windows/
しかし、私が以前に持っていたデータベースが削除されたか、新しい接続がそれらに接続しませんでした。いずれにしても、ワークベンチ経由でアクセスできませんでした。しかし、MySQLを再び使用することができました。
私は今この問題に遭遇しましたが、いくつかの試行で訪問サービス>> MySQLxxサービスを選択し、右クリックして開始をクリックします 。
Localhostでホストするmysqlサーバーをインストールする必要があります。次に、ワークベンチをインストールします。それでもエラーGOTOが表示される場合:
(MACの場合:)
システム環境設定> Mysql(下部にリストされます、他のサーバーはマシンにインストールされていません)。
サーバーの状態を確認し、Mysqlサーバーを起動します。
デフォルトのポート番号でローカルホストに接続してみてください。
これを試して、
これがお役に立てば幸いです
繰り返す方法:ここで私がやったことです:
推奨される修正:12.その間、[スタート]-> [コントロールパネル]-> [管理ツール]-> [サービス]-> [MySQL56]を右クリック-> [プロパティ]-> [ログオン]タブを選択し、ISバグを選択->ローカルシステムアカウントが選択されたが、どういうわけか「このアカウント:ネットワークサービス(パスワード付き)が選択された->ログオン:ローカルシステムアカウントを選択し、デスクトップとの対話をサービスに許可->適用->全般タブに戻る
[全般]タブで[開始]ボタンをクリックしてサービスを開始します。サービスが開始されました! [OK]をクリックして、[MySQL56プロパティ]ダイアログを閉じます。 [サービス]ダイアログを閉じます。管理ツールを閉じます。コントロールパネルを閉じます。
そして、その時間までに(これらのダイアログを閉じていた間に)MySQl Installer Dialogを見ると、すべてのステップが完了してチェックされています:サーバーの起動、セキュリティの適用...ユーザーアカウントの作成..スタートメニューリンクの更新
完了で確認->次->完了
ソース:---(https://bugs.mysql.com/bug.php?id=76476
私はこれが古いことを知っていますが、私はこの問題に出くわしましたが、私のために働いたこの修正を見つけました:
MySQLワークベンチに移動し、「INSTANCE」の下の「Startup/Shutdown」を選択すると、準備完了です。これがこれに出くわした人を助けることを願っています。
Windowsの検索バーに移動して、Servicesを検索します。 Servicesを起動してMySQLxx(xxを探しますサービスの長いリストで、MySQLのバージョンによって異なります。 右クリック MySQLxxでヒット開始。これでMySQLは正常に動作するはずです。