過去 2 日間、ワークベンチが Alibaba Cloud Server に接続できない問題を解決するのに非常に苦労しました。インターネットで見つけたチュートリアルはすべて似ていますが、このチュートリアルは私には機能しません。幸いなことに、最終的には解決しました。この面倒なプロセスを記録しておきます。 使用環境: システム:
1. サーバーに接続できません 初めて接続すると、次のステータスが表示されます。 遭遇した落とし穴の一つ インターネットで見つかる方法のほとんどはbind_addressの値を変更することです まず、次のmysqlポートステータスを確認します
ps: 127.0.0.1:3306 と表示される場合は、変更が必要です。: :3306 の場合、変更する必要はありません。 表示されたステータスは 127.0.0.1:3306 であり、この値であるため、これを変更する必要があります。 インターネットで見つかる設定ファイルの変更パスのほとんどは、**/etc/mysql/my.cnf** にあると書かれていますが、これは古いバージョンの場合のみです。最新バージョンをインストールしたので、このファイルを開いてみると、bind_address 値がありませんでした。後で確認したところ、新しいバージョンは**/etc/mysql/mysql.conf.d/mysqld.cnf**にあることがわかりました。問題を発見したので、それを修正するのは簡単です。次の部分を見つけてコメントアウトします。
2. mysql.userテーブルの情報を変更する root ユーザーがデータベースにリモートでアクセスできるようにするには、いくつかの情報を変更する必要があります。 mysql -u ルート -p パスワード mysql>mysqlを使用する テーブル名と列名の補完のためのテーブル情報の読み取り -Aでこの機能をオフにすると起動が速くなります。 データベースが変更されました mysql> ユーザーからユーザー、ホストを選択します。 +------------------+----------------+ | ユーザー | ホスト | +------------------+----------------+ | ルート | ローカルホスト | | debian-sys-maint | ローカルホスト | | mysql.セッション | ローカルホスト | | mysql.sys | ローカルホスト | +------------------+----------------+ 上記のホストは、ユーザーがデータベースにアクセスできるアドレスを示します。 localhost なので、ローカルからしかアクセスできません。修正方法は全部で 2 つ見つかりました。1 つは、元のルートに対応するホストを **%** に直接変更するか、リモートからアクセスできる新しいユーザーを追加することです。 方法1: mysqlデータベースに入った状態で以下のコマンドを実行します
方法 2: 新しいユーザーを追加する:
上記のどの方法を使用する場合でも、今すぐ設定を更新する必要があります。
両方の方法を試しましたが、まだ機能しませんでした。現在の IP アドレスでは接続が許可されていないと表示されました。 何度も試してみた結果、リモート接続のユーザー名は root であってはならないことがわかりました。再インストールを何度か試みた後、リモート接続を許可するためのルート設定が常に失敗することがわかりました。 3. ファイアウォールをオフにする
4. ポートを開く Alibaba Cloud やその他のクラウド サービスのユーザーは、対応するポートを開いて保護するように注意する必要があります。デフォルトの MySQL ポートは 3306 です。 Alibaba Cloudコンソールを開き、セキュリティグループルールを追加します。 セキュリティグループ制限設定があります。受信方向をポート3306を許可するように設定し、以下をお試しください。一瞬で動作します。 Alibaba Cloud ECS MySQLはリモートで接続できません。オンラインのチュートリアルをすべて試しても接続できない場合は、以下を参照してください。 まず、ファイアウォールを確認します。これは最も基本的なことです。多くのチュートリアルでは、ポート3306を有効にする必要があると記載されています。Alibaba Cloudサーバーのセキュリティグループをチェックして、3306の受信ルールと送信ルールが有効になっているかどうかを確認します。これは本当に落とし穴です。Alibaba Cloud Linuxサーバーにこの機能が搭載されているかどうかはわかりません。Windowsサーバーでのみ利用可能だったと覚えています。それでもツールから接続できない場合があり、SSLに関連しているというメッセージが表示されます。私はIDEAとMySQLワークベンチを使用して接続します。IDEAは接続URLに追加します
MySQLワークベンチに関しては、接続方法が見つからなかったため、別のオプションとして、サーバー上でSSLを無効にする方法があります。
MySQLを再起動する すべての IP アドレスをアクセス可能に設定したり、localhost を 127.0.0.1 に変更したりする方法の詳細については説明しません。参考になる記事がオンライン上にたくさんあります。セキュリティ グループや SSL に詳しくない方は、上記の方法を参照してください。 データベースに接続するときのuseSSL=falseの役割
5. やり遂げる これで記事は終わりなので、基本的にすべて解決しました。 以下もご興味があるかもしれません:
|
<<: Node.js における path.join() の利点の分析
>>: VMware ESXi6.7 の簡単なセットアップ(画像とテキスト付き)
この記事では、ログイン認証を実装するためのExpressの具体的なコードを例として紹介します。具体的...
まずmysqlを削除します: sudo apt-get remove mysql-*残ったデータをク...
JavaScript 入門JavaScript は軽量なインタープリタ型の Web 開発言語です。言...
1. はじめに最近、 Webpackの原理を勉強しています。これまでは Webpack の設定方法し...
この記事では、MySQL データベースのバックアップを実装するさまざまな方法について説明します。ご参...
ページでビデオ タグを使用する場合は、Ogg Theora または VP8 (これに問題がない場合)...
さっそく、コードを直接投稿します。具体的なコードは次のとおりです。 <!DOCTYPE htm...
スタンドアロンの hbase について、まずは説明しましょう。 Dockerをインストールするまず ...
SVN は Subversion の略称で、ブランチ管理システムを使用して効率的に管理するオープンソ...
通常、フィールド値を更新するには次の SQL ステートメントを使用します。 mytable を更新し...
上に示すように、ナビゲーションは上部に固定されており、左右にスライドしてさらにオプションをクリックで...
この記事の冒頭で、以前書いた入門記事の間違いを訂正したいと思います。初心者を再び誤解させないように、...
1. 背景実際のプロジェクトでは、分散スケジュールされたタスク実行の状況に遭遇することがあります。ス...
この記事では、テキストクロックを実装するためのキャンバスの具体的なコードを例として紹介します。具体的...
本日、会社の内部サーバーにログインしたところ、リモートアクセスができませんでした。エラー メッセージ...